At this point I've looked through all the Mac OS X
applications and utilities
installed, though not the BSD utilities or other programs only
available
through Terminal. It's time to look at the Developer Tools CD that
comes with
Mac OS X. Ah, it reminds me of the heady days when HyperCard was
included with
System software. That was one of the reasons that I chose to buy a Mac
instead
of an Amiga, which didn't include a programming environment. For some
reason,
I keep thinking that a computer should come with a programming
environment,
even just a BASIC interpreter will do. Sigh, I guess that's more of a
techie
desire than a computer user need. Still, I do miss the days when you
could buy
a computer and program on it without buying anything else. And those
days may
be back again, though with the current sophistication and complexity of
developing programs, maybe it's too much to ask of a beginner to start
using
the development tools provided with Mac OS X.
The Tools CD has four files: a readme that basically says "run the pkg
program, follow the instructions, reboot the computer," a CodeWarrior
on Mac
OS X PDF that I can't open with Preview, a CarbonLib SDK folder, and
Developer.pkg. On starting the install program you need to enter an
Admin
password before continuing. Then you read the licensing, which I skip.
After
that you choose a destination volume and we see that the installation
requires
613 MB of space. You can only do a basic installation, which takes
about 15
minutes. The last thing you see is the Install Software "Optimizing
System
Performance." One of the tidbits I read is that the base Mac OS X was
compiled
with a bad optimizer, hence why it's really slow. The Tools CD replaces
some
files with correctly optimized versions, so there's a speed increase. I
guess
we'll soon see. Restart.
|
Well, that didn't seem to have done much. Maybe a little
faster, but then
again maybe my mind is being too hopeful. In any case, there is now a
new
/Developer folder with several subfolders -- Applications,
Documentation,
Examples, Headers, Java, Makefiles, PBBundles, ProjectBuilder Extras,
ProjectTypes, and Tools. As usual with any development environment,
there's a
lot of stuff, a lot of little utilities that are used to do one or two
things,
a lot of files with weird names, quite a mountain to look through. I
can only
hope that the help is adequate. I can't imagine a new user, some
teenager with
their parents' computer, installing the tools and being able to
immediate
crank out a program. Not without spending a few intense days getting
familiar
with everything.
Let's look through the Applications folder, which contains 22
applications.
The first program is DebugNub Controller, which displays a small window
where
you can enter a port id and press a start button to "enable debugging."
Ok,
something to do with the debugger, nothing I need to know. There is a
FileMerge application that is used to compare files and merge the
differences,
something that's very useful in my line of work, where there are other
developers that change files and sometimes you need to know what
changes they
made compared to your changes. icns Browser lets you see the contents
of icon
files. Interestingly enough, it gives me a File Open dialog box that
has the
ability to burrow into an application folder, something that you can't
do with
normal applications. But it's not very useful to me. IconComposer lets
you
create icon files.
Now we come to Interface Builder. As soon as it launches it shows you
the
Release Notes (quite copius and ominous, indicating a complex
application), a
palette of interface elements, and a window where you can choose a
starting
template. After creating an empty window, you can drag different
interface
elements and arrange your gui. Edit each objects visual properties
(label,
color, size) and some event properties (what happens when a button is
pushed,
for example), and that's it. Later on you have to edit the object
classes and
add the real code, but if you've never worked with a gui builder you
know how
developer intensive it is to create a gui. Just getting the look and
feel
right is slow and painstaking and a waste of a developer's time when
they
could be writing code and adding functionality. This is a cool tool.
(continued)
|