
Complete with introductory video, lesson guide and sample code in an Xcode project, you’ll learn to create new and compelling features in your application using the development languages, APIs and frameworks of Mac OS X Leopard.
In each Coding Headstart, you’ll find these valuable resources:
Introductory Video
Hear Apple experts explain the benefits, new techniques, or enhanced capabilities covered in each Coding Headstart.
Lesson Guide
These tutorials walk you step-by-step through the code and techniques you need to complete each lesson.
Sample Code
With sample code in an Xcode project, you get the essential ingredients you need to develop new features and capabilities in your application.
Watch Introductory Videos for Coding Headstarts
Click the links below to watch Apple experts introduce the benefits, new techniques, or enhanced capabilities covered in each Coding Headstart. Become an ADC Premier or Select Member today to access the lesson guide and sample code in an Xcode project.
- Automator
src="images/poster.gif"
Automator
The Automator application provides a drag and drop interface for creating repeatable workflows to automate tasks.
- Beyond Tables and Cells: Introducing Animated Collection Views
src="images/poster.gif"
Beyond Tables and Cells: Introducing Animated Collection Views
NSCollectionView displays information as grid elements in rows and columns and introduces new concepts making its layout more flexible while adding great new visual effects.
- Carbon and Cocoa Integration Introduction
src="images/poster.gif"
Carbon and Cocoa Integration Introduction
Take advantage of the latest Cocoa technologies directly from your Carbon application.
- NEW: Cocoa Controls
src="images/poster.gif"
Cocoa Controls
In Mac OS X Leopard, Cocoa presents two new controls, NSPredicateEditor and NSPathControl, letting users express rules or filter criteria as well as letting them display file system paths.
- Controlling Scriptable Applications With Python & Ruby
src="images/poster.gif"
Controlling Scriptable Applications With Python & Ruby
Scripting Bridge allows you to control scriptable applications from Objective-C. Combined with RubyCocoa or PyObjC, you can use your favorite scripting language to control other applications and to use features from the Cocoa frameworks as well.
- Core Data
src="images/poster.gif"
Core Data
Core Data provides a powerful data model framework for use with Cocoa applications, and offers a great deal of flexibility for when, how, and how much data your application manages.
- Getting Started with Calendar Store
src="images/poster.gif"
Getting Started with Calendar Store
The Calendar Store framework in Mac OS X Leopard provides a high-level API for accessing and creating system-wide or application specific events and To Do's.
- Getting Started with Cocoa Bindings
src="images/poster.gif"
Getting Started with Cocoa Bindings
Cocoa bindings provide a way to keep model and view values synchronized without having to write a lot of glue code.
- Introduction to Scripting Bridge
src="images/poster.gif"
Introduction to Scripting Bridge
Scripting Bridge allows you to control scriptable applications from Objective-C. Combined with RubyCocoa or PyObjC, you can use your favorite scripting language to control other applications and to use features from the Cocoa frameworks.
- NEW: Previewing Documents With Quick Look
src="images/poster.gif"
Previewing Documents With Quick Look
The Quick Look feature of Leopard lets users view the contents of a file without having to launch an application to open it.
- Simpler Threading With NSOperation
src="images/poster.gif"
Simpler Threading With NSOperation
The NSOperation class in Mac OS X Leopard simplifies threading by providing an easy way to encapsulate tasks and execute them concurrently.
- Tracking Buddy Status With AddressBook and iChat
src="images/poster.gif"
Tracking Buddy Status With AddressBook and iChat
Mac OS X v10.5 applications can seamlessly share user data and services with other applications giving a consistent user experience across the entire system.
- NEW: Transitioning From Carbon to 64-bit Cocoa
src="images/poster.gif"
Transitioning From Carbon to 64-bit Cocoa
Carbon developers who want to build a 64-bit application for Mac OS X v10.5 need to use Cocoa to implement their application's user interface. This headstart will help you migrate an application's user interface from Carbon to Cocoa.
- NEW: Writing a Spotlight Importer
src="images/poster.gif"
Writing a Spotlight Importer
Spotlight in Mac OS X Leopard has a number of new features and enhancements, making it faster and easier than ever to find documents, applications, and information with a simple search field.
- Coding Smarter with Objective-C 2.0
src="images/poster.gif"
Coding Smarter with Objective-C 2.0
Objective-C 2.0 provides several new features including properties, fast-enumeration, and garbage collection.
- NEW: Expanding Your Code Options With RubyCocoa
src="images/poster.gif"
Expanding Your Code Options With RubyCocoa
RubyCocoa is the Ruby scripting language melded with the Objective-C runtime enabling users to use the dynamic features of Ruby while having access to most Mac OS X frameworks.
- Fundamentals of Kernel Debugging
src="images/poster.gif"
Fundamentals of Kernel Debugging
Kernel debugging provides a way to track down and fix bugs in device drivers and other kernel extensions.
- NEW: Improving Code Analysis With Instruments
src="images/poster.gif"
Improving Code Analysis With Instruments
With Instruments you can analyze many aspects of your application's performance, including memory use, disk access, network activity, and more.
- NEW: Optimizing Development With Xcode Organizer
src="images/poster.gif"
Optimizing Development With Xcode Organizer
The Xcode Organizer is a powerful tool that lets you organize and build frequently used projects, including those that use external build systems, without ever having to open the project files themselves.
- NEW: Accelerating Your Drawing Code with Quartz GL
src="images/poster.gif"
Accelerating Your Drawing Code with Quartz GL
Quartz GL is a technology that enables Quartz drawing operations to run on the graphics processing unit (GPU) instead of the CPU enabling significant performance gains.
- Adding Core Image Effects to Your Video Playback
src="images/poster.gif"
Adding Core Image Effects to Your Video Playback
QTKit and Core Image are high-level, Objective-C frameworks built on top of a number of powerful Mac OS X graphics and imaging technologies, including Core Audio, Core Animation, Quartz 2D, and OpenGL.
- Core Animation
src="images/poster.gif"
Core Animation
Core Animation makes it easy to add rich animation with great performance in your application, resulting in an enhanced user experience with less code.
- Creating a PDFViewer with PDF Kit Introduction
src="images/poster.gif"
Creating a PDFViewer with PDF Kit Introduction
PDF Kit makes it easy to support the PDF document format in your Cocoa application, allowing you to handle document display, searching, and navigation with a minimum of custom code.
- Enabling the OpenGL Multithreaded Engine
src="images/poster.gif"
Enabling the OpenGL Multithreaded Engine
Running OpenGL in multithreaded mode on Mac OS X can make your application more responsive.
- How to Make a Photo Viewer Using Image Kit
src="images/poster.gif"
How to Make a Photo Viewer Using Image Kit
Learn how to incorporate images in your Cocao app using the built-in functionalities of the Image Kit frameowrk.
- Performance Tuning Quartz2D
src="images/poster.gif"
Performance Tuning Quartz2D
Learn how to apply performance tuning steps to optimize your drawing application and improve CPU processing time.
- QTKit MyRecorder Sample
src="images/poster.gif"
QTKit MyRecorder Sample
The QTKit framework in Mac OS X Leopard introduces a new set of Cocoa classes and methods designed to support professional-level video and audio capture, and pro-grade recording of media.
- Resolution Independence Introduction
src="images/poster.gif"
Resolution Independence Introduction
Depending on the type of application, the user interface, and the drawing technologies used, you may need to update your code and custom artwork to provide the best user experience on high resolution displays.
- Try out Your Shaders with GLSL Showpiece
src="images/poster.gif"
Try out Your Shaders with GLSL Showpiece
By using Shaders with 3D rendering, you can create amazing visual effects and transform typical 3D graphics into a cinematic experience.
- Adding WYSIWYG Editing to Your Web Page
src="images/poster.gif"
Adding WYSIWYG Editing to Your Web Page
WYSIWYG editing makes it possible for website users to write and format bulletin board postings and other web content without learning a markup language.
- NEW: Drawing Vector Graphics Using Canvas
src="images/poster.gif"
Drawing Vector Graphics Using Canvas
Canvas is a technology built into the Web Kit and Safari that provides a 2D graphics context for drawing and image manipulation. With Canvas, you can take images and apply transformations, overlay shapes, add shadows, and perform various other operations to make rich interactive web applications.
- Enhancing a Widget with Dashcode Introduction
src="images/poster.gif"
Enhancing a Widget with Dashcode Introduction
Dashcode, the newest development tool in Mac OS X Leopard, makes it easy to jumpstart Dashboard widget development.
- NEW: Extending Your Application with JavaScriptCore
src="images/poster.gif"
Extending Your Application with JavaScriptCore
The JavaScript Core framework is a new framework in Mac OS X v10.5 that allows applications to run JavaScript code.
- Writing a Webkit Plugin
src="images/poster.gif"
Writing a Webkit Plugin
Web browser plug-ins are compiled bundles that help extend the content types supported by common web browsers.