ADC Article: Leopard Technology Series for Developers

Tuesday, October 24th, 2006

A new technology article from Apple Developer Connection today, explaining what developers can expect to see in Leopard:

Leopard is the sixth major version of Mac OS X and it will be the most advanced and powerful version yet. For users, it is full of new features and elegant user experience improvements that will make it a joy to use. For developers, things get even better. Leopard contains a cornucopia of cutting-edge new frameworks, streamlined developer tools, new application technologies, and strong system-level foundations. No matter what kind of developer you are, there’s something new in the system that will feel tailor made just for you.

My first thoughts are that the development tools look great. Since I haven’t bought an ADC Premier account I can only look at the screenshots, but I’m really impressed by what I can see. Between Xcode 3.0, Interface Builder and the new Xray profiling tool, it seems like Apple really spent a lot of effort improving and cleaning up some of the more outdated parts of the development tools. I know when I finally get Leopard on my system, playing around with Xcode is one of the first things I’m going to do.

Objective-C 2.0 and Core Animation I’m not terribly excited about. The last two big additions to Cocoa, Bindings and Core Data, had tangible benefits that developers could apply to existing problems in their applications. Core Animation sounds visually appealing, but I doubt it’s something many applications really “need” in order to accomplish their basic workflow. Same thing with Objective-C 2.0; although I’m sure many new .NET and Java developers will find it a little easier to work with, it’s not really going to let existing developers do anything they couldn’t do before. It looks like Objective-C 2.0 will be fully backwards compatible, which is good. I have no real desire to trade in retain / release memory management for the new garbage collection, since in certain conditions you really do need that extra amount of control, even if garbage collection makes things easier 80% of the time.

There are also a few new frameworks which will be worth looking over. The one that really caught my eye is the Calendar Store framework, which provides integration with iCal. Considering how much Web 2.0 calendar and productivity webapps have been in the news lately, I think we’re going to see a lot more integration between different platforms in the near future. I’ve used Plaxo a bit in the past, which is headed in this direction but only supports OSX Address Book data at the moment. Hopefully with frameworks like Calendar Store, by this time next year I’ll be using Outlook at work and on my PDA, iCal at home, and they’ll both sync up seamlessly.

There are 3 comments in this article:

  1. 24/10/2006Scott Stevenson said:

    Core Animation sounds visually appealing, but I doubt it’s something many applications really “need” in order to accomplish their basic workflow.

    Core Animation isn’t just about fancy 3D effects. That’s just the stuff that’s good to demo. Xcode 3 uses Core Animation for popups and what not. Trust me, there’s more there than you think.

    Same thing with Objective-C 2.0; although I’m sure many new .NET and Java developers will find it a little easier to work with, it’s not really going to let existing developers do anything they couldn’t do before.

    You could say the same about Core Data. There’s nothing to stop you from using raw SQLite and KVO to build an application with Core Data-like behavior. Clearly, though, Core Data makes things a lot of things easier.

    Simplifying the mechanics of programming allows you to focus on bigger things. That’s the whole idea behind Cocoa, and that’s the reason for the improvements in Objective-C 2.0.

  2. 29/07/2007Jakob said:

    This is exactly what I expected to find out after reading the title ADC Article: Leopard Technology Series for Developers. Thanks for informative article

  3. 4/12/2007Jools said:

    > Core Animation sounds visually appealing,
    > but I doubt it’s something many applications
    > really “need” in order to accomplish their basic
    > workflow.

    Perhaps you should redefine your interpretation of ‘need’. Mine interpretation says that people generally take basic workflow for granted. No one is going to use or buy software that doesn’t meet their workflow needs. If intelligent use of animation enhances people’s understand, enjoyment and workflow, then to me it classes as a need.

    It can’t have escaped the attention of many, that people are increasingly looking for applications which are interesting and exciting to use. The star apps are all going down that route – both pro apps and mass market apps.

    People want applications that provide workflow, ease of use and visual stimulation. Whoever provides them with all those things, wins. Everything else will simply tag along in second, third and fourth place.

    The future belongs ENTIRELY to those who write computer programs for people, and not those who write computer programs for computers, or processes, or workflows.