Beginning OS X Lion Apps Development (eBook)
XV, 392 Seiten
Apress (Verlag)
978-1-4302-3721-1 (ISBN)
Beginning OS X Lion Apps Development explains how to develop OS X Lion-based apps and publish them in the Mac App Store. It begins with the basics of Objective-C and Cocoa, and then moves through all the topics necessary to build and publish your first successful Mac apps!
- Get started with Objective-C and Xcode
- Build your first complete apps that integrate well with Mac OS X
- Publish your apps on the Mac App Store
If you're new to Mac or new to iPhone or iPad apps development, and looking to develop apps for the Macbook Pro or Mac desktop, this book is for you!
Rob Warner is a senior technical staff member for Availity, LLC, based in Jacksonville, Florida, where he works with various teams and technologies to deliver solutions in the healthcare sector. He co-authored emThe Definitive Guide to SWT and JFace/em (Apress, 2004), and he blogs at a href='http://www.Grailbox.com'Grailbox.com/a. He earned his bachelor s degree in English from Brigham Young University in Provo, Utah. He lives in Jacksonville with his wife, Sherry, and their five children.
With the Mac App Store launch in early 2011, a new age in Mac development began. Look for many of the cool apps for iPhone and iPad coming to an iMac or MacBook Pro near you! Beginning OS X Lion Apps Development explains how to develop OS X Lion-based apps and publish them in the Mac App Store. It begins with the basics of Objective-C and Cocoa, and then moves through all the topics necessary to build and publish your first successful Mac apps! Get started with Objective-C and Xcode Build your first complete apps that integrate well with Mac OS X Publish your apps on the Mac App Store If you're new to Mac or new to iPhone or iPad apps development, and looking to develop apps for the Macbook Pro or Mac desktop, this book is for you!
Rob Warner is a senior technical staff member for Availity, LLC, based in Jacksonville, Florida, where he works with various teams and technologies to deliver solutions in the healthcare sector. He co-authored emThe Definitive Guide to SWT and JFace/em (Apress, 2004), and he blogs at a href="http://www.Grailbox.com"Grailbox.com/a. He earned his bachelor s degree in English from Brigham Young University in Provo, Utah. He lives in Jacksonville with his wife, Sherry, and their five children.
Title page 2
Copyright page 3
Contents at a Glance 5
Table of contents 6
About the Authors 11
Acknowledgments 13
Introduction 15
The Premise 15
The Audience 15
How This Book Is Organized 16
Source Code and Errata 16
How to Contact Us 16
Chapter 1 Starting to Build a Graphing Calculator 17
Using the Xcode Development Tools 18
Obtaining Xcode 18
Installing Xcode 19
Installing from the Web Download 19
Installing from the App Store 25
Understanding Xcode 28
The Editor Area and the Jump Bar 32
The Navigator Area and the Navigator Selector Bar 33
The Filter Bar 33
The Debug Area and the Debug Bar 33
The Inspector Pane, the Inspector Selector Bar, and the Library Pane 34
The View Selector 34
The Editor Selector 34
The Toolbar 34
Creating a Project 35
Understanding the Major Components 39
The Project and Targets 40
The Application Architecture 43
The Source Code and Resources 44
The About Dialog 50
Summary 51
Chapter 2 Laying Out the User Interface 52
Creating the Split View 53
Creating the Horizontal NSSplitView 54
Creating the Vertical NSSplitView 58
Creating the Equation Entry Panel 60
Using NSViewController 61
Laying Out the Custom Equation Entry Component 63
A Primer on Automatic Reference Counting 64
Using IBOutlet 65
Hooking Up the New Component to the Application 66
Resizing the Views Automatically 68
Further Customizing the Components 71
Creating the Graph Panel 72
Adding the Horizontal Slider 73
Adding the Table View 75
Adding the Graph Panel to the Application 76
Creating the Table of Recently Used Equations 77
Creating the Data Source 82
Displaying the Data 84
Adding a Toolbar 86
Summary 87
Chapter 3 Handling User Input 88
Resizing the Views 89
Resizing the Window 89
Constraining the Split View Sizes 91
Constraining the Minimum Size 91
Constraining the Maximum Size 92
Constraining the Window Size 94
Collapsing a Subview 98
Handling Button Presses 100
The Model-View-Controller Pattern 100
Using IBAction 100
Creating the Model: Equation 102
Communication Among Controllers 105
Validating Fields 106
Validating After Submitting 106
Writing a Validator 107
Unit Testing 109
Displaying an Alert Window 114
A Better Way: Real-Time Validation 115
Adding a Feedback Label 115
Catching Text Change Notifications 116
Wiring It All Together in Interface Builder 117
Graphing the Data 119
Calculating and Caching the Data 121
Talking to the Table: Outlets and Delegates 123
Changing the Interval in the Domain 127
Using Key-Value Coding 128
Binding the Value to the Slider 129
Summary 132
Chapter 4 Pimp My UI 133
Creating a Graph View 134
Creating a Custom View 134
Linking the New Custom View to the Controller 135
Plotting the Graph 138
Finding the Boundaries 138
Painting the Background 139
Plotting the Graph 139
Toggling Between Text and Graph 143
Adding the Tab View 144
Adding the Views to the Tabs 146
Switching the Controller to the Tab View 148
Creating a Smarter Equation Editor 150
Adding Attributes to the Equation Entry Field 151
Creating the Tokens 152
Parsing the Equation 154
Implementing the Method to Tokenize the Equation 156
Converting a String to a Token 157
Recognizing Numbers 159
Grouping Spaces 160
Recognizing Trigonometric Functions and Symbols 162
Recognizing Exponents 164
Creating a Stack for Parenthesis Matching 169
Creating the Stack Class 170
Testing the Stack Class 171
Balancing Parentheses Using Stack 172
Detecting Multiple Decimal Points 175
Testing the Tokenizer 178
Testing Simple Equations 179
Testing Exponents 179
Testing Whitespace 180
Testing Trigonometric Functions and Symbols 181
Testing Parenthesis Matching 182
Testing Invalid Cases 183
Showing the Equation 183
Setting the Colors 184
Colorizing the Equation 185
Superscripting Exponents 187
Updating the Validator 189
Updating the Evaluator 191
Summary 196
Chapter 5 User Preferences and the File System 197
Managing User Preferences 198
Understanding NSUserDefaults 200
Persisting Default Values 200
Understanding Search Domains 200
Resetting Defaults to Reasonable Values 202
Setting the Font for the Equation Entry Field 202
Responding to Font Changes 205
Applying the New Font 207
Setting the Line Color 210
Understanding Color Selection Modes 211
Displaying the Color Selection Panel 212
Responding to Color Changes 213
Creating a Custom Preferences Panel 215
Creating the Preferences View 216
Displaying the Preferences Panel 218
Using the Custom Preference 221
Using the Local File System 222
Browsing the File System 223
Enumerating Through the Mounted Volumes 223
Enumerating Through a Folder 223
Writing to the File System 224
Reading from the File System 225
Exporting Graphs as Images 225
Creating an Image from a View 225
Adding the Export Graph Menu Item 227
Summary 230
Chapter 6 Using Core Data 231
Stepping Up to Core Data 232
Adding Core Data to the Graphique Application 232
Adding the Core Data Framework 232
Creating a Data Model 235
Designing the Data Model 236
Initialize the Managed Object Context 243
Storing Recently Used Equations 246
Querying the Persistent Store to Get the Group Entity 248
Creating the Equation Managed Object and Adding It to the Persistent Store 249
Committing 249
Putting Everything Together into the Final Method 250
Reloading Recently Used Equations 251
Tightening the Control over the Outline View 257
Using NSOutlineViewDelegate 257
Handling Equations Selection 258
Preventing Double-Clicks from Editing 259
Summary 260
Chapter 7 Integrating Graphique into the Mac OS X Desktop 261
Dealing with Graphique XML Files 261
Producing a Graphique File 261
Creating a Save As Method 262
Grabbing the Current Equation 263
Prompting the User to Select a Destination File 264
Producing the Graphique File 264
Loading a Graphique File into the Application 266
Registering File Types with Lion 267
Defining the New UTI for the .graphique Extension 267
Registering Graphique as an Editor for Graphique Files 269
Handling Graphique Equation Files 271
Using Quick Look to Generate Previews and Thumbnails 273
Creating the Quick Look Plug-in 275
Implementing the Preview 278
Testing the Plug-in 281
Implementing the Thumbnail 285
Distributing the Quick Look Plug-in with the Graphique Application 289
Copying the Plug-in 290
Adding an Item to the Menu Bar 291
Understanding NSStatusBar and NSStatusItem 291
Adding a Status Item to Graphique 292
Building the Status Item Menu 293
Integrating the Status Item 296
Heeding Apple’s Advice Regarding Menu Bar Icons 298
Adding the Preference to the Interface 299
Summary 302
Chapter 8 Creating Help 303
A Word on Help 304
Understanding Help Books 304
Creating Your Help Book 305
Creating the Directory Structure 305
Creating the Main Help File 306
Creating the Rest of Your Help Files 308
Creating the Help Index 311
Setting Up Your Plist File 311
Importing Your Help Book into Your Xcode Project 314
Updating Your Application’s Plist File 315
Viewing the Help 316
Bookmarking a Page 317
Performing a Search 318
Summary 320
Chapter 9 Printing 321
Printing the Graph View 321
Printing the Graph 321
Implementing the Method to Print 324
Wiring the Method to the Menu 324
Sizing the Printed View 328
Drawing for the Printer 330
Spanning to Multiple Pages 332
Calculating the Number of Pages 333
Determining the Page Size 334
Drawing the Page 335
Summary 336
Chapter 10 Submitting to the Mac App Store 337
Reviewing the Guidelines 337
Finishing the App 338
Terminating Graphique When Its Window Closes 338
Adding the Icon 338
Reviewing the Property List File 341
Cleaning Up the Menu 342
Finishing the About Box 342
Centering the Preferences Panel 343
Removing Unused Menu Items 344
Adding a Menu Item for Full-Screen 344
Setting the Initial Window Size and Location 345
Signing the Code 348
Using the Developer Certificate Utility 348
Registering Your App IDs 349
Installing Apple’s Certificate 351
Creating the Provisioning Profile 358
Configuring the Build to Sign the Code 362
Sandboxing the App 363
What Is Sandboxing? 363
What Are Entitlements? 364
Establishing the Sandbox 365
Building for Release 366
Setting Up Your Web Site 367
Using the Artwork 368
Creating the Web Site 368
Submitting the App 370
Setting Up Your iTunes Connect Account 370
Uploading Your Application 371
Setting the App Name 371
Selecting Availability and Pricing 371
Entering Additional Information 371
Metadata 372
Rating 373
EULA 373
Uploads 373
Performing the Upload 374
Summary 377
Index 378
Erscheint lt. Verlag | 28.1.2012 |
---|---|
Zusatzinfo | XV, 392 p. |
Verlagsort | Berkeley |
Sprache | englisch |
Themenwelt | Informatik ► Betriebssysteme / Server ► Macintosh / Mac OS X |
Informatik ► Programmiersprachen / -werkzeuge ► Mac / Cocoa Programmierung | |
Informatik ► Software Entwicklung ► Mobile- / App-Entwicklung | |
ISBN-10 | 1-4302-3721-X / 143023721X |
ISBN-13 | 978-1-4302-3721-1 / 9781430237211 |
Haben Sie eine Frage zum Produkt? |
Größe: 21,7 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: PDF (Portable Document Format)
Mit einem festen Seitenlayout eignet sich die PDF besonders für Fachbücher mit Spalten, Tabellen und Abbildungen. Eine PDF kann auf fast allen Geräten angezeigt werden, ist aber für kleine Displays (Smartphone, eReader) nur eingeschränkt geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.
Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich