En savoir plus
Preface xvii Part I The Life Cycle of a Mac OS X Application 11 Kicking the Tires 3 1.1 First Run 3 1.2 Hello, World 4 1.3 What Went Where 9 1.4 Summary 10 2 Simple Workflow and Passive Debugging 11 2.1 Linear Regression 11 2.2 Plan of Action 13 2.3 A Command Line Tool 14 2.4 Build Errors 15 2.5 Simple Debugging 18 2.6 Summary 21 3 Simple Active Debugging 23 3.1 The Next Step 23 3.2 Active Debugging 24 3.3 Summary 31 4 Compilation: The Basics 33 4.1 Compiling 33 4.2 Linking 36 4.3 Dynamic Loading 38 4.4 Prebinding 39 4.5 ZeroLink 40 4.6 Summary 42 5 Starting a Cocoa Application 43 5.1 Plan of Action 43 5.1.1 Program Tasks 43 5.1.2 Model-View-Controller 43 5.2 Starting a New Project 48 5.3 Implementation: Model 50 5.3.1 DataPoint 50 5.3.2 RegressionModel Class 54 5.3.3 Model: Done 58 5.4 Summary 60 6 A Cocoa Application: Views 61 6.1 Interface Builder 62 6.2 Layout 63 6.3 Sizing 67 6.4 A Split View 71 6.5 Summary 71 7 A Cocoa Application: Controllers 73 7.1 Still in Interface Builder 73 7.2 NSObjectController: Document 75 7.3 NSObjectController: Model 77 7.4 NSArrayController: DataPoints 78 7.5 Value Binding 80 7.6 Actions and Outlets 81 7.7 MyDocument 82 7.8 Application Properties 84 7.9 Building 87 7.10 Summary 87 8 Property Lists 89 8.1 Data Types 89 8.2 Property List Files 90 8.2.1 Writing a Property List 90 8.2.2 Examining Property Lists 100 8.3 Other Formats 106 8.3.1 ASCII Property Lists 106 8.3.2 Binary Property Lists 107 8.4 Text Macros 107 8.5 Summary 113 9 Libraries and Dependent Targets 115 9.1 Adding a Target 115 9.2 Library Design 116 9.3 Modifying Linear 121 9.4 A Dependent Target 123 9.5 Examining the Library 125 9.6 Running the Library 127 9.7 Summary 128 10 File Packages and Bundles 129 10.1 A Simple Package: RTFD 130 10.2 Bundles 132 10.3 Application Bundles 132 10.4 The Info.plist File 134 10.4.1 Keys for All Bundles 135 10.4.2 Keys for Applications 136 10.4.3 Keys for Plug-Ins 138 10.4.4 Keys for Java 139 10.4.5 Keys for Preference Panes 139 10.4.6 Keys for Dashboard Widgets 139 10.5 Summary 140 11 Creating a Custom View 141 11.1 Controller 141 11.2 View 143 11.3 The Delegate Design Pattern 146 11.4 The Custom View 149 11.5 Showing the Window 156 11.6 Testing 157 11.7 Debugging a View 159 11.8 Summary 163 12 Dynamic Libraries and Frameworks 165 12.1 Adding a Framework Target 166 12.2 Framework Structure 171 12.3 Using the Framework 173 12.4 Where Frameworks Go 175 12.5 Private Frameworks 179 12.6 Prebinding 181 12.7 Summary 182 13 Version Control 183 13.1 Setting up a Repository 185 13.2 Controlling Linear 191 13.3 Long Live Linear 194 13.4 Tagging 195 13.5 Summary 198 14 Cross-Development 199 14.1 Cross-Development SDKs 199 14.2 Nib Compatibility 203 14.3 NSTableDataSource 205 14.4 Add, Remove, Compute, and Graph Buttons 208 14.5 Run and Archive 211 14.6 A More Sophisticated Approach 212 14.7 Producing a Universal Binary 212 14.7.1 Auditing for Portability 213 14.7.2 Auditing Linear 214 14.7.3 Building Universal 217 14.7.4 Mixing SDKs 218 14.8 Summary 219 15 Using the Data Modeling Tools 221 15.1 Data Modeling 221 15.2 Revisiting the Model 224 15.2.1 DataPoint 225 15.2.2 Regression 228 15.2.3 MyDocument 232 15.3 Interface Builder 234 15.4 Build and Run 235 15.5 Adding an Entity 237 15.5.1 Adding to the Data Model 237 15.5.2 Human Interface 238 15.5.3...