Details

iOS 6 Programming Pushing the Limits


iOS 6 Programming Pushing the Limits

Advanced Application Development for Apple iPhone, iPad and iPod Touch
Pushing the Limits 1. Aufl.

von: Rob Napier, Mugunth Kumar

26,99 €

Verlag: Wiley
Format: EPUB
Veröffentl.: 20.11.2012
ISBN/EAN: 9781118449974
Sprache: englisch
Anzahl Seiten: 552

DRM-geschütztes eBook, Sie benötigen z.B. Adobe Digital Editions und eine Adobe ID zum Lesen.

Beschreibungen

<p><b>Learn to build extraordinary apps for iPhone, iPad, and iPod touch</b></p> <p>iOS is the hottest development platform around, and iOS 6 adds a new and deeper dimension to explore. This guide offers serious information for serious programmers who know the basics and are ready to dive into the advanced features of iOS. You'll learn to create killer apps for the iPad, iPhone, and iPod touch, including how to maximize performance and make more money from your apps with in-app purchases. Topics covered include security, multitasking, running on multiple platforms, blocks and functional programming, advanced text layout, and much more.</p> <ul> <li>App development for iPhones and iPads is a lucrative and exciting venture; books on this topic are steady bestsellers </li> <li>This advanced guide helps experienced developers take full advantage of the latest platform upgrade, iOS 6 </li> <li>Provides in-depth background on maximizing your apps with Apple's iPhone SDK 6.0, including the major new APIs and building applications for the new iPad </li> <li>Covers keeping control of multitasking, increasing income with in-app purchases, key value observing with Cocoa, running on multiple platforms, advanced text layout, building a Core foundation, and more</li> </ul> <p><i>iOS 6 Programming: Pushing the Limits</i> gives experienced mobile developers a wealth of knowledge for creating outstanding iPhone and iPad apps on the latest platform.</p>
<b>Introduction 1</b> <p>Who This Book Is For  1</p> <p>What This Book Covers 1</p> <p>What Is New in This Edition 1</p> <p>How This Book Is Structured 2</p> <p>What You Need to Use This Book 5</p> <p>Finding Apple Documentation 5</p> <p>Source Code 5</p> <p>Errata 6</p> <p><b>Part I: What’s New? 7</b></p> <p><b>Chapter 1 The Brand New Stuff 9</b></p> <p>What’s New 9</p> <p>Summary 13</p> <p>Further Reading 14</p> <p><b>Chapter 2 Getting Comfortable with Xcode 4 and the LLVM Compiler 15</b></p> <p>Getting to Know the User Interface 16</p> <p>All in One Window 18</p> <p>Navigating the Navigators 19</p> <p>Help from Your Assistant 21</p> <p>Integrated Interface Builder 21</p> <p>LLVM Compiler: A Tryst with the Brain 23</p> <p>What’s New in LLVM 4 23</p> <p>Git Your Versions Here 27</p> <p>Schemes 29</p> <p>Build Configurations You Can Comment 31</p> <p>Migrating Your Code to Objective-C ARC 32</p> <p>Xcode 4 Organizer 34</p> <p>Summary 35</p> <p>Further Reading 35</p> <p><b>Part II: Getting the Most Out of Everyday Tools 37</b></p> <p><b>Chapter 3 Everyday Objective-C 39</b></p> <p>Naming Conventions 39</p> <p>Automatic Reference Counting 41</p> <p>Properties 44</p> <p>Accessors 47</p> <p>Categories and Extensions48</p> <p>Formal and Informal Protocols 52</p> <p>Summary 54</p> <p>Further Reading54</p> <p><b>Chapter 4 Hold On Loosely: Cocoa Design Patterns 55</b></p> <p>Understanding Model-View-Controller    55</p> <p>Understanding Delegates and Data Sources   58</p> <p>Working with the Command Pattern 59</p> <p>Working with the Observer Pattern 67</p> <p>Working with the Singleton Pattern 70</p> <p>Summary 72</p> <p>Further Reading 73</p> <p><b>Chapter 5 Memory Management with Objective-C ARC 75</b></p> <p>Introduction to Objective-C ARC 75</p> <p>What Is ARC? 76</p> <p>Common ARC Migration Errors 83</p> <p>Summary 86</p> <p>Further Reading 86</p> <p><b>Chapter 6 Getting Table Views Right   89</b></p> <p>UITable View Class Hierarchy 89</p> <p>Understanding Table Views 90</p> <p>Summary 102</p> <p>Further Reading 103</p> <p><b>Chapter 7 Great at Any Angle: Collection Views and Auto Layout 105</b></p> <p>Collection Views 105</p> <p>Cocoa Auto Layout 116</p> <p>Summary 123</p> <p>Further Reading 123</p> <p><b>Chapter 8 Better Drawing 125</b></p> <p>iOS’s Many Drawing Systems 125</p> <p>UIKit and the View Drawing Cycle 126</p> <p>View Drawing Versus View Layout 128</p> <p>Custom View Drawing 129</p> <p>Optimizing UIView Drawing 144</p> <p>CGLayer 148</p> <p>Summary 150</p> <p>Further Reading 150</p> <p><b>Chapter 9 Layers Like an Onion: Core Animation  151</b></p> <p>View Animations 151</p> <p>Managing User Interaction 153</p> <p>Drawing with Layers 154</p> <p>Moving Things Around 158</p> <p>Into the Third Dimension 164</p> <p>Decorating Your Layers 168</p> <p>Auto-Animate with Actions 170</p> <p>Animating Custom Properties 171</p> <p>Core Animation and Threads 173</p> <p>Summary 173</p> <p>Further Reading 173</p> <p><b>Chapter 10 Tackling Those Pesky Errors 175</b></p> <p>Error-Handling Patterns 175</p> <p>Assertions 176</p> <p>Exceptions 178</p> <p>Catching and Reporting Crashes 179</p> <p>Errors and NSError 180</p> <p>Error Handler Blocks 182</p> <p>Logs 183</p> <p>Summary 185</p> <p>Further Reading 186</p> <p><b>Chapter 11 Location Services: Know Where You Are 187</b></p> <p>Core Location Framework 187</p> <p>Background Location 191</p> <p>Location Simulation 194</p> <p>Keeping an Eye on the Battery 195</p> <p>Summary 195</p> <p>Further Reading 195</p> <p><b>Part III: The Right Tool for the Job 197</b></p> <p><b>Chapter 12 Common UI Paradigms Using Table Views 199</b></p> <p>Pull-To-Refresh 199</p> <p>Infinite Scrolling 202</p> <p>Inline Editing and Keyboard 204</p> <p>Animating a UITableView  206</p> <p>Practical Implementations of Table View Animations 208</p> <p>Summary 211</p> <p>Further Reading 212</p> <p><b>Chapter 13 Controlling Multitasking 213</b></p> <p>Best Practices for Backgrounding: With Great Power</p> <p>Comes Great Responsibility 213</p> <p>When We Left Our Heroes: State Restoration 215</p> <p>Introduction to Multitasking and Run Loops 223</p> <p>Developing Operation-Centric Multitasking 224</p> <p>Multitasking with Grand Central Dispatch  229</p> <p>Summary 235</p> <p>Further Reading 236</p> <p><b>Chapter 14 REST for the Weary 237</b></p> <p>The REST Philosophy 238</p> <p>Choosing Your Data Exchange Format 238</p> <p>A Hypothetical Web Service 241</p> <p>Important Reminders  242</p> <p>RESTfulEngine Architecture (iHotelApp Sample Code) 243</p> <p>Summary 258</p> <p>Further Reading 258</p> <p><b>Chapter 15 Batten the Hatches with Security Services 261</b></p> <p>Understanding the iOS Sandbox 261</p> <p>Securing Network Communications 263</p> <p>Employing File Protection 270</p> <p>Using Keychains 272</p> <p>Using Encryption 274</p> <p>Summary 287</p> <p>Further Reading 287</p> <p><b>Chapter 16 Running on Multiple iPlatforms and iDevices 289</b></p> <p>Developing for Multiple Platforms 290</p> <p>Detecting Device Capabilities 294</p> <p>In App Email and SMS 300</p> <p>Checking Multitasking Awareness 300</p> <p>Supporting the iPhone 5 301</p> <p>UIRequiredDeviceCapabilities 303</p> <p>Summary 304</p> <p>Further Reading 304</p> <p><b>Chapter 17 Internationalization and Localization 305</b></p> <p>What Is Localization? 305</p> <p>Localizing Strings 306</p> <p>Auditing for Nonlocalized Strings 307</p> <p>Formatting Numbers and Dates 309</p> <p>Nib Files and Base Internationalization 312</p> <p>Localizing Complex Strings 312</p> <p>Summary 315</p> <p>Further Reading 315</p> <p><b>Chapter 18 Selling Past the Sale with In App Purchases 317</b></p> <p>Before You Start 317</p> <p>In App Purchase Products 317</p> <p>Setting Up Products on iTunes Connect 320</p> <p>In App Purchase Implementation 326</p> <p>Introduction to MKStoreKit 327</p> <p>Making the Purchase 331</p> <p>Downloading Hosted Content 332</p> <p>Testing Your Code  332</p> <p>Troubleshooting 333</p> <p>Summary 334</p> <p>Further Reading 334</p> <p><b>Chapter 19 Debugging 335</b></p> <p>LLDB 335</p> <p>Debugging with LLDB 335</p> <p>Breakpoints 338</p> <p>Watchpoints 343</p> <p>The LLDB Console 344</p> <p>NSZombieEnabled Flag 348</p> <p>Different Types of Crashes 348</p> <p>Collecting Crash Reports 352</p> <p>Third-Party Crash Reporting Services 353</p> <p>Summary 354</p> <p>Further Reading 354</p> <p><b>Chapter 20 Performance Tuning Until It Flies 357</b></p> <p>The Performance Mindset 357</p> <p>Welcome to Instruments 358</p> <p>Finding Memory Problems 360</p> <p>Finding CPU Problems 364</p> <p>Drawing Performance 368</p> <p>Optimizing Disk and Network Access 371</p> <p>Summary 371</p> <p>Further Reading 372</p> <p><b>Part IV: Pushing the Limits 373</b></p> <p><b>Chapter 21 Storyboards and Custom Transitions 375</b></p> <p>Getting Started with Storyboards 375</p> <p>Custom Transitions 380</p> <p>Customizing Your Views Using UIAppearance Protocol 382</p> <p>Summary  383</p> <p>Further Reading 383</p> <p><b>Chapter 22 Cocoa’s Biggest Trick: Key-Value Coding and Observing 385</b></p> <p>Key-Value Coding  385</p> <p>Key-Value Observing 395</p> <p>KVO Tradeoffs 399</p> <p>Summary  400</p> <p>Further Reading 401</p> <p><b>Chapter 23 Think Different: Blocks and Functional Programming 403</b></p> <p>What Is a Block? 403</p> <p>Declaring a Block 406</p> <p>Implementing a Block 408</p> <p>Blocks and Concurrency 410</p> <p>Block-Based Cocoa Methods 412</p> <p>Supported Platforms 415</p> <p>Summary 415</p> <p>Further Reading 415</p> <p><b>Chapter 24 Going Offline  417</b></p> <p>Reasons for Going Offline 417</p> <p>Strategies for Caching 418</p> <p>Data Model Cache 422</p> <p>Cache Versioning 426</p> <p>Creating an In-Memory Cache 427</p> <p>Creating a URL Cache 431</p> <p>Summary 433</p> <p>Further Reading 433</p> <p><b>Chapter 25 Data in the Cloud 435</b></p> <p>iCloud 435</p> <p>Third-Party Cloud Offerings 437</p> <p>Parse  438</p> <p>StackMob  442</p> <p>Disadvantages of Using a Backend as a Service 444</p> <p>Summary 444</p> <p>Further Reading 444</p> <p><b>Chapter 26 Fancy Text Layout 447</b></p> <p>The Normal Stuff: Fields, Views, and Labels 447</p> <p>Rich Text in UIKit 448</p> <p>Web Views for Rich Text 453</p> <p>Core Text 454</p> <p>Summary  464</p> <p>Further Reading 464</p> <p><b>Chapter 27 Building a (Core) Foundation 465</b></p> <p>Core Foundation Types 465</p> <p>Naming and Memory Management 466</p> <p>Allocators 467</p> <p>Introspection 468</p> <p>Strings and Data 469</p> <p>Collections 474</p> <p>Toll-Free Bridging 477</p> <p>Summary 480</p> <p>Further Reading 480</p> <p><b>Chapter 28 Deep Objective-C 481</b></p> <p>Understanding Classes and Objects 481</p> <p>Working with Methods and Properties 483</p> <p>How Message Passing Really Works 486</p> <p>Method Swizzling  494</p> <p>ISA Swizzling 496</p> <p>Method Swizzling Versus ISA Swizzling 498</p> <p>Summary 498</p> <p>Further Reading 498</p> <p>Index 501</p>
<p><b>ROB NAPIER</b> has been developing iPhone applications for as long as there has been an iPhone platform. Before coming to Cocoa development, he made his living sneaking into Chinese facilities in broad daylight. He now is a Mac developer for Dell. It’s not clear which was the stranger choice of career. He has passion for the fiddly bits below the surface, like networking, performance, security, and correct use of the MVC pattern. He muses on technical topics at Cocoaphony (cocoaphony.net).</p> <p><b>MUGUNTH KUMAR</b> is an independent iOS developer based in Singapore. He holds a master’s degree from Nanyang Technological University. His core areas of interest include human-computer interaction and usability engineering. He writes in-depth articles covering iOS programming and the user experienced at blog.mugunthkumar.com</p>
<p><b>WHY SETTLE FOR GOOD MOBILE APPS WHEN YOU CAN BUILD EXTRAORDINARY ONES?</b></p> <p>iOS is the hottest development platform around, and now iOS 6 adds a new, deeper dimension to explore. A serious book for serious programmers, <i>iOS 6 Programming Pushing the Limits</i> takes you beyond the basics to reveal advanced iOS 6 features and programming techniques not covered in most other development books. Long-time mobile developers Rob Napier and Mugunth Kumar share everything they know about creating killer apps for all Apple mobile devices. Including how to:</p> <ul> <li>Support the new iPhone 5</li> <li>Interact with the Objective-C runtime</li> <li>Secure your data with Security Services</li> <li>Create amazing animations</li> <li>Maximize your impact with Core Text</li> <li>Make the most of collection views</li> <li>Tune your application’s performance and squash the bugs</li> <li>Create high performance apps for any RESTful web service</li> <li>Implement super-fast caching in regions with spotty network connectivity</li> <li>Unlock the power of Core Foundation</li> </ul> <p>Not a book for the timid, or for novice developers, <i>iOS 6 Programming Pushing the Limits</i> takes you deep inside the latest iOS version and helps you get to grips with powerful tools to push the limits of your mobile development skills.</p>

Diese Produkte könnten Sie auch interessieren:

Bandwidth Efficient Coding
Bandwidth Efficient Coding
von: John B. Anderson
EPUB ebook
114,99 €
Digital Communications with Emphasis on Data Modems
Digital Communications with Emphasis on Data Modems
von: Richard W. Middlestead
PDF ebook
171,99 €
Bandwidth Efficient Coding
Bandwidth Efficient Coding
von: John B. Anderson
PDF ebook
114,99 €