iOS App Development using Swift

Course#: BSMD1138

About this Course

Course Type Course Code Duration
Mobile Development BSMD1138 5 Days

This intensive 5-day course is designed to train both novice and experienced developers how to create native iOS Apps for the iPhone, iPad and iPod using the Swift programming language.

Why Attend this Course?

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 IDE and its many features and tools will also be included.

What Makes this Course Stand Apart?

This is a highly interactive Hands on courses with the options of the Accelerator Plus1 Workshop.

Lot of demos, practical exercises and samples. Very strong presentation skill of the trainer. Good balance between theory and practice application.

What you will Learn?

Upon completion of this course, you will be able to:

Learn to use Xcode 6’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 Property List, Sqlite3 Databases, 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
Gesture recognition, enabling Swipes, Taps, Pinches, and Pans
Use of Auto-Layout and Size Classes to properly configure Apps to support various screen sizes, device orientations (Portrait and Landscape) and devices: iPhone , iPads, iPad Minis, etc.

Audience

IT software developers wanting to develop applications for iOS

Prerequisites

Basic knowledge of programming in Swift is recommended to get the most out of this class.
Object Oriented Programming experience is recommended
Basic familiarity with Mac computers and working in Mac OS X is recommended

Course Outline

1. 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
Designing an App interfae using Interface Builder
Running and previewing the App using the iOS Simulator

2. Adding Interactivity

Creating a new Project in Xcode
Designing an App interface using Interface Builder
Working with the Objects Library and the Attributes Inspector
Designing an App interface using Interface Builder
Running and previewing the App using the iOS Simulator

3. Enabling User Input

Working with Textfields tread in user inputted data
The iOS Keyboard and special alternate keyboard layouts
Alternate methods for dismissing the Keyboard
Using the Connections Inspector
More Control-Flow

4. Working with Image Assets & App Icons

Creating a Custom Icon for your App
Creating a Custom Splash Image for your App
Managing Image Assets: Regular & Retina
Inspector

5. Writing Classes in Swift

Declaring a Swift class in a separate file
Declaring Stored and Computed Properties
Creating Instance Methods
Control Flow with the Switch Statement

6. Using the PickerView

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

7. Creating Multiview Applications

Using Navigation Controllers
Working with Segues
Passing Data between View Controllers
Creating Bar-Tab Application

8. Using TableViews

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

9. Using Collection Views

Modifying Grid Layouts
Creating Custom CollectionView Cells
Enabling Cell-Tap Navigation tDetail Screens

10. Creating Views from Code

Initializing Objects with Code
Views, subviews, the Superview
The Subviews auto-array and View Index
Wiring up Views tIBActions using code

11. Detecting and Handling Gestures

Swipe Gesture
Tap Gesture
Pinch Gesture
Pan Gesture
Rotation Gesture
Implementing Affine Transformations

12. Data Persistence

Working with NSFileManager and the iOS File Directory
Saving Property Lists
Using Databases with the sqlite Library
Working with Core Data

13. Maps, Core Location and Location Services

Displaying User Location on Map
Creating Annotations & Pins
Switching Map Types
The MKMapViewDelegate Protocol

14. Web Services

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

15. Integrating your App with Social Media

Posting tFacebook and Twitter from within your App
Attaching Photos and URL’s ta Post

16. Universal Apps – Auto-Layouts, Handling Device Rotations, and Size Classes

Working with Auto-Layouts
Implementing Size Classes
Handling Aspect RatiConstraints

17. Application Life Cycle & View States/Life Cycle

Understanding Application States
Working with a ViewController’s Life-Cycle
Creating Local Notifications

18. Unit Testing

Using the XCTest Framework
Creating unique tests for specific funtionalities
Making Test Assertions
Creating performance-measurement tests

19. Submitting tthe App Store

The iOS Developer’s Center
Creating App Certificates, Identifiers and Profiles
Archiving the Project
Ad-Hoc and App-Store Distribution

0

Start typing and press Enter to search