skip to content
Cocoa programming for Mac OS X Preview this item
ClosePreview this item

Cocoa programming for Mac OS X

Author: Aaron Hillegass
Publisher: Boston : Addison-Wesley, ©2004.
Edition/Format:   Print book : English : 2nd edView all editions and formats

Gives you an understanding of how to use the tools and frameworks to write applications for the Mac. Guiding programmers through the key features of Cocoa, this book emphasizes design patterns that  Read more...


(not yet rated) 0 with reviews - Be the first.

More like this

Find a copy online

Links to this item

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...


Additional Physical Format: Online version:
Hillegass, Aaron.
Cocoa programming for Mac OS X.
Boston : Addison-Wesley, ©2004
Material Type: Internet resource
Document Type: Book, Internet Resource
All Authors / Contributors: Aaron Hillegass
ISBN: 0321213149 9780321213143
OCLC Number: 54416091
Description: xix, 450 pages : illustrations ; 24 cm
Contents: 1. Cocoa: What Is It? A Little History.Tools.Language.Objects, Classes, Methods, and Messages.Frameworks.How to Read This Book.Typographical Conventions.Common Mistakes.How to Learn.2. Let's Get Started. In Xcode.Create a New Project.The main Function.In Interface Builder.The Standard Palettes.The Blank Window.Lay Out the Interface.The Doc Window.Create a Class.Create an Instance.Make Connections.Back in Xcode.Types and Constants in Objective-C.Look at the Header File.Edit the Implementation File.Build and Run.awakeFromNib.Documentation.What Have You Done?3. Objective-C. Creating and Using Instances.Using Existing Classes.Memory Management: Retain Count, Releasing, and Retaining.Sending Messages to nil.NSObject, NSArray, NSMutableArray, and NSString."Inherits from" Versus "Uses" or "Knows About".Creating Your Own Classes.Creating the LotteryEntry Class.Changing mainm.Implementing a description Method.Writing Initializers.Initializers with Arguments.The Debugger.What Have You Done?For the More Curious: How Does Messaging Work?Challenge.4. Controls. Some Commonly Used Subclasses of NSControl.NSButton.NSSlider.NSTextField.Start the SpeakLine Example.Lay Out the Nib File.Making Connections in Interface Builder.Implementing the AppController Class.Extending an Existing User Interface.For the More Curious: Setting the Target Programmatically.Challenge.5. Helper Objects. Delegates.The NSTableView and Its dataSource.AppController Interface File.Lay Out the User Interface.Make Connections.Edit AppControllerm.Common Errors in Implementing a Delegate.Many Objects Have Delegates.Retain Cycles.For the More Curious: How Delegates Work.Challenge.6. Bindings and NSController. Starting the RaiseMan Application.Key-Value Coding.In Interface Builder.Key-Value Coding and nil.Add Sorting.For the More Curious: Sorting Without NSArrayController.For the More Curious: Key Paths.Challenge 1.Challenge 2.7. NSUndoManager. NSInvocation.How the NSUndoManager Works.Adding Undo to RaiseMan.Key-Value Observing.Undo for Edits.For the More Curious: Windows and the Undo Manager.8. Archiving. NSCoder and NSCoding.Encoding.Decoding.The Document Architecture.Infoplist and NSDocumentController.NSDocument.NSWindowController.Saving and NSKeyedArchiver.Loading and NSKeyedUnarchiver.Setting the Extension and Icon for the File Type.For the More Curious: Preventing Infinite Loops.For the More Curious: Versioning.For the More Curious: Creating a Protocol.For the More Curious: Document-Based Applications Without Undo.9. Nib Files and NSWindowController. NSPanel.Adding a Panel to the Application.MainMenunib.Setting Up the Menu Item.AppControllerm.Preferencesnib.PreferenceControllerm.For the More Curious: NSBundle.Challenge 1.Challenge 2.10. User Defaults. NSDictionary and NSMutableDictionary.NSDictionary.NSMutableDictionary.NSUserDefaults.Precedence of Different Types of Defaults.Setting the Identifier for the Application.Creating Keys for the Names of the Defaults.Registering Defaults.Let the User Edit the Defaults.Using the Defaults.Suppressing the Creation of Untitled Documents.Setting the Background Color on the Table View.For the More Curious: Reading and Writing Defaults from the Command Line.Challenge.11. Using Notifications. What Notifications Are.What Notifications Are Not.NSNotification.NSNotificationCenter.Posting a Notification.Registering as an Observer.Unregistering the Observer.Handling the Notification When It Arrives.For the More Curious: Delegates and Notifications.For the More Curious: The userInfo Dictionary.Challenge 1.Challenge 2.12. Using Alert Panels. Make the User Confirm the Deletion.Challenge.13. Localization. Localizing a Nib File.String Tables.Creating String Tables.Using the String Table.For the More Curious: nibtool.For the More Curious: Explicit Ordering of Tokens in Format Strings.14. Custom Views. The View Hierarchy.Get a View to Draw Itself.Create an Instance of a View Subclass.Size Info.drawRect:.Drawing with NSBezierPath.NSScrollView.For the More Curious: Cells.For the More Curious: isFlipped.Challenge.15. Images and Mouse Events. NSResponder.NSEvent.Getting Mouse Events.Using NSOpenPanel.Change the Nib File.awakeFromNib Versus init.Edit the Code.Composite an Image onto Your View.The View's Coordinate System.Autoscrolling.For the More Curious: NSImage.Challenge.16. Responders and Keyboard Events. NSResponder.NSEvent.Create a New Project with a Custom View.Edit the Nib File.Write the Code.For the More Curious: Rollovers.17. Working with Fonts and NSAttributedString. NSFont.Commonly Used Methods in NSFont.NSAttributedString.Drawing Strings and Attributed Strings.Making Letters Appear.Getting Your View to Generate PDF Data.For the More Curious: NSFontManager.Challenge 1.Challenge 2.18. Pasteboards and Nil-Targeted Actions. NSPasteboard.Add Cut, Copy, and Paste to BigLetterView.Nil-Targeted Actions.Looking at the Nib File.For the More Curious: Which Object Really Sends the Action Message?For the More Curious: Lazy Copying.Challenge.19. Categories. Add a Method to NSString.For the More Curious: Declaring Private Methods.20. Drag-and-Drop. Make BigLetterView Be a Drag Source.After the Drop.Make BigLetterView Be a Drag Destination.registerForDraggedTypes.Add Highlighting.Implement the Dragging Destination Methods.Testing.21. NSTimer. Lay Out the Interface.Make Connections.Adding Code to AppController.For the More Curious: NSRunLoop.Challenge.22. Sheets. Adding a Sheet.Add Outlets and Actions.Lay Out the Interface.Add Code.For the More Curious: contextInfo.For the More Curious: Modal Windows.For the More Curious: Alert Sheets.For the More Curious: NSDrawer.Challenge.23. Creating NSFormatters. A Basic Formatter.Edit the Interface File for the AppController Class.Edit the Nib File.NSColorList.Searching Strings for Substrings.Create a Subclass of NSFormatter.The Delegate of the NSControl.Checking Partial Strings.Formatters That Return Attributed Strings.Challenge.24. Printing. Adding Printing to TypingTutor.Dealing with Pagination.For the More Curious: Am I Drawing to the Screen?Using ObjectAlloc.Challenge.25. Updating Menus. Making a BigLetterView Uncopyable.For the More Curious: Menu Delegates.26. Working with NSTextView. NSTextView.Messages the Delegate Will Be Sent.Build the Editor with Which This Book Was Written.Read, Write, and Edit Text Files.Add a Context-Sensitive Menu.Replace the Selection.For the More Curious: The Field Editor.Challenge.27. Creating Interface Builder Palettes. Add NSCoding Methods to BigLetterView.Create a Palette Project.Edit the Nib File for Your Palette.palettetable.Build and Test.finishInstantiate.Adding an Inspector.Create a Nib File for Your Inspector.Code for an Inspector.Adding Bindings to a Custom View.For the More Curious: How to Palettize Objects That Are Not Views.Challenge.28. AppleScript. Making an Application AppleScript-able.Create the Plists.Handling the Apple Events.29. Cocoa and OpenGL. A Simple Cocoa/OpenGL Application.30. Creating Frameworks. Create a Framework.Embed the Framework in an Application.Compile the Framework for Embedding.Compile the Application with the Framework.Prebinding.Zero-Link.31. GNUstep. Creating a System That Will Run GNUstep Applications.Building and Starting the Development Tools.Creating the RandomApp with GNUstep.32. The End. Index.
Responsibility: Aaron Hillegass.
More information:


