Re: The Problems with NSController
Re: The Problems with NSController
- Subject: Re: The Problems with NSController
- From: Brent Gulanowski <email@hidden>
- Date: Sun, 26 Oct 2003 19:07:27 -0500
On Sunday, October 26, 2003, at 06:19 PM, Dennis C.De Mars wrote:
On Oct 26, 2003, at 12:45 PM, Brent Gulanowski wrote:
On Sunday, October 26, 2003, at 03:09 PM, Chris Hanson wrote:
On Oct 26, 2003, at 11:18 AM, Francisco J. Bido wrote:
Experience programmers don't care about writing a few lines of
extra code, if it means more control.
Experienced programmers know that every line of code is an
opportunity for more bugs, and prefer to minimize the amount of
unnecessary code to accomplish a particular task.
NSController is very useful for this.
I'm sorry but that is specious, since writing less code is an
attribute of OOP itself, if you use it right. NSController is just
another class, which is either written well or written poorly. If the
savings in NSController are so magical, I suspect that any good Cocoa
developer has already abstracted similar functionality. Apple does
not have a monopoly on software engineering principles, whether they
built the OS or no.
The following is not necessarily advocating use of NSController (which
I have yet to make up my mind about) but I have to say my jaw just
about dropped when I read the above. Whatever arguments can be made
against NSController, I can't believe this is legitimately one of
them. Let me repeat what you just said, substituting "X" for
NSController:
I'm sorry but that is specious, since writing less code is an
attribute of OOP itself, if you use it right. X is just another
class, which is either written well or written poorly. If the savings
in X are so magical, I suspect that any good Cocoa developer has
already abstracted similar functionality. Apple does not have a
monopoly on software engineering principles, whether they built the
OS or no.
This seems to argue that Apple can just stop making ANY improvements
to Cocoa, at least anything specifically aimed at reducing the amount
of coding. There is no way they can make any improvements in this area
because if it was in anyway worthwhile, any competent developer has
already done it! Assuming you consider yourself a "good Cocoa
developer" this means if I look at your code i can find every possible
useful abstraction that would save coding!
What? Nary a word of it. You cannot say my words argue the opposite of
something just because they argue against that thing. Just because
something is not one does not make it zero. I might prefer -Pi or a
fish or the colour blue. This is not a binary state. You've been
programming too long or something.
The OP attributed the quality of code re-use to NSController
specifically as an argument for it, and I said that it was a moot point
because that quality is already understood to belong to all properly
designed OO classes. It's like saying that blue whales are better than
other whales because they are mammals. All whales are mammals. If blue
whales are really better than other whales, I expect better arguments
for why. The same here.
I've read a number of powerful arguments why it is bad, however, and
added my own on philosophical grounds.
What you are really saying is that it saves lazy programmers the work
of doing their own software engineering. Just think how much coding I
would not have to do if I were not a programmer at all!
The more of my software engineering they can do the better. I think
the controversy here is whether it is _good_ software engineering, but
if it is, I say bring it on!
You state the obvious, sir.
--
Brent Gulanowski email@hidden
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.