Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Software - Troubleshooting and Discussion > Developer Center > What do I really need in order to produce a Mac OS X app?

What do I really need in order to produce a Mac OS X app?
Thread Tools
Senior User
Join Date: Nov 2002
Location: Australia
Status: Offline
Reply With Quote
May 27, 2003, 05:43 AM
 
I have no Mac programming experience before, so I am keen learn some new skills...

I would like know if I want to produce a Mac OS X app (either write it from scratch or port from an UNIX source code) what sort of tools do I need to have in order to do so.

Obviously if I just want to have a command line app then I would just need a text editor and gcc compiler (which is included from the developer tools CD in the Mac OS X 10.2 box set, right?). But what if I want to provide a Carbon or Cocoa apps? Does the developer CD has everything I need, or do I still need to spend several hundred dollars to get something like CodeWarrior?

Also, is that any good online resources for me to learn how to program in Mac OS X?

Thanks in advance.
     
Mac Elite
Join Date: Dec 2001
Location: Paris, France
Status: Offline
Reply With Quote
May 27, 2003, 05:49 AM
 
Apple's Dev Tools is all you need
You can also get a book (big nerd ranch one is good) to learn cocoa if you want to do MacOSX specific app

Enjoy ! Programming is good for you !
     
Senior User
Join Date: Nov 2000
Status: Offline
Reply With Quote
May 27, 2003, 11:49 AM
 
I think that if you're just starting out the tools that ship with OSX are more than enough. You may want a third-party documentation viewer - I just use Safari though.

I'm pretty sure there was a thread around here with all kinds of links for newbies. It may be worth hunting for.
     
Senior User
Join Date: Oct 2000
Location: Lawrence, KS
Status: Offline
Reply With Quote
May 27, 2003, 12:13 PM
 
I am new at Cocoa and I can do all kinds of experiments with just the Apple's Developer Tools.

As far as documentation goes, those tools come with the API documentation in HTML.

I found Objective-C to be pretty simple but the familiarizing myself with the Cocoa frameworks has been and still is a lot of (fun) work.
For someone in my shoes (basically a Java programmer) I recommend the following books:

1. "Learning Cocoa with Objective-C" by By _ Apple Computer, Inc._, James Duncan_Davidson

2. "Cocoa Programming" by Anguish, Buck and Yacktman

3. "Cocoa Programming for Mac OS X" by Aaron Hillegass

The first one on the list is a huge improvement over its predecessor "Learning Cocoa" and it starts you from basically nothing.

The second one is one heck of an awesome book and has SO MUCH stuff in it. It can however be somewhat intimidating if you think you have to read through most of its 1200 plus pages.

The third is a good balance between the very simple and the more advanced.

Hope it helps.
     
Mac Elite
Join Date: Jan 2003
Location: Evansville, IN
Status: Offline
Reply With Quote
May 28, 2003, 02:05 PM
 
Use documentation. Hillegasse's book teaches you some bad habits, and I don't like how he doesn't use a standard way of defining variables, outlets, etc.

work: maczealots blog: carpeaqua
     
Posting Junkie
Join Date: Jun 2000
Location: Union County, NJ
Status: Offline
Reply With Quote
May 28, 2003, 09:37 PM
 
Originally posted by tikki:
Use documentation. Hillegasse's book teaches you some bad habits, and I don't like how he doesn't use a standard way of defining variables, outlets, etc.
You know, I had bad feeling about his book; enough to turn me off from Cocoa development altogether. I mean, he DOES do a good job in showing good examples, but there's something missing from it all. You know how when you're learning something new that you learn a lot of pieces to the puzzle but not that last bit? Good authors give you the last bit (like the Kochan/Wood books) but not this one. I think I'm off to find a new one.

Mike
     
Senior User
Join Date: Oct 2000
Location: Lawrence, KS
Status: Offline
Reply With Quote
May 29, 2003, 11:55 AM
 
Originally posted by starman:
You know, I had bad feeling about his book; enough to turn me off from Cocoa development altogether. I mean, he DOES do a good job in showing good examples, but there's something missing from it all. You know how when you're learning something new that you learn a lot of pieces to the puzzle but not that last bit? Good authors give you the last bit (like the Kochan/Wood books) but not this one. I think I'm off to find a new one.

Mike
If it turned you off from Cocoa, then you definitely need a new book.

I could be in the minority but I actually enjoy Hillegasse's book. For one, is not a rehash of some old NeXT book or some Apple documentation. It has it's own (fairly conversational) style which I like, the examples are short and relevant.

