Step into Xcode: Mac OS X Development

Paperback (Print)
Used and New from Other Sellers
Used and New from Other Sellers
from $1.99
Usually ships in 1-2 business days
(Save 96%)
Other sellers (Paperback)
  • All (14) from $1.99   
  • New (3) from $33.45   
  • Used (11) from $1.99   
Sort by
Page 1 of 1
Showing All
Note: Marketplace items are not eligible for any coupons and promotions
Seller since 2015

Feedback rating:



New — never opened or used in original packaging.

Like New — packaging may have been opened. A "Like New" item is suitable to give as a gift.

Very Good — may have minor signs of wear on packaging but item works perfectly and has no damage.

Good — item is in good condition but packaging may have signs of shelf wear/aging or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Acceptable — item is in working order but may show signs of wear such as scratches or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Used — An item that has been opened and may show signs of wear. All specific defects should be noted in the Comments section associated with each item.

Refurbished — A used item that has been renewed or updated and verified to be in proper working condition. Not necessarily completed by the original manufacturer.

Brand New Item.

Ships from: Chatham, NJ

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
Seller since 2015

Feedback rating:


Condition: New
Brand new.

Ships from: acton, MA

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Seller since 2008

Feedback rating:


Condition: New

Ships from: Chicago, IL

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Page 1 of 1
Showing All
Sort by


A Step-by-Step Guide to the Xcode Mac OS Development Environment

Every copy of Mac OS X comes with Xcode, the powerful development suite that Apple uses to build applications ranging from Safari to iTunes. But because Xcode is complex and subtle, even experienced Mac programmers rarely take full advantage of it. Now, Mac developer Fritz Anderson has written the definitive introduction and guide to using Xcode to build applications with any Macintosh technology or language.

Anderson helps you master Xcode's powerful text editor, industry-standard gcc compiler, graphical interactive debugger, mature UI layout and object linkage editor, and exceptional optimization tools. One step at a time, you'll develop a command-line utility, then use Xcode tools to evolve it into a full-fledged Cocoa application. Anderson provides expert guidance on development frameworks, source code management, Core Data modeling, localization, and much more.

Coverage includes

  • Understanding Xcode workflow and the Mac OS X application lifecycle
  • Porting established legacy projects into Xcode
  • Using the Model-View-Controller design pattern to build robust graphical applications
  • Building static libraries and working with Xcode's build system
  • Making the most of bundles and package directories
  • Creating applications compatible with older versions of Mac OS X
  • Creating universal binaries to run on both Intel and PowerPC Macintoshes
  • Adding Spotlight searchability to data files
  • Leveraging Xcode's built-in support for unit testing
  • Using Xcode on makefile-based UNIX development projects

Step Into Xcode's breadth, depth, and practical focus make it indispensable to every Mac developer: current Xcode users upgrading to Xcode 2.1, experienced Mac programmers migrating from CodeWarrior, UNIX/Linux programmers moving to Mac OS X, and even novices writing their first programs or scripts.

Read More Show Less

Product Details

  • ISBN-13: 9780321334220
  • Publisher: Addison-Wesley
  • Publication date: 2/3/2006
  • Pages: 496
  • Product dimensions: 7.00 (w) x 9.23 (h) x 0.93 (d)

Meet the Author

Fritz Anderson has been a Macintosh developer since 1984 and is currently a Macintosh programmer for the University of Chicago. Also a Macintosh programming consultant, Anderson's articles have been published in the Macintosh Products Guide, MacUser, and MacTech. He holds a degree in physics from Kenyon College and a law degree from Georgetown University.

Read More Show Less

Read an Excerpt

From the moment it first published Mac OS X, Apple Computer has made a complete suite of application-development tools available to every Macintosh user. Since Mac OS X version 10.3, those tools have been led by Xcode, the development environment that Apple's engineers use to develop system software and such applications as Safari, iTunes, Mail, and iChat. These same tools are in your hands.

  • A solid text editor with syntax coloring and API-based code completion
  • The industry-standard gcccompiler suite
  • A graphical, interactive debugger based on the GNU debugger (gdb)
  • A mature human interface (UI) layout and object-linkage editor for Carbon and Cocoa
  • Tools for gaining detailed insights into optimizing performance

I wrote this book for three types of readers.

1. Newcomers curious about the world of Mac OS X development

2. Experienced UNIX-family operating systems users who want an introduction to the Mac OS X tool set

3. Xcode users wanting to supplement their techniques

Step into Xcode will not attempt to teach programming, a programming language, or any of the Mac OS X programming frameworks; good books on those subjects have already been written. My aim is to focus squarely on using the Xcode tool set. Most of the book uses one example project—not as a showcase for the programming techniques involved but as a framework for how to do Mac development with these tools.

The CD-ROM accompanying this book provides the complete project directory—bugs and all!—for each chapter. Many of the examples in this book follow the progress of an application project that begins with a UNIX command line tool and progresses to a Core Data-based application with Spotlight support. As you follow along, you won't have to peck out every file and setting yourself. The CD-ROM directory, Examples, includes a copy of the project at every major stage of development—at least one version for each chapter. You can simply copy the current example project to your hard drive; the only errors are the ones I made deliberately.

