Learning iOS Development - Maurice Sharp, Erica Sadun, Rod Strougo

Learning iOS Development

A Hands-on Guide to the Fundamentals of iOS Programming
Buch | Softcover
592 Seiten
2013
Addison-Wesley Educational Publishers Inc (Verlag)
978-0-321-86296-9 (ISBN)
31,95 inkl. MwSt
  • Titel ist leider vergriffen;
    keine Neuauflage
  • Artikel merken
Covers iOS 7 and Xcode 5

Learning iOS Developmentis the perfect first book for every new iOS 7 developer. It delivers  a complete foundation for iOS development, including an introduction to the Objective-C language, Xcode development tools, best-practice user interface development, and best practices for all  aspects of app development and deployment.

Throughout Learning iOS Development, you explore the iOS development process as you create  and expand a handy car valet app. The hands-on projects enable you to create meaningful code  as soon as possible, building confidence and mastery. The annotated code listings work with all  the latest iOS technology, so you’ll be ready to jump into this exciting development field.

With Learning iOS Development, it’s easy to learn at your own pace, on your own--or to deepen  the knowledge you may be gaining in a classroom or workplace.

Coverage includes


Installing all the tools, programs, and devices  you need to create iOS apps
Building your first app and mastering the  essentials of Objective-C
Making the most effective use of device memory
Storyboarding your interface and connecting it to your underlying code
Using Auto Layout to support devices with different sizes and orientations
Managing app data with Core Data
Creating sophisticated custom gestures
Deploying your app through Apple’s App Store
Quickly localizing your app for multiple languages  and countries
Implementing scrolling, navigation, table views,  and other core iOS features
Mastering advanced table views and navigation,  including iPad split views
Passing code encapsulated in blocks for communicating between parts of your app and with the system
Tuning and debugging your apps for the best  performance and quality
Discovering great resources to take your next steps  as an iOS developer

Maurice Sharp is a 21-year veteran of mobile development at companies both large and small, ranging from Apple, Palm, and eBay to ShopWell and Couchsurfing. Maurice got his start as an intern developing the Newton ToolKit prototype, then as a Developer Technical Support (DTS) Engineer helping make the world safe and fun for Newton and Palm developers. After mastering the DTS side, he went back to coding, and he currently manages and does mobile development at Couchsurfing; runs his own consulting company, KLM Apps; and is ex officio technical advisor to some mobile-focused startups. When not living and breathing code, Maurice spends his time being a husband, and a father to a precocious 10-year-old girl–his two most important roles. Erica Sadun is a bestselling author, coauthor, and contributor to several dozen books on programming, digital video and photography, and web design, including the widely popular The Core iOS 6 Developer’s Cookbook, now in its fourth edition. She currently blogs at TUAW.com, and she has blogged in the past at O’Reilly’s Mac Devcenter, Lifehacker, and Ars Technica. In addition to being the author of dozens of iOS-native applications, Erica holds a Ph.D. in computer science from Georgia Tech’s Graphics, Visualization and Usability Center. A geek, a programmer, and an author, she’s never met a gadget she didn’t love. When not writing, she and her geek husband parent three geeks-in-training, who regard their parents with restrained bemusement when they’re not busy rewiring the house or plotting global domination. Rod Strougo is an author, instructor, and developer. Rod’s journey in iOS and game development started way back with an Apple, writing games in Basic. From his early passion for games, Rod’s career moved to enterprise software development, and he spent 15 years writing software for IBM and AT&T. These days Rod follows his passion for game development and teaching, providing iOS training at the Big Nerd Ranch (www.bignerdranch.com). Originally from Rio de Janeiro, Rod now lives in Atlanta, Georgia, with his wife and sons.

