Course Description
In this dynamic iOS Programming course you will learn how to create iPhone and iPad apps like the pros with guided instruction from top iOS consultant Mike Simpson. You will get hands-on coding experience that will give you the skills and confidence to create your first iOS app or improve your existing apps. Attending this course is a great way to come up to speed quickly on the latest iOS SDK and learn to build apps. This course covers iOS 5, iOS 6, and iOS 7.
The course begins with a brief refresher on Objective-C because Objective-C is the object-oriented programming language that you use to write iOS apps. The course then delves into an in-depth treatment of the iOS development environment and the iPhone SDK (software development kit) programming framework.
In This Course You Will Learn:
- Design, create and develop native applications in Objective-C for the iPhone or iPad using the Model-View-Controller (MVC) architecture.
- Connect your iOS application to the Internet.
- Save your iOS application's information using SQL databases or flat files.
- Take advantage of your iOS device's hardware sensors.
- Integrate your application into the iOS native environment.
- Prepare your iOS application for submission to the Apple App Store.
Prerequisites
You need to have one year of ANSI C or C++ programming background, including a basic knowledge of pointers, functions and arrays and have taken the Objective-C Programming course. If you do not have this experience, we recommend the following GogoTraining courses:
Outline
Module 00: iOS 6 Programming - Course Introduction
Module 01: Preparation for iOS Development
- Downloading the iPhone SDK
- Installing the iPhone SDK
- Preparing your iOS Device
- Demo: Making Your Device Available for Development
- Exercise: Creating First Application
Module 02: Creating an iPhone App Part 1
- Objective-C Basics
- Objective-C Object Model and Syntax
- Creating an iPhone Project
Module 03: Creating an iPhone App Part 2
- Moving the Project to the iPhone
- Demo: Creating an iPhone Application
- Exercise: Creating and Running a First iOS Application
Module 04: Coding in Objective-C
- Declaring and Defining Classes
- Interfaces and Implementations
- Object Typing
- Properties
- Declaring and Calling Methods
- Memory Management
Module 05: Design Patterns
- iPhone Design Patterns: Model-View-Controller, Delegate, DataSource
- Demo: iPhone Coding in Objective-C
- Exercise: Writing Code in Objective-C for the iPhone
Module 06: Table-View-Based Applications – Part 1
- Refactoring Template Code
- Creating a Table View
- Building a Model
- Connecting the Controller to the Model
- Demo: Alert Window Mockup
Module 07: Table-View-Based Applications – Part 2
- Adding Navigation Controls to the Model
- Adding Views
- Demo: Compiling and Running the Header File Test
- Exercise: Creating a Table-View Based Application
Module 08: Other View Controllers
- Two-screen Utility Applications
- Building a "FlipView" Application
- Demo: Building a Flip View Application
- Multiple-view Tab Bar Applications
- Building a Tab Bar Application
- Demo: Building a Tab Bar Application
Module 09: Modal View
- Modal View Controllers
- Building a Modal Application
- Demo: Building a Modal Application
- Using the ImagePicker View Controller to Select Images
- Demo: Adding Image Support
- Exercise: Working with View Controllers
Module 10: Connecting to the Network
- Detecting Network Status
- Adding a Web Browser to your Application
- Getting Data from a Web Browser View
- Sending Email
- Getting Data From the Internet
- Demo: Collecting Information from the Internet
- Exercise: Getting Data From the Internet
Module 11: Handling Data
- Data Entry
- Parsing XML
- Parsing JavaScript Object Notation (JSON)
- Working with Regular Expressions
Module 12: Storing Data – Part 1
- Storing Information: Flat Files
- File Management using NSFileManager
Module 13: Storing Data – Part 2
- Storing Information in SQL Database
- Storing Information in Core Data
- Demo: Parsing and Storing Data
- Exercise: Handling Data
Module 14: Distributing Your Application
- Adding an Icon and a Launch Image
- Building and Signing your Application
- Submitting your Application to the App Store
- Demo: Building and Signing your Application
- Exercise: Distributing Your Application
Module 15: Using Sensors Part 1
- Overview of Sensor Hardware Support
- Using the Camera
- Core Location Framework
- Using the Accelerometer
- Demo: Creating an Accelerometer Application
Module 16: Using Sensors Part 2
- Using the Digital Compass
- Accessing the Proximity Sensor
- Using Vibration
- Exercise: Using Sensors
Module 17: Geolocation and Mapping
- User Location
- Annotating Maps
- Demo: Working with Geolocation
- Exercise: Geolocation and Mapping
Module 18: Integrating Your Application with the Native Environment – Part 1
- Working with application Preferences
- Best practices
- Synchronizing
- Saving, Reading and Updating
- Domains and Domain Qualifiers
Module 19: Integrating Your Application with the Native Environment – Part 2
- Working with Media Playback
- Using the Address Book
- Demo: Application Integration
- Exercise: Application Integration
Module 20: FutureProofing Your Application
- Cocoa and Objective-C
- iPhone SDK
- Web Applications
- Core Data
- In-App Purchases
- Core Animation
- Hardware Accessories
- Writing Games
- Look and Feel
Module 21: What's New in iOS 6
New Applications:
- Maps
- Siri
- Passbook
- Reminders
- FaceTime
Improved Applications:
- Mail
- Safari
- AppStore / iTunes Store
- Accessibility
Module 22: What’s New in iOS 7
- Appearance
- Navigation
- Multitasking
- Sharing
- Camera and Photos
- Safari
Module 23: New Programming Features of iOS 7
- Coding Background Data Fetch
- Updating Applications to work with iCloud
- Updating Applications to Work with KeyChains
- Updating Applications to Work with Background Modes