My stumbling point with Cocoa is basically just grasping its full range of capabilities. But then again, I don't know if this specific issue can be handled by any single book. Taking from my many years in the Java world, there's no one single book that stands out in that area. Java is also very spread out.

What I would like to see is a real Cocoa cookbook with a ton of to the point examples and pretty heavy on drawing and graphics. There's the Cheeseman book out there but dang if I understood everything he was talking about then I wouldn't have a need for the simple recipes it describes.

(Last edited by DaGuy; May 29, 2003 at 12:00 PM. )
     
Senior User
Join Date: Nov 2002
Location: Australia
Status: Offline
Reply With Quote
Jun 2, 2003, 05:59 AM
 
Thanks for all the comments and book suggestions!

Follow-up questions: How different is Objective-C from ANSI C, and how much of a difference between Objective-C and C++ (given both are OO languages)

Also, is objective-C the only language supported under Cocoa (with the set of tools available in Apple developer CD)?
     
Forum Regular
Join Date: Jul 2002
Location: Australia
Status: Offline
Reply With Quote
Jun 2, 2003, 08:33 AM
 
You can also use Java with Cocoa. There's a few differences between using it with Objective-C. Objective-C++ isn't a seperate language - from what I've heard about it, it just allows you to call C++ in Objective-C.
     
Mac Elite
Join Date: May 2002
Status: Offline
Reply With Quote
Jun 2, 2003, 08:38 AM
 
Objective-C is a superset of ANSI C, so anything that applies to C applies to Objective-C. It has basically the same capabilities as C++ (each is better at some things) but the syntax and philosophy are pretty different. The syntax, in fact, is different enough that you can use Objective-C++ instead of/as well as Objective-C.

Supported languages in Cocoa are Objective-C and Java. Bindings have been written for other things, like Python and Ruby... you _could_ use pure C, sort of, but it would be Unpleasant.
[vash:~] banana% killall killall
Terminated
     
Addicted to MacNN
Join Date: Mar 2000
Location: London, UK
Status: Offline
Reply With Quote
Jun 2, 2003, 10:47 AM
 
Originally posted by Gul Banana:
[Obj-C] has basically the same capabilities as C++
Not really. C++ does a lot more. A lot, lot more. Some would say that it does too much, in fact
     
Registered User
Join Date: Sep 2002
Location: New York City
Status: Offline
Reply With Quote
Jun 5, 2003, 11:41 AM
 
has Obj-C really come back in popularity? A few years ago I was a Soft. Engineer at Apple and we switched from Obj-C over to using Java. Again, that was a few years ago. Have things changed?

Whatever language you decide to use, I would suggest that you try to pick one that not only satisfies your interest, but also expands your resume. Ya never know when it could be useful. So, if possible, try to assess what the industry is using, then choose the popular or future language. (just my 2 cents)
     
Senior User
Join Date: Oct 2000
Location: Lawrence, KS
Status: Offline
Reply With Quote
Jun 6, 2003, 10:31 AM
 
Originally posted by bens1901:
has Obj-C really come back in popularity? A few years ago I was a Soft. Engineer at Apple and we switched from Obj-C over to using Java. Again, that was a few years ago. Have things changed?

Whatever language you decide to use, I would suggest that you try to pick one that not only satisfies your interest, but also expands your resume. Ya never know when it could be useful. So, if possible, try to assess what the industry is using, then choose the popular or future language. (just my 2 cents)
That makes sense but going to Java has it's downsides.

1. You don't fully leverage MacOSX and your application turns out somewhat generic.

2. If you mix a Cocoa UI with Java guts then you loose the cross platform benefit of Java and add some additional overhead to what could've been acomplished with just Cocoa.

Where would I use Java?

1. MacOSX is not the only target. Cross platform is a requirement.

2. MacOSX is the only target but need to leverage some exisiting Java code.

The bit about expanding your resume is very insightful. I balanced that need by getting close and personal with J2EE i.e., JSP/Servlets, EJB. This is where a substantial amount of the corporate dollars go. You can happily do all of that on MacOS X. I do that for money and Cocoa to expand the mind...

(Last edited by DaGuy; Jun 6, 2003 at 10:37 AM. )
     
   
Thread Tools
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Top
Privacy Policy
All times are GMT -5. The time now is 03:36 PM.
All contents of these forums © 1995-2011 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.7 © 2000-2011, Jelsoft Enterprises Ltd., Content Relevant URLs by vBSEO 3.3.2