Re: Are there any generic controller classes?
Re: Are there any generic controller classes?
- Subject: Re: Are there any generic controller classes?
- From: Andrew Farmer <email@hidden>
- Date: Sun, 2 Sep 2007 01:39:01 -0700
On 02 Sep 07, at 00:43, Frank Bettger wrote:
I'm reading the book Cocoa Programming, by Anguish,Buck and
Yacktman. It was
written in 2002. In a section discussing MVC they say that M is
mature since
there is a Foundation framwork and also that V is mature since
there is the
AppKit framework. However C is not mature as it could be. Here's a
small
quote.
If you are creating a document-centric application, then the
various classes
surrounding the NSDocument class will provide much of the
controller logic
you need. Sadly, in other parts of the controller layer, Cocoa does
not yet
provide much help. … There is no generic "controller framework....
The lack
of a controller framework is one area that could stand improvement.
Note
that Apple does have some generic controller objects that would help.
My question is if there has been any improving in this area the
last 5 years
since the book was written.
That's a rather odd statement for the book to be making. The
Foundation storage classes (NS[Mutable]Array, et. al.) are only a
small part of the framework, and certainly aren't a viable substitute
for a model class in anything but the simplest applications.
Similarly, AppKit views don't suit the needs of all applications
either - they're certainly useful, but most applications will need at
least one subclassed or custom view somewhere.
Claiming that controllers can be prepackaged in a similar fashion is
just silly. In most applications, the controllers are where much of
your application's unique logic will live. These can't be written for
you! _______________________________________________
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