Re: Docs, questions and stuff
Re: Docs, questions and stuff
- Subject: Re: Docs, questions and stuff
- From: Jonathan Hendry <email@hidden>
- Date: Fri, 24 Aug 2001 17:53:13 -0500
On Friday, August 24, 2001, at 05:25 , Chris Gehlker wrote:
On 8/24/01 1:30 PM, "Jonathan Hendry" <email@hidden> wrote:
On Friday, August 24, 2001, at 10:11 , Chris Gehlker wrote:
I see I'm going to have to don my flameproof suit.
Right now, if you are not familiar with OO at all and are limited to
readily
available books there is really only one way to do it without a lot of
backtracking. Go get a good, Object Oriented C++ book like
"Accelerated
C++"
Huge mistake. Why bother learning about multiple inheritance,
references,
operator overloading, etc., when Objective C doesn't support them? (And
neither does Java, for that matter)
Of course Java and ObjC support MI.
Um, no, they don't. Interfaces and protocols are rather different
from C++-style MI.
You can't have a class (ObjC or Java) inherit from two superclasses.
They would be pretty useless without it.
It's just that Java supports it less elegantly than the other two. The
other
differences are trivial and some may soon be supported as ObjC moves
to a
C99 base.
Lord help us if operator overloading comes to Objective-C.
There are a couple of wrinkles but folks on this list will help.
We've got our hands full just answering Cocoa/ObjectiveC questions
without having to undo C++ damage as well.
You speak for everyone on this list?
The problem with "Learning Cocoa" is that the author(s) think in C. It
will
teach you that OO is only for accessing the Cocoa frameworks.
I don't see that.
That's pretty scary. Have you read it?
Yes. The book is about Cocoa. It doesn't teach that "OO is
___only___ for accessing the Cocoa frameworks".
Unless you'd like to point to the page number where the book
says that OO is not to be used for anything but accessing
the Cocoa frameworks?
But it's called "Learning Cocoa" for a reason. If you
want
"Learning OO" you'll have to buy a different book.
Exactly!
No, you missed. Learning Cocoa is about Learning Cocoa,
thus, OO is presented in the context of using Cocoa, which
is the entire reason for the existence of the book.
Why would you expect to find the book spending copious time
covering generic OO topics? It's already trying to cover
too much in too little space. What's next, someone complaining
that the book isn't also a full gcc internals reference,
or maybe a complaint that it doesn't go into detail on
how to parse PDF?
If you want to learn OO, Apple's Objective-C book isn't
a bad brief introduction to the basics. And it's free
online.
If you want to learn C, K&R is a better book. If you want to use Cocoa
to
put a pretty UI on C programs, I feel the pain of anyone who has to
maintain
your code.
The Cocoa frameworks are a nice OO design. They certainly get mentioned a
lot in Design Patterns. Learning how to use them is a good start at
learning-by-example.
(Sheesh, next thing people will be claiming that "Learning Cocoa" will
teach you that Charlton Heston signed the Declaration of Independence.)
This won't
hurt if you are coming from an OO background but nobody should do this
to a
newbie.
In my experience, people learning C++ don't learn about OO, they
learn about making their C++ code compile.
Then you have never experienced any decent teaching of C++. That would
go
along way to explaining your attitude.
Actually, my attitude is from seeing the other students agonizing over
how to do something, and thinking "this would be so much easier
in Objective C".
But it doesn't have to be that way
and, for the most part, it isn't anymore.
Yeah, because they teach Java instead, since it gets rid of all the
nasty bits of C++. ;)