iOS Development and Training
Getting Started
General Overview, Maps, Siri, Face book and twitter, Multi-Touch, Accelerometer, GPS, High end processor, Camera, Safari, Powerful APIs, Game center, In-App Purchase, Reminders, Wide Range of gestures, Registering as an Apple Developer, Access to development tools, Worldwide Developers Conference (WWDC) videos, Apple iOS Developer Program.
Introduction to Apple devices and Apps
Evolution of Apple, MAC OS and iOS iPhone, iPad and iPod touch devices overview Introduction to App store and application development MAC OS X in depth.
Introduction to Xcode
Architecture of Xcode IDE Workflow of Application development Introduction to Xcode workspace and Interface Builder.
Introduction to Objective C
Evolution of Objective C Comparison of procedural and object oriented language OOP concepts in Objective C Abstraction Inheritance Polymorphism Encapsulation.
Objects in detail
Object fundamentals and model classes Objects and object reference saving and retrieving data using model class.
Methods in detail
Class method and instance methods declaration Object messaging with parameters Getter/ setter methods.
Collections
Different types of collections and their need Define Array and its factory methods Accessing and iterating objects in array Define Dictionary and its factory methods Accessing and iterating objects in dictionary using keys Define sets.
Protocols
Protocols overview Methods in protocols How to conform to protocols.
Miscellaneous
Enums Exception handling Selectors Timers Variable visibility.
Introduction to Apple’s new programming language Swift
Language fundamentals, features of swift, utilizing the Objective-C code, bridging header in swift applications.
Swift Overview
Swift is a new programming language developed by Apple Inc for iOS and OS X development. Swift adopts the best of C and Objective-C, without the constraints of C compatibility.
SWIFT-ENVIORNMENT
SWIFT-BASIC SYNTAX
- Import in Swift
- Tokens in Swift
- Comments
- Semicolons
- Identifiers
- Keywords
- White Space
- Literals
SWIFT-DATA TYPES
- Build in Data types
- Bound Values
- Type Aliases
- Type Safety
- Type Inference
SWIFT-VARIABLES
- Variable Declaration
- Bound Values
- Type Aliases
- Type Safety
- Type Inference
SWIFT-OPTIONALS
- Forced Unwrapping
- Automatic Unwrapping
- Optional Binding
SWIFT-CONSTANTS
- Constant Declaration
- Type Annotation
- Naming Constant
- Printing Constant
SWIFT-LITERALS
- Integer Literals
- Floating Point Literals
- String Literals
- Boolean Literals
SWIFT-OPERTAORS
- Arithmetic Operators
- Comparison Operators
- Logical Operators
- Bitwise Operators
- Assignment Operators
- Range Operators
- Misc Operators
- Operators Precedence
SWIFT-DECISION MAKING
- If Statement
- If-else Statement
- if-else.if else Statement s
- Nested if Statement
- Switch Statement
- The ? .Operator
SWIFT-LOOPS
- for in loop
- Swift-for loop
- Swift-while loop
- Swift-do-while loop
- Loop Control Statements
- Swift-Control Statements
- Swift-Continue Statement
- Swift-Break Statement
- Swift-Fall through Statement
SWIFT-STRING
- Create a String
- Empty a String
- String Constants
- String Interpolation
- String Concatenation
- String Length
- String Comparison
- Unicode Strings
- String Functions and Operators
SWIFT-ARRAY
- Creating Arrays
- Accessing Arrays
- Modifying Arrays
- Iterating Over an Array
- Adding Two Arrays
- The count Property
- The empty Property
SWIFT-FUNCTIONS
- Function Definition
- Calling a Function
- Parameters and Return Values
- Functions without Parameters
- Functions with Return Values
- Functions without Return Values
- Functions with Optional Return Types
- Functions Local Vs External Parameter Names
- External Parameter Names
- Variadic Parameters
SWIFT–CLOSURES
- Expressions in Closures
- Single Expression Implicit Returns
- Known Type Closures
- Declaring Shorthand Argument Names as Closures
- Closures as Operator Functions
- Closures as Trailers
- Capturing Values and Reference Types
SWIFT–ENUMERATIONS
- Enumeration Functionality
- Enumeration with Switch Statement
- Difference between Associated Values and Raw Values
- Enum with Associated Values
- Enum with Raw Values
SWIFT – STRUCTURES
- Definition of a Structure 99
- Accessing the Structure and its Properties
- Best Usage Practices of Structures
SWIFT – CLASSES
SWIFT – PROPERTIES
- Stored Properties
- Lazy Stored Property
- Instance Variables
- Computed Properties
- Local and Global Variables
- Type Properties
- Querying and Setting Properties
SWIFT-METHODS
- Instance Methods
- Local and External Parameter Names
- External Parameter Name with # and _ Symbol
- Self property in Methods
- Modifying Value Types from Instance Methods
- Self Property for Mutating Method
- Type Methods
SWIFT - SUBSCRIPTS
- Subscript Declaration Syntax and its Usage
- Options in Subscript
SWIFT-INHERITANCE
- Base Class
- Subclass
- Overriding
- Methods Overriding
- Property Overriding
- Overriding Property Observers
- Final Property to prevent Overriding
SWIFT-INITIALIZATION
- Initializer Role for Stored Properties
- Setting Property Values by Default
- Parameters Initialization
- Local & External Parameters
- Parameters without External Names
- Optional Property Types
- Modifying Constant Properties During Initialization
- Default Initializers
- Member wise Initializers for Structure Types
- Initializer Delegation for Value Types
- Class Inheritance and Initialization
- Initializer Inheritance and Overriding
- Failable Initializer
- Failable Initializers for Enumerations
- Failable Initializers for Classes
- Overriding a Failable Initializer
- The init! Failable Initializer
- Required Initializers
SWIFT-DEINITIALIZATION
- Deinitialization to Deallocate Memory Space
SWIFT-ARC OVERVIEW
- Functions of ARC
- ARC Program
- ARC Strong Reference Cycles Class Instances
- ARC Weak and Unowned References
- Strong Reference Cycles for Closures
- Weak and Unowned References
SWIFT-OPTIONAL CHAINING
- Optional Chaining as an Alternative to Forced Unwrapping
- Defining Model Classes for Optional Chaining & amp; Accessing Properties
- Calling Methods Through Optional Chaining
- Accessing Subscripts through Optional Chaining
- Accessing Subscripts of Optional Type
- Linking Multiple Levels of Chaining
- Chaining on Methods with Optional Return Values
SWIFT-TYPE CASTING
- Defining a Class Hierarchy
- Type Checking
- Down casting
- Typecasting: Any and Any Object
- Any Object
SWIFT-EXTENSIONS
- Computed Properties
- Initializers
- Methods
- Mutating Instance Methods
- Subscripts
- Nested Types
SWIFT-PROTOCOLS
- Property and Method Requirements
- Mutating Method Requirements
- Initializer Requirements
- Class Implementations of Protocol Initializer Requirements
- Protocols as Types
- Adding Protocol Conformance with an Extension
- Protocol Inheritance
- Class Only Protocols
- Protocol Composition
- Checking for Protocol Conformance
SWIFT-GENERICS
- Generic Functions: Type Parameters
- Extending a Generic Type
- Type Constraints
- Where Clauses
SWIFT-ACCESS CONTROL
- Access Control for Function types
- Access Control for Enumeration types
- Access Control for Subclasses
- Access Control for Constants, variables, properties and subscripts
- Getters and Setters
- Access Control for Initializers and Default Initializers
- Access Control for Protocols
- Access Control for Extensions
- Access Control for Generics
- Access Control for Type Aliases
App lifecycle
Overview of Cocoa App lifecycle in iOS9 and iOS10 App states.
GUI development
View controllers MVC concept Managing outlets and actions, handling different UI Components, Setting constraints and Debugging in depth.
Multiview Applications
Navigation based apps Applications with tabs Managing multiple view controllers.
Apps with table view
Custom table view cell Managing table data Respond to row selection, delete rows in table view, Rearrange rows in table view.
Collection View
Collection view Design Custom cell Adding supplementary views.
Audio and Video
Include Movie player, Manage movie player notifications Include background audio Different frameworks to play audio
UCore Animation
Overview of core animation Layer Concept The iPhone and iPad Coordinate System The frame, bounds, center, and origin Anima table properties of a view Animation Functions and events.
Include Map
Introduction to Map Kit API Include Map in Application Add annotations in Map.
Universal Apps
Developing universal Apps Managing multiple views in universal Apps Basic image requirements for iPhone and iPad.
Preferences
Preferences overview Data types in user defaults Handling user defaults database.
Core Data
Using Core data in Apps, NSManaged Object Model, Core Data framework.
SQLite
App sandbox Standard App Directories Introduction to SQLite, SQLite functions and result codes Manage data using SQL commands.
Address Book API
Address book concepts Including address book database and UI Accessing data from address book database.
Cocoa Pods
Adding and Using Pod file in projects.
iPad App Development
iPad App Development in detail Popover segues
Local notification
Device specific notification Schedule local notification Handling notification on device Application specific notification Concept of notification Centre Register and post notifications.
HTML in App
Introduction to HTML Designing App using HTML Include websites in App.
Web services with XML/JSON
Introduction to web services Xml parsing in depth Json parsing in depth.
Authentication and Authorization
Explain about Authentication and Authorization, Describe Anonymous Authentication, Understand Windows Authentication, learn how to use Forms Authentication
Integrating face book and twitter in app
Sending emails from app Face book post from app Tweet from app User Authentication using face book account.
Apple push notification service
Concept of push notification Registration Handling Push receipt.
Appstore Ecosystem
Create Developer Certificate Bundle application for distribution Submission to Appstore and Appstore ecosystem.