• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Where are the boundaries of Cocoa and how are the boundaries perceived ?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Where are the boundaries of Cocoa and how are the boundaries perceived ?


  • Subject: Re: Where are the boundaries of Cocoa and how are the boundaries perceived ?
  • From: Ian Joyner <email@hidden>
  • Date: Tue, 2 Oct 2007 10:57:23 +1000

Cocoa is a high-level framework built on many underlying technologies. Even Foundation I don't think is a part of Cocoa. Case in point is I did some work on a Cocoa interface to another language a number of years ago. This language had its own library for data structures equivalent of Foundation. It was better to use the native arrays and collections rather than Foundation, only providing a little bit of Foundation to convert native arrays to NSArrays when calling a Cocoa function that required them.

I think KVC and KVO are underlying technologies that have wider applicability than just Cocoa, similarly with Quartz and Quicktime. Just because Cocoa heavily uses these does not make them part of Cocoa. Cocoa relies on them, but they do not rely on Cocoa.

As for MVC, often this is difficult to categorize in itself, but I had a concrete realization of something that was before intuitive – that Interface Builder deals in all of MVC. I think IB is part of Cocoa, It seems that something called Interface Builder would just deal in the V, but Cocoa bindings allow you to freeze-dry controller objects and I'm sure in simple applications, model objects can be stored as part of the nib as well (or just defaults). Maybe 'Interface Builder' is a bit of a misnomer in this case, and I'm sure leads to confusion for those coming from other environments where you have a visual window painter, expecting it to just do V, when IB does at least VC and maybe all MVC.

NSDocument is another interesting case. I used to think it was the root of the model, but now it seems like more a controller that references the model, and because you set it as a delegate for other view and controller objects.

Ian

On 02/10/2007, at 1:33 AM, Erik Buck wrote:

Do we all agree that Core Data, Foundation, and the Application Kit compose Cocoa ? What other sub-frameworks should be considered part of Cocoa ?
If I attempt to classify parts of Cocoa based on whether they are part of the Model, the View or the Controller subsystems in an MVC design, I see some interesting ambiguities. For example, the Application Kit primarily contains objects that help you build Views, but some of the sub-systems within AppKit are themselves partitioned into separate Model, View, and Controller pieces as demonstrated by the text architecture and the document architecture. Core Data is almost exclusively intended to support development of Models, right ?
And where do KVC/KVO/Bindings fit into the picture? Key Value Observing and bindings are pretty clearly Controller technologies, but Key Value Coding could arguably be most applicable to Models. Where are KVO and Bindings really implemented ? Some of it is in Foundation (categories on NSObject) and some is in AppKit.
Foundation defies being grouped in any of the MVC subsystems. It truly is a foundation upon which all of the MVC subsystems are built.
To simplify my question, which of the following is considered part of Cocoa, and have I missed anything ?
Exception Handling Framework
Message Framework
Address Book Framework
Application Kit Framework
Automator Framework
Core Data Framework
Foundation Framework
iChat Instant Message Framework
Preference Panes Framework
Quartz Core Framework
QuickTime Kit Framework
Screen Saver Framework
Security Foundation Framework
Security Interface Framework
Web Kit Objective-C Framework
Sync Services Framework


Within Cocoa, how is the MVC design expressed and can sub- frameworks of Cocoa be categorized according to MVC ?
_______________________________________________


Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
40sportstec.com


This email sent to email@hidden



_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >Where are the boundaries of Cocoa and how are the boundaries perceived ? (From: Erik Buck <email@hidden>)

  • Prev by Date: Re: NSButton Behaviors
  • Next by Date: Re: Converting NSArray of NSString elements into binary?
  • Previous by thread: Re: Where are the boundaries of Cocoa and how are the boundaries perceived ?
  • Next by thread: Re: Where are the boundaries of Cocoa and how are the boundaries perceived ?
  • Index(es):
    • Date
    • Thread