- ホーム
- > 洋書
- > 英文書
- > Computer / Languages
Full Description
This guide takes a step-by-step approach to teaching developers how to build real graphics applications using Cocoa. By showing the basics of an application in one chapter and then layering additional functionality onto that application in subsequent chapters, the book keeps readers interested and motivated. Readers will see immediate results, and then go on to build onto what they've already achieved. The book is divided into four major parts: Part I introduces the Mac OS X graphical user interface (Aqua) from a developer's point of view, Cocoa developer tools (such as the Interface Builder, Project Builder, and gdb debugger), object-oriented concepts, the Objective-C language in which Cocoa is written, and the basics of Cocoa programming itself; Part II focuses on building the first complete application, calculator, a simple four-function calculator. The chapters in this part of the book extend the application, piece by piece, by introducing such features as nibs, icons, delegation, resizing, events, and responders.
Part III focuses on building an application called MathPaper, which is similar to a word processor but which instead solves mathematical expressions the user supplies. The chapters in this part of the book extend MathPaper by developing both the front and back ends using a variety of Cocoa classes and methods. They introduce Cocoa'sdocument-based architecture, tasks, pipes, Rich Text format, handling document files, and using Quartz to draw in windows. Part IV focuses on building the GraphPaper application, a more complex multithreading application that graphs mathematical functions in multiple dimensions and that uses mouse-over capabilities to identify graph points. The chapters in this part of the book add more advanced Mac OS X features such as multithreading, colour, mouse events, zoom buttons, pasteboards, services, preferences, and the defaults database.
Contents
Part I Cocoa overview: understanding the Aqua interface, what makes Mac OS X so special?, a quick look at the Mac OS X user interface, basic principles of the Aqua interface, the mouse and cursor, window types and behaviour, menus and the menu bar, the dock controls, the finder configuring your desktop, step-by-step, menu guidelines and keyboard equivalents, working with the filesystem step-by-step, summary, exercises, references; tools for developing Cocoa applications - developer tools, utilities, working with the terminal, debugging programs with gdb user interface design, summary, exercises; creating a simple application with interface builder - getting started with interface builder, adding objects to your application, objects, messages, and targets, summary, exercise; an objective-C application without interface - builder, the Tiny.m program, an introduction to objective-C, Tiny.m revisited, summary, exercises, references. Part II Calculator: building a simple application; building a project - a four-function calculator, getting started - building the calculator project, building the calculator's user interface, building the calculator's controller class, customizing buttons and making connections, compiling and running a program, compiler error messages, the enterDigit - action method, adding the four calculator functions, adding the Unary Minus function to the controller class, the files in a project, summary, exercises; nibs and icons - customizing mainmenu.nib, managing multiple nibs, adding icons to applications, changing calculator's application icon, Cocoa's NSImage class, summary, exercises, references; delegation and resizing - handling different bases, delegation, disabling buttons for bettermultiradix input, resizing windows programmatically, two very important classes - NSWindow and NSView, summary, exercises; events and responders - events and the NSResponder chain, events and the NSApplication object. Part III MathPaper: a multiple-document, multiprocess application; MathPaper and Cocoa's document-based architecture - the MathPaper application, the evaluator back end, Cocoa 's Document-Based Architecture, building MathPaper's front end, summary, exercises, references; tasks, pipes, and NSTextView - processes, pipes, and resources, making evaluator a MathPaper auxiliary executable, MathDocument class modifications, creating PaperController, a subclass of NSWindowController, the NSScrollView and NSTextView classes, PaperController class modifications, summary, exercises; rich text format and NSText - rich text format and NSText, rich text format, creating an RTF class, integrating our RTF class into MathPaper, summary, exercises; saving, loading, and printing - data management with NSDocument, saving to a file, loading from a file, marking a document window as edited, adding printing capability, summary, exercises. (Part Contents)