User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...


Be the first.
Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data

Primary Entity

<> # Cocoa programming for Mac OS X
    a schema:CreativeWork, schema:Book ;
   library:oclcnum "54416091" ;
   library:placeOfPublication <> ; # Boston
   library:placeOfPublication <> ;
   schema:about <> ; # Mac OS.
   schema:about <> ;
   schema:about <> ; # Cocoa (Software framework)
   schema:about <> ;
   schema:about <> ; # Operating systems (Computers)
   schema:about <> ; # Macintosh (Computer)--Programming
   schema:about <> ; # Mac OS.
   schema:about <> ; # Macintosh (Computer)--Programming
   schema:bookEdition "2nd ed." ;
   schema:bookFormat bgn:PrintBook ;
   schema:copyrightYear "2004" ;
   schema:creator <> ; # Aaron Hillegass
   schema:datePublished "2004" ;
   schema:exampleOfWork <> ;
   schema:inLanguage "en" ;
   schema:isSimilarTo <> ;
   schema:name "Cocoa programming for Mac OS X"@en ;
   schema:productID "54416091" ;
   schema:publication <> ;
   schema:publisher <> ; # Addison-Wesley
   schema:url <> ;
   schema:url <> ;
   schema:workExample <> ;
   wdrs:describedby <> ;

Related Entities

<> # Boston
    a schema:Place ;
   schema:name "Boston" ;

<> # Addison-Wesley
    a bgn:Agent ;
   schema:name "Addison-Wesley" ;

<> # Cocoa (Software framework)
    a schema:CreativeWork ;
   schema:name "Cocoa (Software framework)" ;

<> # Macintosh (Computer)--Programming
    a schema:Intangible ;
   schema:name "Macintosh (Computer)--Programming"@en ;

<> # Operating systems (Computers)
    a schema:Intangible ;
   schema:name "Operating systems (Computers)"@en ;

<> # Mac OS.
    a schema:CreativeWork ;
   schema:name "Mac OS." ;

<> # Macintosh (Computer)--Programming
    a schema:Intangible ;
   schema:name "Macintosh (Computer)--Programming"@en ;

<> # Aaron Hillegass
    a schema:Person ;
   schema:familyName "Hillegass" ;
   schema:givenName "Aaron" ;
   schema:name "Aaron Hillegass" ;

    a schema:ProductModel ;
   schema:isbn "0321213149" ;
   schema:isbn "9780321213143" ;

    a schema:CreativeWork ;
   rdfs:label "Cocoa programming for Mac OS X." ;
   schema:description "Online version:" ;
   schema:isSimilarTo <> ; # Cocoa programming for Mac OS X

Content-negotiable representations

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.