Re: Super Newbie
Re: Super Newbie
- Subject: Re: Super Newbie
- From: Scott Ellsworth <email@hidden>
- Date: Tue, 4 Nov 2003 14:04:24 -0800
On Nov 4, 2003, at 12:38 PM, Timothy Johnson wrote:
I am new to OSX development, heck I just purchased my first Mac last
week. I am interested in programming Cocoa apps for OSX, and I have
the latest Xcode from Panther. I need a kick start guide, because I
don't know the first thing about using it.
Your best bet, then, is to get a raft of Cocoa books and start reading.
I, personally, loved Aaron Hillegass book on Cocoa development, and I
found the Anguish/Yactman book useful. I did not get as much out of
Vermont Recipies (Bill Cheesman) as many, but a friend of mine thought
that beat the pants off of the other two. Thus - I would probably grab
all three, and read them in alternating shifts until they make sense.
Also, you will want to play with the examples in /Developer/Examples,
as these can teach you things you would not otherwise know. For
example, none of the books I listed above describe the brand new
Controller architecture in Panther, which can save a lot of time.
[...]
Carbon is mostly used as a migration path from OS9 and previous apps.
I don't need to use it if this is the predominate case.
It is also useful if you are primarily a C++-based shop. I suspect you
do not need it.
Cocoa is for developing OSX native apps.
Correct.
Objective C and Java are used in different areas. This is where I get
boggled.
Both are very good languages. I prefer Java myself, but you will find
the vast majority of the Cocoa developers use Objective C, and thus you
will want to get at least sufficient familiarity with it to read the
code examples. Were I starting from scratch, I would start with ObjC,
and if it gets annoying, try similar examples from Java.
You would still be writing a Cocoa app, and laying out the interface in
Interface Builder, but you would use the Java language to program it.
Personally, I find this quite effective, especially since I am very
familiar with many existing Java libraries that do things I need to do.
For what it is worth, ObjC is the native language for Cocoa.
If you want a cross platform app, you cannot use Cocoa and its cool
tool Interface Builder. You would use pure Java and the Swing UI
library. This can be learned by going to Sun's site and going through
the Java tutorial. Most of my paying work comes from pure Java swing
apps. Again, this is not using Cocoa at all.
Are apps programmed using a combo of cocoa and java (for instance) or
are entire apps done in cocoa?
Cocoa apps (which are Mac-only) are done entirely in Cocoa usually, and
are usually done in Objective C or Java.
Pure Java/Swing cross platform apps are done in pure Java.
I hear AppleScript can make full featured programs, but i assume that
since it is a scripting language and not compiled that it is slower
once your application gets larger.
Applescript is a great way of assembling pre-existing tools to make
usable apps. This is often used to wrap a command line unix tool in a
pretty GUI shell. Carbon Copy Cloner is one of the more famous ones.
Since the heavy lifting is usually done by the command line tool, speed
is rarely a problem.
Unless you have a pre-existing command line tool you want to wrap, I
suspect you would be better served by using Cocoa.
Thanks for all your help sorting this out for me.
Good luck, and welcome to the fold.
Scott
_______________________________________________
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.
References: | |
| >Super Newbie (From: Timothy Johnson <email@hidden>) |