Re: AppKit source available as reference?
Re: AppKit source available as reference?
- Subject: Re: AppKit source available as reference?
- From: Russell Ahrens <email@hidden>
- Date: Mon, 2 Jul 2001 18:28:25 -0400
I think Learning Cocoa is quite good, for what it teaches. What it does
NOT teach is programming in general, and Object Oriented Analysis and
Design in detail. What it has, instead, is a pretty good but short
refresher on OO as it relates to Cocoa programming. What I suggest --
and I know that this has been suggested before, but it can only be
emphasized -- is baby steps. A language like Objective-C or Java and an
API like Cocoa or Carbon or POSIX are tools. Learning to use them may
be tedious, may be fun, may be difficult, may be easy -- but they are
just tools. If you don't know what to do with those tools, you will
find yourself almost immediately lost, no matter how well you know the
syntax of the tools.
I learned how to program C using ORCA/C on my Apple IIgs. After I went
through the tutorials and documentation, I had dreams and images of the
possibilities. And I didn't touch a compiler for 6 years, until I had
the chance to take some real computer science courses. It wasn't until
I "grok"ed procedural design (and later object oriented design and
functional design) that I was able to sit down and create some of the
dreams that I had had. My point is that you need to learn one thing at
a time. Nothing you learn is wasted, as long as you pay attention to
the larger concepts rather than the finer details. In general, you
should not care if * indicates multiplies or a pointer -- that is
language specific nonsense which will come. The important thing to
learn is how a computer multiplies, what a pointer means -- that is, how
languages and compilers, as well as runtime environments utilize
memory. Just because a book is taught in C or C++ or Java (or, and I
shiver to recount this, Eiffel) doesn't mean that you can't learn OO
design from it. The trick is to turn around and learn thins one step at
a time.
I think that I was lucky in that I didn't study computer science for my
BA, and instead studied a language; this means that I am in the habit of
viewing programming as a sort of conversation with the computer and the
user (granted, sometimes an argument). Just as with natural language,
the syntax isn't worth much without the contextual semantics, and that
isn't worth much without a structure.
If you want, I can suggest some of the texts that I have found useful.
The trick is to not get discouraged, but rather to learn from your
problems, and to put things into perspective. If you can't figure one
part out, leave it, work on something else, then come back to it. Try
talking out your design and your code with yourself, and seeing what
sort of natural language recipe you'd use. If no appropriate Cocoa
classes exist, try breaking your recipe down into smaller parts. You've
probably heard all this; at least for me, it works, and helps me
discover which Cocoa class I need to use or to subclass, as well as
(more importantly) how to organize my design.
Hope you didn't fall asleep,
Russell Ahrens
Oink Industries
On Sunday, July 1, 2001, at 10:24 AM, Brian Howard wrote:
On Saturday, June 30, 2001, at 06:04 PM, Scott Anguish wrote:
I and the others who spend time putting together these tutorials
certainly do enjoy your appreciative tone. I guess all the positive
feedback we've gotten in the past was just lies to protect us from
the awful truth.
Geez, and you wonder why people get snippy with you? That's about the
most ungrateful thing I've ever heard.
You are right, I made the horrible mistake of lumping all tutorials
together. Blame it on three days up upgrade hell and wasting time due
to the lack of docs for OS X. So far I've only had to deal with the
tutorials in the "Learning Cocoa" book, which leave much to be desired
from my perspective. I should not have assumed that all other
tutorials would also suffer from the same problems, one of which is
making to many assumptions! So, mea culpa, I'm guilty of one of the
things I dislike most.
Brian E. Howard
Cocoa Cult Central
apparently running for the office of SOB unopposed
_______________________________________________
cocoa-dev mailing list
email@hidden
http://www.lists.apple.com/mailman/listinfo/cocoa-dev