Re: Cocoa-dev Digest, Vol 5, Issue 919
Re: Cocoa-dev Digest, Vol 5, Issue 919
- Subject: Re: Cocoa-dev Digest, Vol 5, Issue 919
- From: Graham Cox <email@hidden>
- Date: Tue, 27 May 2008 15:15:15 +1000
On 27 May 2008, at 2:33 pm, Johnny Lundy wrote:
namely because there is no mention of the receiver.
Why would there be? The receiver is an instance of the class whose
documentation page you are looking at. You *have* the receiver,
otherwise why would you be interested in its methods?
Seems to me you are looking through the documentation looking for
pieces of functionality you can use. That's OK, it's good for that.
But you are then sort of thinking of the methods as a standalone bit
of procedural code, such as you might find in a C or Pascal library.
That's not what they are. They are methods of actual objects. You need
the actual object before you can use the method. (Even class methods -
a class is an actual object too). You don't *start* with the methods,
you start with the objects.
This comes back to OOP versus procedural programming. Yes, learning to
get your head around OOP if you have only known procedural is tough
going for some (was for me, many years ago) and for a while you might
be trying to learn OOP in terms of what you already know.
Understandable, but probably going to hold you back. Learn OOP on its
own terms, free your mind, and your code will follow ;-) OOP is *way*
easier than it seems (when you keep trying to force it into a
procedural mindset). It really is. Trying to equate it to procedural
stuff only makes it seem complicated. The real-world is very object-
oriented ("ooh, what's this? Mmm, I see, what can it do?"), so OOP is
much more like real life. Procedural code is the weird one, because it
doesn't have much of an analogue in the real world. People completely
new to programming often take to OOP no problem, whereas it's
procedural that is clunky and alien, and is harder to learn. Trouble
is, it's also harder to unlearn.
That's not true, and the tone of that is a holdover from the early
days of the USENET groups where it was considered appropriate to
chastise newbies, AOLers, etc. I can take it because I was around
back in those days and know where it comes from -- but it is surely
scaring away many people who would want to post.
That oft-quoted essay on how to ask a question is old, and from the
first time I saw it I thought it was out of line. My response would
be that there should be a similar essay on how to ANSWER a question,
and the first line of that essay should be "either answer it or
ignore it." I know in the forums at AppleInsider that I moderate,
nobody gets away with the "OMG Use Teh Search N00b" answer - that
kind of reply is against the posting guidelines, and if I see it I
remove it.
The problem is that this thread has made no progress at all, despite
many people spending time and effort to try and help you. People are
getting exasperated with your inability to digest what is being said.
Might I respectfully suggest you go away for a while, let it stew,
work on your own, try a bit harder, then see if the light doesn't go
on after a week or so. Statements such as "I still get this wrong
after a year" shows to me that you are not taking a logical approach
to learning this, or else you are reading, and not understanding even
the most fundamental stuff. Go back to the beginning. Even seasoned
programmers still do that from time to time.
Would you attempt to fly an aircraft without any training, or without
even knowing what the basic flight instruments show you? "Hell, this
darn gauge here makes no sense! It just keeps whirling round and round
with these needles all over the place. What use is that! Documentation
was no help - keeps referring to the "altimeter", I mean, WTF is
that?". Difference in that case is that a "crash" is not a case of
recompiling and trying again. I would say (as a small-time pilot) that
Cocoa programming gets *at least* as complicated as flying a plane.
The only reason newbies think it's easy is because your life isn't
dependent on you getting it right. Imagine how you'd go about learning
it if it were? Differently, I hope.
The many fine pieces of work done in Cocoa and the many programmers
using it without trouble suggest to me that there is little wrong with
the documentation. It's you, it really is - and only you can do
anything about that. Some newbies have difficulties, but I do not
believe they are in any way a "silent majority" so trying to plead the
case on behalf of this imagined group is not helping. If some people
are losing patience, I find that quite understandable. If you had
received this sort of response right at the beginning then yes, that
would be rude, inappropriate and the rest. But that's not the case.
cheers, Graham
_______________________________________________
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