Structure of the Book

Step into Xcode is divided into two parts. Part I introduces Xcode and Mac OS X development against the background of developing a simple application from a BSD command line tool to a Tiger-savvy Cocoa application taking advantage of Core Data and Spotlight.

Chapter 1 introduces Xcode with the obligatory "Hello, World" demonstration.

Chapter 2 demonstrates the typical Xcode workflow by building a command line tool that will form the heart of the application we'll be building throughout Part I.

Chapter 3 moves from passive use of the Xcode debugger to active use, interrupting program flow to examine the workings of a flawed application.

Chapter 4 shows what happens in compilation and linkage, both generally and in Mac OS X.

Chapters 5, 6, and 7 wrap our command line tool in a Cocoa graphical interface. The Model-View-Controller design pattern is matched to the tools Xcode provides to implement it.

Chapter 8 focuses on property lists, a must-know subject in Mac OS X development, and shows how to create text macros for Xcode.

Chapter 9 moves our command line tool into a static library, showing how to build such a library and how to integrate a dependent target with Xcode's build system.

Chapter 10 examines bundles and package directories. Most of the targets Xcode can produce are varieties of bundles. We look at the ubiquitous Info.plist file.

Chapter 11 develops techniques for creating custom view classes for Cocoa and shows how the development tools support them.

Chapter 12 extends the odyssey of our library from library to framework, showing how to package a dynamic library and its headers for sharing or for embedding in an application.

Chapter 13 surveys the Xcode options in support of source code management systems. We set up a local CVS (concurrent versions system) repository and put our project under SCM (software configuration management) control.

Chapter 14 covers two scenarios for cross-development: creating applications compatible with versions of Mac OS X earlier than your own and creating universal binaries to run on both Intel and PowerPC Macintoshes.

Chapter 15 shows how to use the data modeling tool to generate a Core Data model for our application. After converting our application to use Core Data, many development tasks become a matter of using Interface Builder.

Chapter 16 examines the techniques used to add Spotlight searchability to our data files.

Chapter 17 finishes up our application with a localization and offers some thoughts on dead-code stripping.

Part II goes deeper into Xcode usage.

Chapter 18 examines the Xcode human interface and explains how to use it to navigate projects.

Chapter 19 considers Xcode from the point of view of a developer accustomed to using CodeWarrior, examining the stumbling blocks on the way to conversion and showing how to make the Xcode experience more familiar. At the end of the chapter, the notes on controlling the export of symbols may be useful to non-CodeWarriors.

Chapter 20 looks at Xcode from the point of view of a developer accustomed to working with make files. This chapter describes the build system beneath the IDE (interactive development environment) and explains how you can customize and control it.

Chapter 21 goes deeper into the debugging tools and techniques introduced in Part I.

Chapter 22 shows how to make Xcode work faster.

Chapter 23 builds a simple AppleScript Studio application and considers Xcode's built-in support for unit testing.

Chapter 24 shows how to use Xcode on a large open-source make file-based project, and how to apply Xcode's debugger and the Shark performance measurement tool to it.

Chapter 25 offers tips, traps, and observations that were left over from the rest of the book.

Finally, there are two appendixes:

Appendix A reviews how to get the latest version of Xcode and how to install it.

Appendix B lists the major settings variables used by the Xcode build system.

Xcode Versions Covered

This book is based on Xcode version 2.1, released in June 2005, although this version will probably vary from the one you will use, as Apple has not been timid about reworking Xcode substantially as performance and usability issues arise. The overall strategies and approach developed in this book—the Xcode workflow—will be the same across Xcode versions. For details, you may have to explore Xcode's menus, inspectors, and preferences; search its help system; or ask on Apple's mailing list for Xcode users: Most of the material in this book can also be applied to Xcode 1.5, the last version of Xcode for Mac OS X 10.3.

Read More Show Less

Table of Contents

Pt. I The life cycle of a Mac OS X application 1
1 Kicking the tires 3
2 Simple workflow and passive debugging 11
3 Simple active debugging 23
4 Compilation : the basics 33
5 Starting a Cocoa application 43
6 A Cocoa application : views 61
7 A Cocoa application : controllers 73
8 Property lists 89
9 Libraries and dependent targets 115
10 File packages and bundles 129
11 Creating a custom view 141
12 Dynamic libraries and frameworks 165
13 Version control 183
14 Cross-development 199
15 Using the data modeling tools 221
16 Spotlight 243
17 Finishing touches 263
Pt. II Xcode tasks 283
18 Navigating an Xcode project 285
19 Xcode for CodeWarrior veterans 307
20 Xcode for make veterans 325
21 More about debugging 345
22 Xcode and speed 363
23 AppleScript studio 369
24 A large project 385
25 Closing snippets 407
App. A Installing Xcode 417
App. B Some build variables 423
Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)