Foreword   xvi
Preface   xx
Chapter 1: Hello, iOS SDK   1
Installing Xcode   1
About the iOS SDK   2
What You Get for Free   3
iOS Developer Program (Individual and Company)   4
Developer Enterprise Program   4
Developer University Program   5
Registering   5
iTunes U and Online Courses   5
The iOS SDK Tools   6
Testing Apps: The Simulator and Devices   7
Simulator Limitations   8
Tethering   10
iOS Device Considerations   11
Understanding Model Differences   15
Screen Size   15
Camera   16
Audio   16
Telephony   16
Core Location and Core Motion Differences   17
Vibration Support and Proximity   17
Processor Speeds   17
OpenGL ES   18
iOS   18
Summary   19
Chapter 2: Objective-C Boot Camp   21
Building Hello World the Template Way   21
Creating the Hello World Project   21
A Quick Tour of the Xcode Project Interface   25
Adding the Hello World Label   28
Objective-C Boot Camp   30
The Objective-C Programming Language   31
Classes and Objects   35
The CarValet App: Implementing Car Class   41
Implementing Car Methods   46
Properties   50
Creating and Printing Cars   53
Properties: Two More Features   55
Custom Getters and Setters   56
Subclassing and Inheritance: A Challenge   58
Inheritance and Subclassing   59
Summary   62
Challenges   63
Chapter 3: Introducing Storyboards   65
Storyboard Basics   65
Scenes   66
Scene 1: Creating the Add/View Scene   67
Adding the Add/View Visual Elements   67
Adding the Initial Add/View Behaviors   72
Adding Car Display Behaviors   82
Adding Previous and Next Car Buttons   86
Scene 2: Adding an Editor   89
Adding the Editor Visual Elements   91
Adding Editor Behaviors   94
Hooking It All Together   98
Why Not Segue Back?   106
Improving the Storyboard: Take 1   107
Exchanging Data Using a Protocol   108
Improving the Storyboard: Take 2   112
Summary   115
Challenges   116
Chapter 4: Auto Layout   117
Auto Layout Basics   117
Constraints   120
Perfecting Portrait   131
Thinking in Constraints   132
What Makes a Complete Specification   133
Adding/Viewing Cars: Designing and
Implementing the Constraints   134
Edit Car: An Initial Look   155
Adding Landscape   156
Adding and Viewing Cars: Designing the Landscape Constraints   158
Summary   180
Challenges   181
Chapter 5: Localization   183
Localization Basics   183
Redirection   184
Formats   187
Preparing the App for Localization   189
Setting Up Localization for the Add/View Car Scene   191
German Internationalization   203
Adding the German Locale   203
Changing the Device Language   206
Updating the German Localizable.strings   207
Changing Label Constraints   209
Formatting and Reading Numbers   213
Right-to-Left: Arabic Internationalization   215
Adding Arabic Strings   215
Making Dates and Numbers Work   219
Text Alignment   222
Summary   224
Challenges   224
Chapter 6: Scrolling   225
Scrolling Basics   225
Bounce Scrolling   227
Adding a Scroll View to the View/Edit Scene   227
Handling the Keyboard   230
Adding the Scroll View   231
Resizing for the Keyboard   234
Adding Resizing   239
Scrolling Through Content   240
Populating the Scroll View   241
Adding Paging   243
Adding Zoom   245
Rotation   248
What Car Is This?   249
Summary   250
Challenges   251
Chapter 7: Navigation Controllers I: Hierarchies and Tabs   253
Navigation Controller   254
Navigation Controller Classes   256
Message-Based Navigation   263
A Bit of Color   264
Tab Bar Controller   267
How the Tab Bar Works   268
CarValet: Adding a Tab Bar   270
Car Valet: Moving Info   272
Summary   273
Challenges   274
Chapter 8: Table Views I: The Basics   275
Introduction to Table Views   275
Project TableTry   277
Phase I: Replacing the Add/View Scene   283
Adding a Car View Cell   285
Adding New Cars   287
Removing Cars   288
Phase II: Adding an Edit Screen Hierarchy   291
Adding a View Car Scene   292
Populating the View Car Scene with Data   294
Editing Data   296
Editing the Year   307
Summary   314
Challenges   315
Chapter 9: Introducing Core Data   317
Introduction to Core Data   318
Moving CarValet to Core Data   320
Adding the CDCar Model   321
Adding Core Data Boilerplate Code   324
Converting CarTableViewController   326
Easier Tables: NSFetchedResultsController   332
Part 1: Integrating NSFetchedResultsController   333
Part 2: Implementing NSFetchedResultsControllerDelegate   336
Summary   339
Challenges   340
Chapter 10: Table Views II: Advanced Topics   341
Custom Table View Cells   341
Adding the Custom Cell Visual Elements   343
Sections and Sorting   345
Section Headers   346
Enabling Changing of Section Groups   349
Adding an Index   355
Showing the Year in an Index   357
Searching Tables   358
Adding Searching   361
Summary   369
Challenges   370
Chapter 11: Navigation Controllers II: Split View and the iPad   371
Split View Controller   372
Adding a Split View Controller   374
Adding the Split View Controller   376
Adding App Section Navigation   379
Adding About   382
Creating MainMenuViewController   383
Polishing Menu Images   385
Accessing the Menu in Portrait   387
Implementing the DetailController
Singleton   388
Adding Car Images   397
Adding Cars   400
Adapting the Car Table to iPad   401
Car Detail Controller   404
Car Detail Controller, Take 2: iPad Specific   407
Summary   424
Challenges   425
Chapter 12: Touch Basics   427
Gesture Recognizer Basics   427
Swiping Through Cars   428
Moving Through Cars   429
Calling nextOrPreviousCar:   432
Adding Action Selectors   433
Adding the Swipe Gestures   436
Preventing Recognizers from Working   438
Custom Recognizers   439
Recognizer States   439
Specializing Recognizer Messages   441
iPad Go Home   442
Creating the Return Gesture Recognizer   442
Adding the Gesture Recognizer to the Current Detail   446
Creating and Responding to the Gesture
Recognizer   446
One More Gesture   448
Drag Gesture Recognizer   448
Adding the Taxi View with Drag   450
Summary   450
Challenges   451
Chapter 13: Introducing Blocks   453
Block Basics   453
Declaring Blocks   453
Using Blocks   454
Writing Blocks   455
Variable Scope   460
Copying and Modification   461
Replacing a Protocol   462
Step 1: Changing ViewCarTableViewController   463
Step 2: Updating CarTableViewController   464
Step 3: Modifying CarDetailViewController   465
Step 4: Updating MainMenuViewController   466
Summary   466
Challenges   467
Chapter 14: Instruments and Debugging   469
Instruments   469
Templates and Instruments   471
An Example Using the Time Profiler   472
A Last Word on Instruments   478
The Debugger   479
Debug Gauges: Mini “Instruments”   481
Breakpoints, and Actions, and Code...Oh My!   483
Bug Hunt: Instruments and the Debugger   486
Starting with Zombies   486
Moving On to the Debugger   489
Summary   491
Challenges   491
Chapter 15: Deploying Applications   493
Certificates, Profiles, and Apps   493
Generating a Development Certificate and Profile   495
App ID and Provisioning   498
Prelaunch   506
Bug Reporting   506
Metrics   508
Quality Assurance Testing   509
Marketing   512
Uploading and Launching   513
App Details   515
Uploading to the App Store   521
Some Things to Watch Postlaunch   526
Where to Go Next   526
Websites   527
Developer Groups and Conferences   528
Other Social Media   529
Summary   530
Challenges   530
Index   531

Erscheint lt. Verlag 28.11.2013
Verlagsort New Jersey
Sprache englisch
Maße 181 x 227 mm
Gewicht 910 g
Themenwelt Informatik Betriebssysteme / Server Macintosh / Mac OS X
Informatik Programmiersprachen / -werkzeuge Mac / Cocoa Programmierung
Informatik Software Entwicklung Mobile- / App-Entwicklung
Informatik Weitere Themen Smartphones / Tablets
Technik Nachrichtentechnik
ISBN-10 0-321-86296-1 / 0321862961
ISBN-13 978-0-321-86296-9 / 9780321862969
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
für jeden klar und verständlich

von Uwe Albrecht

Buch | Softcover (2023)
Markt + Technik Verlag
19,95