iOS 10 App Development Using Objective-C

Course Number:

N/A

This course is designed to train both novice and experienced developers how to create native iOS 10 Apps for iPhone, iPad and iPod using the Objective-C programming language. Created by experienced iOS developers, the course places a very strong emphasis on hands-on learning through a multitude of exercises and demonstrations.

Students will be guided through a wide variety of in-class labs specifically designed to offer practical solutions to common problems that address real-world production needs. Topics covered include: multi-view apps, design-patterns, data-persistence, core data, web-services, JSON and XML parsing, maps and location services, working with images and animations, and handling gestures. An in-depth look at the Xcode 8 IDE and its many features and tools will also be included.

Audience:

Course Duration:
5 days

Prerequisites:

  • Basic knowledge of programming in Objective-C is recommended to get the most out of this class. Note: a separate three-day Programming in Objective-C class is also available
  • Object-oriented programming experience is recommended
  • Basic familiarity with Mac computers and working in Mac OS X is recommended
Course Objectives:
  • Learn to use Xcode 8’s interface builder to design and build iOS app interfaces
  • Utilize iOS Controls such as buttons, switches, sliders and pickers
  • Build multi-screen apps using navigation controllers, the master-detail (“drill-down”) template and the tab-bar template
  • Data Persistence – Saving data on iOS devices using text files and core data
  • Make calls to web-services from an iOS app
  • Parse incoming JSON and XML data streams
  • Work with maps and location services to make location-aware apps
  • Enable gesture recognition to facilitate swipes, taps, pinches and pans
  • Use auto-layout and size classes to properly configure apps to support various screen sizes, device orientations (portrait and landscape) and iOS devices: iPhone 4’s, 5’s, 6’s, and 7’s, iPads, etc. apps
Course Outline:
  • Your First App – “Prepare for Takeoff”
    • Creating a New Project in Xcode
    • Designing an App Interface Using Interface Builder
    • Working with the Objects Library and the Attributes Inspector
    • Running and previewing the App using the iOS Simulator

 

  • Adding Interactivity
    • Writing Objective-C code in the ViewController file
    • Creating IBActions and IBOutlets
    • Activating Controls: enabling Buttons, Switches and Sliders
    • Using the Size Inspector
    • Creating an Alert with action Buttons from code
    • Working with Conditionals for basic Control-Flow

 

  • Enabling User Input
    • Working with Textfields to read in user inputted data
    • The iOS Keyboard and special alternate keyboard layouts
    • Alternate methods for dismissing the Keyboard
    • Using the Connections Inspector E. More Control-Flow

 

  • Working with Image Assets and App Icons
    • Creating a Custom Icon for your App
    • Creating a Custom Splash Image for your App
    • Managing Image Assets: Regular & Retina

 

  • Writing Classes in Objective-C
    • Declaring a Objective-C class in a separate file
    • Declaring Stored and Computed Properties
    • Creating Instance Methods
    • Control Flow with the Switch Statement

 

  • Using the PickerView
    • Single Component Pickers
    • Multi-Component Pickers
    • Working with the Date Picker and the NSDate class

 

  • Using Storyboards and Creating Multiview Applications
    • Using Navigation Controllers
    • Working with Segues
    • Passing Data between View Controllers
    • Creating Bar-Tab Application

 

  • Using TableViews
    • Creating regular and Multi-Sectioned TableViews
    • Drill-Down menus
    • Master-Detail scheme
    • Creating custom TableView Cells

 

  • Using Collection Views
    • Modifying Grid Layouts
    • Creating Custom CollectionView Cells
    • Enabling Cell-Tap Navigation to Detail Screens

 

  • Creating Views from Code
    • Initializing Objects with Code
    • Views, subviews, the Superview
    • The Subviews auto-array and View Index
    • Wiring up Views to IBActions using code

 

  • Detecting and Handling Gestures
    • Swipe Gesture
    • Tap Gesture
    • Pinch Gesture
    • Pan Gesture
    • Rotation Gesture
    • Implementing Affine Transformations

 

  • Data Persistence
    • Working with NSFileManager and the iOS File Directory
    • Saving Property Lists
    • Using Databases with the SQLite Library
    • Working with Core Data
  • Maps, Core Location and Location Services
    • Displaying User Location on Map
    • Creating Annotations and Pins
    • Switching Map Types
    • The MKMapViewDelegate Protocol

 

  • Web Services
    • Establishing an NSURL connection
    • Making an NSURLConnection Request
    • Reading returned XML & JSON data
    • Parsing incoming XML with NSXMLParser
    • Parsing incoming JSON Data

 

  • Integrating your App with Social Media
    • Posting to Facebook and Twitter from within your App
    • Attaching Photos, URL’s

 

  • Universal Apps – Auto-Layouts, Handling Device Rotations and Size Classes
    • Working with Auto-Layouts
    • Implementing Size Classes
    • Handling Aspect Ratio Constraints

 

  • Application Life Cycle and View States/Life Cycle
    • Understanding Application States
    • Working with a ViewController’s Life-Cycle
    • Creating Local Notifications

 

  • Unit Testing
    • Using the XCTest Framework
    • Creating unique tests for specific functionalities
    • Making Test Assertions
    • Creating performance-measurement tests

 

  • Submitting to the App Store
    • The iOS Developer’s Center
    • Creating App Certificates, Identifiers and Profiles
    • Archiving the Project
    • Ad-Hoc and App-Store Distribution
Share on facebook
Share on twitter
Share on linkedin
Share on email

Related Posts

About Us

IT Training, Agile Ways of Working and High Impact Talent Development Strategies

Let Us Come to You!

Classes recently delivered in: Atlanta, Boston, Chicago, Columbus, Dallas, Detroit, Indianapolis, Jerusalem, London, Milan, New York, Palo Alto, Phoenix, Pittsburgh, Portland, Raleigh, San Antonio, San Diego, San Francisco, San Jose, Seattle, Springfield, Mass., St. Louis, Tampa and more!