After the completion of the iOS Developer at LearnFromGuru, you will be able to:
1. Understand the core construct of newly introduced Swift Programming Language
2. Leverage Swift’s new language features like optionals and closures
3. Create Extensions to extend Swift’s Out Of Box functionality
4. Create Generics to increase our code’s flexibility and power
5. Understand Swift’s new initializer pattern
6. Understand iCloud & Core Data Framework
7. Work with Autolayouts to build applications for all screen sizes 8. Work on a real life Project, implementing all the features learnt during the class to derive Business Insights
1. Understanding Swift
Learning Objectives – In this module, we will learn the basic building blocks of Swift technology. You will learn all basics principles of Swift Programming language like Loops, Conditions and Structures.
Topics – Introduction to Swift, Introduction to XCode IDE, Structure of Swift program, Compiling and building a Hello world, Swift Playground, Basic Syntax, Variables and data types, Structs and Classes.
2. Getting Started with Swift
Learning Objectives – In this module, we will take you through different collections types available in Swift. You will learn to create Classes and Enums along with Protocols & Generics. You will also learn newly introduces Tuples, Closures and Subscripts.
Topics – Working with collections, Protocols and Extensions, Generics, Tuple, Functions, Subscripts, Closures, Automatic Reference Counting.
3. iOS Development Basics
Learning Objectives – In this module we will take you through XCode and iOS Sdk Installation. You will learn to create basic iOS Application. You will also learn core pillars of iOS Application Development. We will learn to use iOS simulator to test iOS Applications.
Topics – Installing XCode and iOS SDK, Understanding XCode, Creating a simple iOS app, Project templates, Introduction to pillars of iOS app development-Tools-XCode, iOS Simulator, Instruments, Language- Swift, Design patterns, frameworks, Design-CorrectUI, AppleHIG, Testing, Provisioning, Signing, Submitting, Using iOS Simulator, MVC pattern in iOS app development
4. Storyboard Controllers and Layouts
Learning Objectives – In this module, we will take you through iOS Application Lifecycle. You will learn different View Controllers available in iOS SDK to create different types of Applications. This module will enable you to debug any iOS application to analyze in depth functionality. You will learn Auto Layouts to create Applications for different screen sizes. We will also teach you to effectively use iOS Storyboards to create multiple page iOS applications.
Topics – Lifecycle of iOS Application, Understanding Delegation, iOS View Controllers, Creating UI, Introduction to Layout and Views, designing responsive interfaces with Auto layout, Create a sample UI, Walkthrough of controllers, Debugging iOS application.
5. Table View, Collection View & Various View Controllers
Learning Objectives – This module will concentrate on TableViews & CollectionView which are considered to be heavily used views in any iOS Application. You will learn how to create TableView & CollectionViews and perform various operations on it.
Topics – Introduction to Table View, Creating a basic table view and data source, Loading data into TableView, Reusing table view cells, Customizing table views, UI CollectionView, UI RefreshControl, Introduction to multiple-view applications, Using navigation controller, Introduction to a master-detail application, Creating a tab-bar-driven application, UI Page View Controller.
6. Universal App, Size Classes & Camera
Learning Objectives – In this module you will learn to create applications which work both on iPhone & iPad. You will learn to use Size Classes to support multiple screen. This module will also teach you to capture images from Camera or Gallery
Topics – UISplitViewController, Master-detail application, Using Size Classes for Adaptive Layout, Using Camera & Gallery to Capture Images.
7. Animation, Location, Maps & Social Sharing
Learning Objectives – In this module you will learn about iOS Animation framework while working on Core Animation, UIKit Dynamics. You will also learn to use Facebook Pop Animation framework. You will also learn to capture device location and displaying locations on Map. Last but not the least this module will also teach you to share contents right from your iOS Application using UI Activity View Controller.
Topics – Animations- Core Animation, UIKit Dynamics, Facebook Pop Animation, Working with Maps-MK MapItem and MKPlacemark, CL Location Manager, MK Map View,UI Activity View Controller to perform Social Sharing.
8. JSON Handling, Network Operation & Image Caching
Learning Objectives – In this module you will learn to create iOS Applications which can perform network operations using popular Alamofire open source library. You will also learn to handle JSON Data using SwiftJSON Library & Image caching using HanekeSwift.
Topics – Networking with Alamofire , SwiftyJSON & HanekeSwift, Introduction to networking in iOS application, Adding/Managing frameworks using Carthage, JSON Handling using SwiftJSON, Performing Networking using Alamofire, Downloading & Caching images using HanekeSwift.
9. Data Persistence and Storage
Learning Objectives – This module will enable you to work with Core Data database framework. You will perform various CRUD operations on Data. You will also learn to use different storage options available in iOS SDK.
Topics – iOS data persistence, Using NS User Defaults to store and read information, Property Lists-Working with Core data, Introduction to Core Data, creating models with entities, saving models, Fetching model, Edit and remove models, Sample application implementing Core data.
10. CloudKit, Parse and Submitting Apps to App Store
Learning Objectives – This module concentrates on teaching you Cloud kit and Parse to save and retrieve data to/from Cloud. We will also take you through all the steps involved in submitting an application to Apple App Store.
Topics – Implementing Cloud Kit Storage, interact with Parse backend, Localizing Application, Submitting an App to Apple App Store.