Opinion: Apple's Leopard is a developer's delight

Revamped core technologies make coding easier, more exciting for software developers

1 2 3 Page 2
Page 2 of 3

It's like the difference between repeatedly posing a figure for a stop-action movie; that's hand-coding animation, in a sense. Using Core Animation is akin to having the figure come to life and animate itself based on the criteria set by the developer. For developers, frameworks are a major timesaver since they allow them to spend their time more productively coding for application-specific features.

What's new in Leopard

Wiley Hodges, Apple's senior product manager for Core OS and developer tools, explained in a recent interview what Apple has been up to when it comes to making developers' lives easier.

Apple's goal in revamping Leopard's core technologies was to allow developers to concentrate on the user experience -- what you see when you use a program -- and not worry about handwriting extra code, he said. Hodges noted that one of the major new features in Leopard is the ability to write 64-bit applications.

XCode 3.0 is the first version to bring 64-bit support at the GUI level mainstream, without requiring new device drivers for hardware, he said. Indeed, 64-bit support in XCode 3.0 includes full 64-bit addressing for up to 16 exabytes of virtual memory and 4TB of physical memory, as well as 64-bit performance-monitoring tools.

The best part, he said, is that 64-bit and the current standard 32-bit versions of any libraries are actually compiled from the same code-base, saving developers the pain of duplicating their efforts. In addition to that, when developers program with XCode, they can compile their code for 32- or 64-bit modes, creating applications that will run on Intel or Power PC hardware.

Using XCode 3.0 in general is a much better experience, since Apple has streamlined its interface and made it faster then its predecessors. Some of the improvements include code folding -- which allows developers to selectively show and hide code while they're working -- and even iChat-esque instant messaging bubbles that point to build warnings, errors and break points.

Even more impressive is the Project Snapshot, which allows a developer to return a project to a certain point earlier in the development process. That allows them to experiment with their code, trying new techniques or adding features, but with a safety net.

To help developers even more, XCode's documentation now offers a heads-up display called Research Assistant. It's an unobtrusive pop-up panel that displays relevant information about symbols in the developer's code, with full documentation just a click away.

According to Hodges, Objective C 2.0 is much easier to syntax, and has garbage collection built in. As Apple spells it out it to developers: "The new garbage collector is a tuned, high-performance implementation that makes tedious memory management in Cocoa applications a thing of the past." According to Hodges, garbage collection works alongside Objective C, obviating the need to manually manage Cocoa objects in memory.

"With garbage collection," he said, "developers don't have to be explicit about which objects are swapped in and out of memory; garbage collection does this automatically."

Hodges also pointed to the new Instruments suite, which allows developers to run applications and check performance in real time, which helps optimize the execution performance in their code. The suite, for example, allows a developer to track an application's CPU load, network and file activity and memory allocations, and he confirmed that it uses DTrace to monitor performance. Even better, Instruments scales itself to the hardware on which the app is being run, so that it won't overpower the battery life of mobile hardware, for instance.

1 2 3 Page 2
Page 2 of 3
7 inconvenient truths about the hybrid work trend
Shop Tech Products at Amazon