Re: Which language to get started with cocoa development?
Re: Which language to get started with cocoa development?
- Subject: Re: Which language to get started with cocoa development?
- From: "Michael Ash" <email@hidden>
- Date: Thu, 1 Jan 2009 11:21:51 -0500
On Wed, Dec 31, 2008 at 3:22 AM, Achim Domma <email@hidden> wrote:
> Hi,
>
> I develop software for a living and want to get started with cocoa
> development just for fun. I'm good at python, C, C++ and C# and have some
> Ruby knowledge. Now I'm asking myself, which language I should use to get
> started with cocoa development:
>
> - ObjC looks interesing, but would be a new language to learn. I like to
> learn new languages, but I also prefer to do one step after another. So
> learning Cocoa and Obj-C toghether could be frustrating.
My opinion is that you should use Objective-C, at least at first. Some
reasons why:
1) If you know C and some object-oriented languages, then ObjC will be
a piece of cake. ObjC is NOT like C++ at all. If you know C and learn
C++ it's like starting over, because C++ adds this incredible huge
massive overbearing truckload of stuff to the language which
practically builds it anew. ObjC on the other hand adds extremely
minimal syntax. It is the "C with objects" that C++ once was but has
so vastly outgrown. If you are proficient in C and good with OOP and
have an open mind, learning ObjC itself will take you perhaps one day.
Really.
(Of course you won't be able to do much with it at that stage, but
that's because you need to learn the libraries i.e. Cocoa to build
useful stuff. And all that learning is stuff you will have to do
*anyway*, so you're no worse off.)
2) You add more things to learn using a different language. Instead of
learning Cocoa, now you have to learn Cocoa *and* PyObjC or whatever
bridge you're using. Every bridge has its quirks and corner cases and
specialized things you have to learn.
3) You have a much harder time using tutorials, documentation, and
sample code. 99.9% of the extant tutorials, docs, and examples are
written in ObjC. You'll have to translate that stuff into the language
of your choice to use them, meaning you'll have to know some ObjC
anyway, and you'll be struggling not just with ObjC/Cocoa but with
ObjC/Cocoa/Python/PyObjC/samplecode/docs/tutorials/translating/etc.
So there you have it. This is just my opinion, and other people may
disagree, but in my opinion you should just take the few hours or days
to learn ObjC and then do Cocoa with its native language. Later on,
once you're comfortable in it, if you dislike ObjC and prefer another
language then you can switch over to one of the bridged languages and
be in a much better position to work with it from there.
Mike
_______________________________________________
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