Piper | Learn Xcode Tools for Mac OS X and iPhone Development | E-Book | www2.sack.de
E-Book

E-Book, Englisch, 450 Seiten

Piper Learn Xcode Tools for Mac OS X and iPhone Development


1. ed
ISBN: 978-1-4302-7220-5
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark

E-Book, Englisch, 450 Seiten

ISBN: 978-1-4302-7220-5
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark



This book will give you a thorough grounding in the principal and supporting tools and technologies that make up the Xcode developer tools suite. Apple has provided a comprehensive collection of developer tools, and this is the first book to examine the complete Apple programming environment for both Mac OS X and iPhone. Comprehensive coverage of all the Xcode developer tools Additional coverage of useful third-party development tools Not just a survey of features, but a serious examination of the complete development process for Mac OS X and iPhone applications

Ian Piper runs a small information management consultancy business in the U.K., advising government and commercial clients on strategies for development of information management systems. His company also builds bespoke Mac-based software and CMS-based websites for a wide range of clients. In previous lives, Piper headed up technology and knowledge management departments in public and private sector organisations. He laid hands on his first Mac in 1986, and aside from a couple of falls from grace in the dark days of the mid-1990s, has been an Apple technology stalwart ever since. Piper lives, and whenever possible, works, in a small market town in Warwickshire, U.K. When not working, his time is spent climbing and photographing mountains and raising two young children.

Piper Learn Xcode Tools for Mac OS X and iPhone Development jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


