iOS Development and Training
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.
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 overview Methods in protocols How to conform to protocols.
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 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.
- Import in Swift
- Tokens in Swift
- White Space
- Build in Data types
- Bound Values
- Type Aliases
- Type Safety
- Type Inference
- Variable Declaration
- Bound Values
- Type Aliases
- Type Safety
- Type Inference
- Forced Unwrapping
- Automatic Unwrapping
- Optional Binding
- Constant Declaration
- Type Annotation
- Naming Constant
- Printing Constant
- Integer Literals
- Floating Point Literals
- String Literals
- Boolean Literals
- Arithmetic Operators
- Comparison Operators
- Logical Operators
- Bitwise Operators
- Assignment Operators
- Range Operators
- Misc Operators
- Operators Precedence
- If Statement
- If-else Statement
- if-else.if else Statement s
- Nested if Statement
- Switch Statement
- The ? .Operator
- 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
- Create a String
- Empty a String
- String Constants
- String Interpolation
- String Concatenation
- String Length
- String Comparison
- Unicode Strings
- String Functions and Operators
- Creating Arrays
- Accessing Arrays
- Modifying Arrays
- Iterating Over an Array
- Adding Two Arrays
- The count Property
- The empty Property
- 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
- 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
- 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
- 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
- Base Class
- Methods Overriding
- Property Overriding
- Overriding Property Observers
- Final Property to prevent Overriding
- 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
- Deinitialization to Deallocate Memory Space
- 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
- 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
- Defining a Class Hierarchy
- Type Checking
- Down casting
- Typecasting: Any and Any Object
- Any Object
- Computed Properties
- Mutating Instance Methods
- Nested Types
- 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
- Generic Functions: Type Parameters
- Extending a Generic Type
- Type Constraints
- Where Clauses
- 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
Overview of Cocoa App lifecycle in iOS9 and iOS10 App states.
View controllers MVC concept Managing outlets and actions, handling different UI Components, Setting constraints and Debugging in depth.
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 Design Custom cell Adding supplementary views.
Audio and Video
Include Movie player, Manage movie player notifications Include background audio Different frameworks to play audio
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.
Introduction to Map Kit API Include Map in Application Add annotations in Map.
Developing universal Apps Managing multiple views in universal Apps Basic image requirements for iPhone and iPad.
Preferences overview Data types in user defaults Handling user defaults database.
Using Core data in Apps, NSManaged Object Model, Core Data framework.
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.
Adding and Using Pod file in projects.
iPad App Development
iPad App Development in detail Popover segues
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.
Create Developer Certificate Bundle application for distribution Submission to Appstore and Appstore ecosystem.