
Mac's have a reputation for being the easiest computer to use,
and the hardest to program. That perception comes from the fact that in
addtion to making the logic of your program work, you have to interface
with the user by way of standard routines that Apple has created and stored
in the Apple ROM. These 4,000 routines, known collectively, as the Macintosh
ToolBox present the user with a familiar interface
and mean you don't have to create functions for drawing windows or menus,
you just have to learn how to use Apple's.
Before you can learn to program the Mac, you have to know how to program
in a more general sense. A program is like a recipe, it's instructions for
the computer to follow to generate the results you desire. Before you can
worry about what you're going to tell the computer to do, you have learn
how to talk to the computer, you have to learn a language to write your
recipe in.
We can't (easily) understand the computers language, and it would be slowed
to a crawl if we tried to make it learn ours. So we compromise. We create
langauges that are more efficient than our, but that we can understand better
than the machines. Languages like C, C++, Pascal, Dylan, Fortran, Prograph,
ADA, and others. Then we create our recipe in that language, and use a program
to translate our recipe into the computers own language. That translation
is called compiling, and the program that does it is called a compiler.
To program a mac you're going to need a good compiler and a few other tools,
that are collectively refered to as an IDE, or integrated development environment.
The most common language for programming the Mac is C. It's not the only
one, but it's a good one, and pretty much the standard. Also it's a subclass
of a more powerfull (and more difficult) language called C++ that is becoming
the new standard for Mac programming, so if you learn C you have a usefull
language to program the Mac in, and you're half way to learning a (debatebly)
better one. There are a lot of good books to help you learn how to "talk"
C. I've compiled some brief reviews of books on C and C++ that posted here
for reference.
Once you've learned a language, the next step is applying that language
to creating programs that have that Mac flavor, you know: windows, menus,
dialogs... stuff like that. Apple has provided us with some help to do that.
They've created a collection of around 4,000 functions in the Mac's ROM
and OS that generate those interface elements and help you handle things
like mouse clicks and dragging of icons - the Mac Toolbox.
Learning the Mac Toolbox is hard, especially sense it's contantly changing.
Apple provides services for helping programmers: classes (both live and
video taped), books, tools, documentation, and subscriptions to journals
and tech mailings. All of this info can be got by calling APDA,
or visiting Apple's developer
sevices web site. You should also consider subscribing to the two leading
Mac programming Journals: develop and MacTech
Magazine.
There are many internet resources to tap into--and links to some of the
most important are listed on my home page.
Anyway, that's the quick story. Hope it helps.

for site info contact: Nick.c
DeMello