: Ben Smith, Danton Chin, Leon Palm, Dave Smith, Charles Smith, Claus Hoefele, Saul Mora, Arne de Vrie
: More iPhone Cool Projects Cool Developers Reveal the Details of their Cooler Apps
: Apress
: 9781430229230
: 1
: CHF 31.30
:
: Allgemeines, Lexika
: English
: 360
: Wasserzeichen/DRM
: PC/MAC/eReader/Tablet
: PDF

Everyone is developing iPhone applications, and it's clear why. The iPhone is the coolest mobile device available, and the App Store makes it simple to get an application out into the unstoppable iPhone app market. With hundreds of thousands of app developers entering the game, it's crucial to learn from those who have actually succeeded. This book shows you how some of the most innovative and creative iPhone application developers have developed cool, best-selling apps.

Not only does every successful application have a story, but behind every great app is excellent code. In this book, you'll see the code and learn how to use it to make your own cool applications. You'll learn everything from importing 3D art assets into your iPhone game to using Cocos2d for iPhone and iPad. This book shares the secrets of the coolest iPhone apps being built today by the best iPhone developers-invaluable knowledge for anyone who wants to create the app that everyone is talking about.



Ben Britten Smith has been writing software on Apple platforms for 15 years. Most notably, he was given an Academy Award for technical achievement for his feature film work with Mac-based suspended camera control systems. Lately, he has switched his efforts from the big screen to the small screen. His first iPhone game, SnowDude, was published to the App Store a few months after the software development kit became available. Since then, he has written a dozen apps for various clients, including the games Snowferno, the award winning Mole Quest for the Terracore Gem, and the Gamebook Adventures series. Ben lives in Melbourne, Australia with his wife, Leonie, and their pet bunnies.
Title Page1
Copyright Page2
Contents at a Glance4
Table of Contents5
Preface10
Acknowlegments11
Introduction12
Who This Book Is For12
What s in the Book13
Danton Chin14
Chapter 1 Using Concurrency to Improve the Responsiveness of iPhoneand iPad Applications16
Prepare for Concurrency16
Non-Responsive User Interfaces19
Building the Interestingness User Interface20
Adding A JSON Parsing Framework to the InterestingnessApp23
Composing a RESTful Request for a List of Interestingness Images23
Using the RESTful Request and the JSON Parser to Parse the Response25
Implementing the UITableViewDataSource Protocol Methods to Display the Results27
Concurrency Landscape29
Considerations When Using Concurrent Solutions30
Concurrency with NSThread and NSObject32
Concurrency with Operation Objects37
NSOperationQueue38
NSOperation and NSInvocationOperation39
NSInvocationOperation Quick and Easy40
Subclassing NSOperation40
Building HelloOperationQueues a Toy Application41
Building the User Interface for HelloOperationQueues43
Creating Work Units by Subclassing NSOperation45
Implementing HelloOperationQueues46
Changing the Interestingness App to Use NSOperationQueues50
Implementing the NSInvocationOperation to Fetch the List of interestingness images52
Implementing FetchImageOperation a Subclass of NSOperation53
Implementing the getImageForURL: and storeImageForURL:Methods55
Concurrency with Operation Objects and Blocks58
Blocks59
Adding the PLBlocks Framework61
Changing the Interestingness Application to Use NSOperationQueues and Blocks63
Converting the Interestingness App to Use an Official Version of Blocks and NSBlockOperation from Apple66
Summary66
Resources67
Apple and Apple-related News67
Apple Documentation67
Blocks and Grand Central Dispatch68
General69
JSON69
POSIX Threads69
Claus Höfele70
Chapter 2 Your Own Content Pipeline: Importing 3D Art Assets into Your iPhoneGame72
Starting an iPhone Game72
Why Write Your Own Tools?73
Creating a Flexible Content Pipeline74
The Tools Problem74
Data Exchange vs. In-Game File Formats76
Outline of the Example Code77
Exporting 3D Models78
Reading FBX files79
Traversing the Scene Contents82
Distinguishing between Different Types of Scene Nodes83
OpenGL Triangle Data84
Converting FBX Models into Triangle Data86
Converting Triangle Data into an In-Game Format89
Handling Textures92
Image Compression vs. Texture Compression92
Imagination s PVRTC Format93
Reading PNG Images95
Converting Images into the PVRTC Format97
Rendering the Converted Data on the iPhone99
Running the Converter Tool99
Creating the iPhone Project99
Summary100
Ben Kazez102
Chapter 3 How Flight Track Uses External Data Providers to Power This Best-SellingTravel App104
Choosing a Data Source105
API Design106
Data Coverage and Accuracy107
Economics108
Attribution108
Subscription108
Transactional108
Revenue Share109
Trials109
Source-Driven User Interface Design109
Challenges110
Techniques from FlightTrack111
Design Patterns for Data Source Consumption112
Direct-Client Consumption112
Server-Intermediary Consumption113
Data-Driven Cocoa App Architecture114
Data Model Design114
Connecting Data to UI115
Delegates115
Notifications116
Setter Propagation117
Choosing an Approach117
Release!118
FlightTrack Today118
Saul Mora120
Chapter 4 Write Better Code and Save Time with Unit Testing122
Mock Objects133
Testing Your Core Data Models140
Summary147
Leon Palm148
Chapter 5 Fun with Computer Vision:Face Recognition with OpenCV on the iPhone150
What Is Computer Vision?153
Why Do Computer Vision on an iPhone?154
Your Project: Creating a Face Detector155
Setting Up OpenCV155
Setting Up XCode158
Adding Image Conversion Functions160
Creating a Simple GUI162
Loading Images from the Photo Library164
Loading the Haar