1;Contents at a Glance;5
2;Table of contents ;6
3;About the Author;11
4;About the Technical Reviewer;12
5;Acknowledgments;13
6;Preface;14
7;Chapter 1 Introducing Xcode Tools for Mac OS X and the iPhone;15
7.1;Software Development Choices for the Mac Programmer;15
7.2;Why You Should Develop Using Xcode Tools;16
7.3;Xcode, Cocoa, and Objective-C;17
7.4;The Apple Xcode Developer Tools Family;18
7.5;What You’ll Find in This Book;19
7.5.1;Part 1;19
7.5.2;Part 2;19
7.5.3;Part 3;19
7.6;What You Won’t Find in This Book;20
7.7;Summary;20
8;Chapter 2 Introducing the Xcode Workspace;22
8.1;Getting and Installing Xcode Developer Tools;22
8.1.1;Getting Xcode;22
8.1.2;Installing Xcode;23
8.1.2.1;Installation Location;23
8.1.2.2;Custom Installation Options;24
8.1.2.3;What the Installation Added;25
8.1.3;Removing Your Xcode Developer Tools Installation;25
8.2;Getting to Know the Xcode Workspace;25
8.2.1;The Welcome to Xcode Window;26
8.2.2;The Xcode Clean Screen View;26
8.2.3;Starting a New Project;27
8.3;The Xcode Workspace Working Environment;30
8.3.1;Groups & Files List;30
8.3.1.1;Find Results;31
8.3.1.2;Bookmarks;31
8.3.1.3;SCM;31
8.3.1.4;Implementation Files and NIB Files;31
8.3.2;Detail View;32
8.3.3;Editor View;33
8.3.4;Toolbar;34
8.3.5;Favorites Bar;38
8.3.6;Status Bar;38
8.4;It’s All Gone Horribly Wrong;39
8.5;Xcode Workspace Preferences;39
8.5.1;General;39
8.5.2;Code Sense;40
8.5.3;Building;40
8.5.4;Distributed Builds;40
8.5.5;Debugging;41
8.5.6;Key Bindings;41
8.5.7;Text Editing, Fonts & Colors, and Indentation;41
8.5.8;File Types;41
8.5.9;Source Trees;41
8.5.10;SCM;41
8.5.11;Documentation;42
8.6;Summary;43
9;Chapter 3 Interface Builder;44
9.1;Professional User Interface Design—and More—for Your Xcode Projects;44
9.2;Getting to Know the Interface Builder Environment;45
9.2.1;Adding Some Controls to Your User Interface;46
9.2.2;Positioning and Aligning Controls and Windows;47
9.2.3;Autosizing Controls;49
9.2.4;The Library in More Depth;54
9.2.4.1;Library Window Layout;54
9.2.4.2;Customizing the Layout;54
9.3;Connecting the Pieces;55
9.3.1;The Documents Window;55
9.3.2;The Inevitable Hello World Program;56
9.3.3;Incremental Development—Adding Features to Your HelloWorld Program;62
9.4;Creating a Document-Based Application;64
9.4.1;Implementing File Saving and Reading;66
9.4.2;A Little Polish;70
9.5;Summary;72
10;Chapter 4 Core iPhone Tools;73
10.1;First Things First: What You Need to Develop iPhone Software;73
10.2;Getting and Installing the SDK;74
10.3;Writing a Simple iPhone Application;75
10.3.1;Just One More Thing;88
10.4;Summary;89
11;Chapter 5 Frameworks in Xcode;90
11.1;A Short Tour of the Frameworks;90
11.1.1;What Are the Frameworks?;91
11.1.2;Location of the Frameworks;91
11.1.3;Other Frameworks;92
11.1.4;Where to Look for More Information;92
11.2;Using Frameworks in Applications;92
11.2.1;The WebKit Framework—Create Your Own Web Browser;92
11.2.2;The Core Data Framework—Building a Simple Database Application;97
11.2.2.1;A Potential Gotcha;107
11.2.2.2;Choosing a Data Store;107
11.2.3;The ScreenSaver Framework;108
11.3;Summary;118
12;Chapter 6 Model-View-Controller in Xcode;119
12.1;Understanding MVC;119
12.2;The Simplest Example;120
12.3;A More Complex Example;122
12.4;Summary;127
13;Chapter 7 Debugging Your Xcode Projects;128
13.1;The Debugger and Console Views;128
13.2;Creating a Project to Debug;129
13.3;Running and Debugging the Project;133
13.3.1;Syntax Errors;133
13.3.2;Debugging with Breakpoints;134
13.3.3;Using NSLog to Track Changing Properties;140
13.3.4;Checking Syntax in the Documentation;140
13.4;Exploring the Debugger;142
13.4.1;Debugging Features in the Code Editor;143
13.4.2;The Main Debugger Window;143
13.4.3;The Mini Debugger;145
13.5;Summary;147
14;Chapter 8 Xcode Documentation;148
14.1;Overview of Documentation Resources for Xcode;148
14.2;Quick Help;148
14.3;ADC Documentation;150
14.3.1;Cocoa Fundamentals Guide;151
14.3.2;Xcode Workflow and Cocoa Application Tutorials;152
14.3.3;Recommended Reading for Xcode Developers;152
14.3.4;Getting Around the ADC Documentation;153
14.4;Other Resources on the Apple Developer Site;156
14.5;Third-Party Online Resources;156
14.6;Other Sources of Information;157
14.6.1;Keeping a High Signal-to-Noise Ratio;157
14.6.2;Mailing Lists and Web Forums;158
14.6.3;RSS Feeds;158
14.7;Creating Your Own Developer Documentation;158
14.7.1;Downloading and Installing Doxygen;159
14.7.2;Overview of Documentation Creation with Doxygen;159
14.7.3;Commenting the Code;159
14.7.4;Creating Documentation for TemperatureConverter;161
14.7.5;Converting the HTML into a Docset;163
14.7.6;Advanced Doxygen Topics;166
14.8;Summary;167
15;Chapter 9 Developing an Application;168
15.1;Defining the Problem;168
15.2;Designing the Application;169
15.2.1;Sketching Out the Problem Space;170
15.2.2;The Data Model;171
15.2.3;Creating the Project;173
15.2.4;Choosing the Data Store Format;174
15.2.5;Building the User Interfaces;175
15.2.5.1;The Core Data Entity Interface Assistant;175
15.2.5.2;Developing the User Interface;177
15.2.5.3;Tidying Up and Adding the Extra Buttons;181
15.2.5.4;Creating the Secondary Windows;183
15.2.5.5;Configuring the Search Capabilities;185
15.2.6;Running the Application;186
15.2.7;What to Do if It Doesn’t Work;187
15.2.8;Making Improvements;187
15.2.8.1;Displaying the Full Name in One Field;187
15.2.8.2;Displaying the Total Amount Earned Across the Journal Entries;191
15.2.9;Where to Take the Application from Here;192
15.3;Looking Back and Looking Forward;193
16;Chapter 10 Source-Code Management with Subversion;195
16.1;Introduction to Subversion;196
16.1.1;The Subversion Work Cycle;197
16.1.2;One Repository or Many?;198
16.1.2.1;Using a Single Repository;198
16.1.2.2;Using Individual Repositories;199
16.1.3;Where to Get More Information;199
16.2;Installing a Local Subversion Server;200
16.2.1;Creating a Repository;200
16.2.2;Configuring the Repository in Xcode;203
16.2.3;Populating the Repository with Projects;204
16.2.4;Getting a Working Copy out of the Repository;206
16.2.5;Making Changes and Committing Code;208
16.2.6;Comparing Revisions and Rolling Back;209
16.2.7;Handling Version Conflicts;210
16.3;Using an Online Subversion Server;212
16.4;Summary;213
17;Chapter 11 Unit Testing in Xcode;215
17.1;Introducing Unit Testing;215
17.2;Unit Testing in Practice;217
17.2.1;Setting Up a Project for Unit Testing;218
17.2.2;Writing Unit Tests;220
17.2.3;Running Your First Unit Test;221
17.3;What Should You Test?;225
17.3.1;Rightness;225
17.3.2;Wrong Input;225
17.3.3;Boundary Conditions;226
17.3.4;Other Factors to Test;227
17.4;Making Your Test Suite More Efficient;228
17.5;Where to Go Next;229
17.5.1;Dependent versus Independent Unit Testing;230
17.6;Summary;232
18;Chapter 12 Monitoring, Analysis, and Performance Tools;233
18.1;Instruments;233
18.1.1;Tracking Down a Memory Leak;233
18.1.1.1;Create the Application;234
18.1.1.2;Building the Interface;235
18.1.1.3;Monitoring the Application in Instruments;236
18.1.1.4;Analyzing the Memory Leaks;238
18.1.2;Tracking File Activity;240
18.1.3;Activity Monitor;242
18.1.4;What Else Can You Do with Instruments?;243
18.2;Shark;244
18.3;BigTop;248
18.4;Spin Control;250
18.5;Summary;252
19;Chapter 13 Support Tools for the Busy Developer;254
19.1;Icon Composer;254
19.1.1;Creating the Basic Image for an Application Icon;255
19.1.2;Creating the Icon in Icon Composer;256
19.2;Pixie;261
19.3;FileMerge;263
19.4;Property List Editor;266
19.5;Adding Help Functionality;268
19.5.1;Help in Xcode-based Applications;268
19.5.2;Creating the XHTML Pages;268
19.5.3;Adding Meta Tags to the Welcome Page;269
19.5.4;Running the Help Indexer;270
19.5.5;Adding and Configuring the Help Files Within the Xcode Project;271
19.5.6;Testing the New Help Function;272
19.5.7;Adding a Help Button Linked to a Help Page;273
19.6;Summary;276
20;Chapter 14 Usability and Accessibility;277
20.1;Overview of Usability;278
20.1.1;Consistency;278
20.1.2;Affordance;279
20.1.3;Mental Model;279
20.2;Usability Considerations for Mac OS X;280
20.2.1;Program Design Considerations for Good Usability;280
20.2.2;Autosizing and Auto-Positioning;281
20.2.3;Consistent Visual Design;281
20.2.4;Affordance Revisited;282
20.2.5;Tab Order;284
20.3;Special Usability Considerations for iPhone Program Design;285
20.3.1;Form Factor;285
20.3.2;Only One Window;285
20.3.3;One Only Application;285
20.3.4;Direct-Manipulation Interface;285
20.3.5;Gesture-Driven Interface;286
20.4;Accessibility in Mac OS X;286
20.4.1;Accessibility Considerations;287
20.4.1.1;Display Factors;287
20.4.1.2;Keyboard Operation;287
20.4.2;Testing Accessibility in Your Software;288
20.4.3;VoiceOver;291
20.5;Summary;294
21;Chapter 15 Packaging and Distribution;295
21.1;Build Configurations—From Debug to Release;295
21.2;Using a Disk Image;296
21.3;PackageMaker;301
21.3.1;What’s in Store;301
21.3.2;Creating an Installation Package with PackageMaker;301
21.3.2.1;Starting PackageMaker;301
21.3.2.2;Adding Content;302
21.3.2.3;Package Content Configuration;303
21.3.2.4;Package Content Ownership;304
21.3.2.5;Offering Choices for Custom Installations;305
21.3.2.6;Package-Level Configuration;306
21.3.2.7;Polishing the Interface;308
21.3.3;Building the Package;310
21.3.4;Testing the Installation Package;310
21.4;Distributing your iPhone Application;311
21.4.1;Summary;319
21.4.2;Preparation Steps;312
21.4.2.1;Information Gathering;313
21.4.2.2;Registration and Information Generation;315
21.4.3;Checking That It All Works;317
21.4.4;Ad Hoc Distribution;318
22;Index;320



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.