Xcode 4 iOS Development Beginner's Guide


Xcode 4 iOS Development Beginner's Guide
eBook: $29.99
Formats: PDF, PacktLib, ePub and Mobi formats
$25.49
save 15%!
Print + free eBook + free PacktLib access to the book: $79.98    Print cover: $49.99
$49.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Support
Sample Chapters
  • Learn how to use Xcode 4 to build simple, yet powerful applications with ease
  • Each chapter builds on what you have learned already
  • Learn to add audio and video playback to your applications
  • Plentiful step-by-step examples, images, and diagrams to get you up to speed in no time with helpful hints along the way
  • A practical guide to building your own fun and exciting iOS applications rapidly using Xcode 4

Book Details

Language : English
Paperback : 432 pages [ 235mm x 191mm ]
Release Date : August 2011
ISBN : 1849691304
ISBN 13 : 9781849691307
Author(s) : Steven F Daniel
Topics and Technologies : All Books, Mobile Application Development, iOS, Mobile, Beginner's Guides

Table of Contents

Preface
Chapter 1: Introducing Xcode 4 Tools for iOS Development
Chapter 2: Introducing the Xcode 4 Workspace
Chapter 3: Working with the Interface Builder
Chapter 4: Working with the Xcode Frameworks
Chapter 5: Designing Application Interfaces using MVC
Chapter 6: Displaying Notification Messages
Chapter 7: Exploring the MultiTouch Interface
Chapter 8: Debugging Xcode Projects
Chapter 9: Source Code Management with the Version Editor
Chapter 10: Making your Applications Run Smoothly
Chapter 11: Distributing your Application
Appendix: Pop Quiz Answers
Index
  • Chapter 1: Introducing Xcode 4 Tools for iOS Development
    • Development using the Xcode tools
      • iPhone SDK core components
    • Inside Xcode, Cocoa, and Objective-C
    • The iPhone Simulator
    • Layers of the iOS architecture
      • The Core OS layer
      • The Core Services layer
      • The Media layer
      • The Cocoa-Touch layer
    • Understanding Cocoa, the language of the Mac
      • What are Design Patterns?
      • What is the difference between Cocoa and Cocoa-Touch?
    • The Model-View-Controller
    • What is Object-Oriented Programming?
      • What is Data Hiding?
    • What is Objective-C?
      • Directives
    • Objective-C classes
      • The @interface directive
      • The @implementation directive
      • Class instantiation
      • Class access privileges
    • Introducing the Xcode Developer set of tools
      • Introducing the core tools
      • The Welcome to Xcode screen
      • The Xcode Integrated Development Environment
      • Features of the iPhone Simulator
    • Companion tools and features
    • Instruments
    • iPhone OS4 SDK new features
    • Summary
    • Chapter 2: Introducing the Xcode 4 Workspace
      • Downloading and installing the iOS SDK
        • Removing the Xcode Developer Tools
      • Getting to know the Xcode Development Environment
        • One environment to bind them all
          • Working within a single-development environment
          • Creating a new project
          • Migrating older projects into the new environment
          • Writing a simple iPhone application
      • Time for action – creating your first iPhone application
        • Working with the new Xcode Assistant
    • Introducing the Xcode 4 Workspace Environment
      • Application ToolBar
      • Application Status Bar/Activity Window
      • WorkSpace Settings
    • Introducing the Unified Navigation UI
      • Listing files in a project
      • Sorted Symbols
      • Central Search Interface
      • Issues Tracking
      • Using Static Analysis to find potential problems
      • Debugging data with Compressionable Stack Traces
      • Active/inactive breakpoints
      • Collection of Logs
      • Jump Bar
      • Using Code Assistants
      • Introducing the new and improved LLVM Compiler 2.0
      • Version Editor
      • File Templates Library
      • Code Snippets Library
      • Object Library
      • Media Library
      • Resetting Xcode's Development Environment Settings
    • Xcode Workspace Preferences
      • General
      • Behaviors
      • Fonts & Colors
      • Text Editing
      • Key Bindings
      • Documentation
      • Locations
      • Source Trees
      • Distributed Builds
    • Summary
      • Chapter 3: Working with the Interface Builder
        • Getting to know the Interface Builder environment
          • Adding Controls to your user interface
        • Time for action – creating the HelloXcode4_GUI application
          • Application structure of our HelloXcode4 example application
          • The MainWindow.xib file
          • The Core Application Architecture layer
          • The application life cycle
        • Time for action – adding object controls to our View
          • Understanding Rotatable Interfaces
        • Time for Action – enabling Interface Rotation
          • Relocating controls within the view on Rotation
        • Making our Components work together
        • Time for action – binding Control Objects
        • Time for action – repositioning the Controls
          • Enhancing our iPhone application
        • Time for action – hiding the keyboard
        • Introducing Document-based applications
        • Time for action – creating a Document-based application
          • File saving and loading
        • Time for action – implementing file saving and loading
        • Summary
        • Chapter 4: Working with the Xcode Frameworks
          • Introducing the Frameworks
          • Using Frameworks and APIs in iPhone development
            • Core Data Frameworks
            • Building a simple database application
          • Time for action – creating the Core Data application
            • AV Foundation Frameworks
              • Playing an audio File
              • Creating an application to play an audio file
          • Time for action – creating the MusicPlayer application
            • Playing a movie using Media Player
        • Time for action – creating the MoviePlayer application
          • Core Location Framework
        • Time for action – making your application location aware
          • Map Kit Framework—new and improved
        • Time for action – creating a simple geographical application
        • New Framework APIs
        • Summary
          • Chapter 5: Designing Application Interfaces using MVC
            • Developing iOS applications using MVC design
              • Reusing tested (or standard) solutions: Design patterns
                • Understanding the Model-View-Controller design pattern
            • Implementing MVC using Xcode and Interface Builder
            • Time for action – building a Pizza order application
            • Time for action – binding our Controls using Outlets and Actions
              • Implementing views
              • Implementing view controllers
            • Time for action – declaring input field as a property of View Controller
            • Creating a view-based application template
            • Time for Action – creating the FavoriteColor application
            • Time for action – binding our Controls using Outlets and Actions
              • Implementing Table Views
            • Time for action – creating a Table view application
              • Grouping row items into sections
          • Time for action – grouping row items in our TableViewExample application
            • Understanding Navigation-based applications
            • Using Switches, Sliders, Segmented Controls, and Web Views
          • Time for action – creating the SwitchesSlidersSegments project
          • Time for action – binding our Controls using Outlets and Actions
            • Creating an application to scroll through large content
          • Time for action – creating the ScrollingViews project
          • Time for action – binding our Controls using Outlets and Actions
            • Understanding Pickers
              • Date Pickers
          • Time for action – creating the Date Picker project
          • Time for action – binding our Controls using Outlets and Actions
            • Custom Pickers
          • Time for Action – creating the Custom Picker project
          • Time for action – binding our Controls using Outlets and Actions
            • Handling basic user input and output
              • Button Controls
              • Text Fields
              • Text Views
              • Labels
            • Using Text Fields, Text Views, and Buttons
          • Time for action – creating application with Text fields, Text Views, and Buttons
          • Time for action – binding our Controls using Outlets and Actions
          • Summary
            • Chapter 6: Displaying Notification Messages
              • Exploring the notification methods
              • Generating alerts
              • Time for action – creating the GetUsersAttention application
              • Time for action – adding the AudioToolbox Framework to our application
                • Building our user interface
              • Time for action – adding controls to our View
                • Creating events
              • Time for action – implementing the Show Activity Indicator method
              • Time for action – implementing the Display Alert Dialog method
                • Responding to Alert Dialog Button presses
              • Using Action Sheets to associate with a view
              • Time for action – implementing the Display Action Sheet method
                • Responding to Action Sheet Button presses
                  • Customizing an Action Sheet
              • Time for action – handling alerts via sounds and vibrations
              • Summary
              • Chapter 7: Exploring the MultiTouch Interface
                • Introducing the MultiTouch architecture
                  • Detecting taps
                • Time for action – creating the TapExample project
                • Time for action – binding our Controls
                  • Detecting swipes
                • Time for action – creating the SwipeExample project
                  • Detecting pinches
                • Time for action – creating the PinchExample project
                  • Detecting shakes
                • Time for action – creating the ShakeExample project
                • Time for action – implementing the motionBegan, motionEnded, and motionCancelled methods
                • Exploring the Accelerometer/Gyroscope
                  • Understanding the Core Motion Framework
                  • Sensing orientation
                • Time for action – creating the OrientationExample project
                  • Detecting device tilting
                • Time for action – creating the AccelGyroExample project
                • Summary
                • Chapter 8: Debugging Xcode Projects
                  • Introducing the new and improved Debugger
                    • Debugger toolbar
                    • Stack trace panel
                    • Disassembly view
                    • Code Editor window
                    • Console output window
                  • Creating a new debugging project
                  • Time for action – creating the DebuggingExample project
                  • Running and debugging the project
                    • Handling errors
                      • Runtime errors
                      • Syntax errors
                      • Logic errors
                    • Using Fix-it to correct code as you type
                  • Time for action – setting up the LLVM compiler
                    • Debugging with breakpoints
                    • Using NSLog to track changing properties
                  • Exploring the new Debugger
                    • Debugging features in the Code Editor
                    • The Activity Viewer/Progress window
                    • Defining a scheme for project builds using the Scheme Editor
                  • Time for action – using the Scheme Editor to define a Scheme
                    • Viewing the Static Analysis results
                  • Time for action – running the Static Analyzer
                  • Time for action – configuring your project to perform automatic Static Analysis
                  • Time for action – Detecting a memory leak
                  • Time for action – detecting an instance of an uninitialized variable
                    • Viewing the Issues Navigator
                    • Viewing the Program Build log
                    • Understanding and using code completion
                  • Time for action – working with code completion
                  • Time for action – stopping Xcode from alerting you to problems
                    • Navigating through threads and stacks in the Debugger
                  • Summary
                  • Chapter 9: Source Code Management with the Version Editor
                    • Introducing the new Version Editor
                      • Introducing Subversion
                      • Installing a local Subversion server
                      • Creating a repository
                    • Time for action – setting up a local Subversion repository
                      • Configuring the repository in Xcode
                    • Time for action – configuring the Subversion repository
                      • Adding items to an existing repository
                    • Time for action – adding our TapExample project to the repository
                      • Getting a working copy of the project out of the repository
                    • Time for action – checking out the project from the repository
                      • Xcode source-control features and file statuses
                      • Comparing different versions of a file side-by-side
                      • Using Timeline to select and compare revisions
                      • Using Track Blame to check past check-ins
                      • Using Log Mode to list all revisions chronologically
                      • Using the Repository Organizer to keep track of your files
                    • Using Git to manage multiple projects
                    • Time for action – creating a new Xcode project using Git
                    • Time for action – assigning address book identities within the organizer
                    • Summary
                    • Chapter 10: Making your Applications Run Smoothly
                      • Introducing Instruments
                        • Tracking down and fixing memory leaks
                      • Time for action – creating the InstrumentsExample project
                      • Time for action – running and Profiling the project
                      • Adding and configuring Instruments
                        • Using the Instruments Library
                        • Locating an Instrument within the Library
                        • Adding and removing Instruments
                        • Configuring an Instrument
                        • Other components of the Instruments family explained
                      • New Instruments in Xcode 4
                        • Automated Testing
                        • Performance and Power Analysis
                        • Time Profiler
                        • Energy Diagnosis
                        • Tracking iPhone graphics performance using OpenGL ES Driver
                      • Summary
                      • Chapter 11: Distributing your Application
                        • Build configurations – debug to release
                          • The iPhone Developer Program
                          • Setting up your iPhone development team
                        • Time for action – setting up the team
                          • Getting an iOS development certificate
                        • Time for action – generating a Certificate Request
                        • Time for action – getting the certificate
                          • Registering devices for testing
                        • Time for action – registering devices
                          • Creating application IDs
                        • Time for action – creating the application ID
                          • Creating a Provisioning Profile
                        • Time for action – creating the profile
                          • Using the Provisional Profile to install an App on an iOS device
                        • Time for action – creating and deploying the app to an iOS device
                          • Getting a Distribution Certificate for your app
                        • Time for action – getting the Distribution Certificate
                          • Archiving and submitting Apps using Xcode 4
                          • iOS Human Interface Guidelines
                          • Testing your application
                          • Preparing your App for submission through iTunes Connect
                          • Avoiding rejection of your App
                          • Pricing your app
                          • Adding your App to iTunes Connect
                        • Time for action – uploading the application icon and screenshot images
                          • Using iTunes Connect to manage your Apps
                          • Marketing and promoting your app
                          • iOS Developer Documentation
                        • Summary

                          Steven F Daniel

                          Steven F. Daniel is originally from London, England, but lives in Australia. He is the owner and founder of GENIESOFT STUDIOS (http://www.geniesoftstudios.com/), a software development company based in Melbourne, Victoria, that currently develops games and business applications for the iOS, Android, and Windows platforms. Steven is an experienced software developer with more than 13 years of experience developing desktop and web-based applications for a number of companies including, insurance, banking and finance, oil and gas, and local and state government. Steven is always interested in emerging technologies, and is a member of the SQL Server Special Interest Group (SQLSIG) and the Java Community. He has been the co-founder and Chief Technology Officer (CTO) of SoftMpire Pty Ltd., a company that focused primarily on developing business applications for the iOS and Android platforms. He is the author of Xcode 4 iOS Development Beginner's Guide, iOS 5 Essentials, and iPad Enterprise Application Development Blueprints. You can check out his blog at http://geniesoftstudios.com/blog/, or follow him on twitter at http://twitter.com/GenieSoftStudio.
                          Sorry, we don't have any reviews for this title yet.

                          Code Downloads

                          Download the code and support files for this book.


                          Submit Errata

                          Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

                          Sample chapters

                          You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                          Frequently bought together

                          Xcode 4 iOS Development Beginner's Guide +    Microsoft Forefront Identity Manager 2010 R2 Handbook =
                          50% Off
                          the second eBook
                          Price for both: $43.05

                          Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                          What you will learn from this book

                          • Install and configure a set of frameworks to make your life easier for developing iPhone applications
                          • Download and install the Xcode 4 Development Tools
                          • Get started with Apple's Objective-C and Cocoa Touch
                          • Understand the Model-View-Controller (MVC) development paradigm
                          • Implement application input and views
                          • Build rotatable and resizable user interfaces
                          • Read and write data using the Core-Data framework
                          • Use the iPhone's media playback to play sounds and videos
                          • Create map and location-based services
                          • Sense motion using the Accelerometer and Gyroscope
                          • Manage source code with the Version Editor
                          • Use instruments to make your applications run smoothly
                          • Build, package and distribute your applications through the App Store

                          In Detail

                          The iPhone is one of the hottest mobile devices on the planet. Whether you are just starting out with iOS Development or already have some knowledge in this area, you will benefit from what this book covers. Using this book's straightforward, step-by-step approach, you will go from Xcode 4 apprentice to Xcode 4 Jedi master in no time.

                          Xcode 4 iOS Development Beginner's Guide will help you learn to build simple, yet powerful applications for the iPhone from the ground up. You will master the Xcode 4 tools and skills needed to create applications that are simple yet, like Yoda, punch far above their weight.

                          You will start by learning about the Xcode 4 Development Tools, Xcode IDE, iOS Simulator, Objective-C 2, and Organizer. Then you will jump straight in and create applications using Xcode and Interface Builder. You finish up by learning how to build, package, and distribute your application to the Apple App Store.

                          This book will teach you how to go about building simple applications from scratch, you will master how to download and install the Xcode 4 Development Tools, get to know the development environment and how to build great user interfaces (using Interface Builder), learn about the different iOS frameworks, learn how to implement video and audio playback, learn how to sense motion using the Accelerometer and Gyroscope, and how to improve the reliability and performance of your applications.

                          After reading Xcode 4 iOS Development Beginner's Guide, you will be able to write your own applications for the iPhone with supreme efficiency. There are a lot of examples and images provided to get you up to speed quickly.

                          Using this book's easy to follow step-by-step approach you will harness Xcode 4's firepower to create some stunning applications for your iPhone

                          Approach

                          This step-by-step book guides you through the process of creating awesome iOS apps using Xcode 4. As a beginner's guide, it focuses on getting you through all the major learning points in a smooth, logical order while showing you how to avoid some common pitfalls.

                          Who this book is for

                          If you want to learn how to build iOS applications that compete with the rest and make your mark within the iOS industry, this book is for you. You should have some basic programming experience with Objective-C, and a good understanding of OOP, as well as some knowledge of database design. No knowledge of Xcode 4 is required.

                          Code Download and Errata
                          Packt Anytime, Anywhere
                          Register Books
                          Print Upgrades
                          eBook Downloads
                          Video Support
                          Contact Us
                          Awards Voting Nominations Previous Winners
                          Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                          Resources
                          Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software