Sorry ! There Are No Active Batches

Course Overview

This course will help you to learn Advanced Swift language, CoreData, Storyboard, SwiftUI, Auto-layout, Unit Testing, RESTful APIs & related technologies to build IOS applications. The course will be mentored & guided by the Industry expert having hands-on experience in design, development & maintenance of IOS applications. The course includes 1 major & 1 minor projects based on real-world applications with guided lab sessions.

It will be an online live (Live Stream) class, so you can attend this class from any geographical location. It will be an interactive live session, where you can ask your doubts to the instructor (similar to offline classroom program).

It is a weekend Live classes Batch scheduled on every

  • Saturday - 8:00 PM - 11:00 PM (IST)
  • Sunday- 8:00 PM - 11:00 PM (IST)
Should know the Basics of Programming ( in any one language )

Recommended for:
Anyone who wants to learn and build industry-ready IOS applications

Course Features

  • Course mentored by Industry expert
  • Internship Opportunities at GeeksforGeeks
  • Project-based learning which will add stars to your resume
  • Course completion certificate
  • Access to the recorded lectures 
  • 2 projects based on real-world applications
    • 1 Major Project
    • 1 Minor Project
  • Get working experience in real-time applications
    • iOS apps with Storyboard 
    • iOS apps with SwiftUI 
    • RESTful web services

What You Will Learn

  • Advanced Swift
  • Building iOS applications
  • CoreData
  • RESTful APIs
  • Storyboard with Autolayout
  • SwiftUI
  • Test your code automatically with XCTest.
  • Integrating third-party libraries

Course Content


 - IOS Architecture and SDK frameworks 

 - IOS and SDK Version Compatibility 

 - Apple IOS Developer Program 


 - Tour of the IDE 

 - Templates, Projects, and Workspaces 

 - Creating a New Project 

 - Application States

 - AppDelegate

 - Simulator

Basics of Swift 

 - Variables and Constants

 - Variable Types

 - Basic operators

 - Collections Types

 - Control Flows

 - Functions

 - Optionals

 - Enumerations

 - Closures

Building Layout in iOS 

 - The View Hierarchy

 - Storyboard 

 - Controls

 - Text and Web Views

 - Buttons

 - IBOutlets and IBActions 

 - Controlling Rotation Behaviour

 - View Autosizing

 - Autolayout 

Intermediated Swift 

 - Classes 

 - Structs

 - Initialization

 - Deinitialization

 - Inheritance

 - Properties/Methods/Subscripts

Table View

 - Static and Dynamic Table Views

 - Delegates and DataSources

 - Table View Styles

 - Custom Cells 

Local storage 

 - User Defaults

 - Core Data


 - Navigation bar

 - Tab bar

Collection View & Data transfer 

 - Implement 2 column list

 - Customise UI

 - Drag and Drop

 - Delegation

 - NotificationCenter

Advanced Swift 

 - Protocols

 - Generics

 - Extensions

 - Tuples

 - Type Casting

 - Nested Types

 - Error Handling

Third-party libraries management 

 - Swift Package manager

 - Cocoa pods 

 - Alamofire integration


 - Sending HTTP GET and POST Requests

 - Parsing JSON 

 - Asynchronous Downloads 

Multitouch, Taps, and Gestures 

 - The Responder Chain

 - Enabling Multitouch on the View

 - Gesture Motions

 - Gesture Recognisers 


 - Custom View

 - How to animate view


 - Grand Central Dispatch (GCD)

 - Serial and Concurrent Queues

 - Main Dispatch Queue

 - Operation Queues 

 - Completion Blocks


 - Introduction 

 - Lists

 - State

 - Binding

 - List with Sections

 - Naviagtion

 - Showing Details

 - Animations

 - Previews

Minor Project 1


 - Local Notifications

 - Push Notifications

UI Components 

 - UIPickerView

 - UIDataPickerView

 - Alert messages

 - Timer

 - Webview

Localization and Asset management

 - Text Localization

 - Language and Region 

 - Asset management

Performance Optimization 

 - Instruments

 - Measuring Performance

 - Responsiveness

 - Memory Usage, Spikes, and Leaks

Unit Testing

 - Separate business logic

 - Write Unit tests using XCTests


 - How to launch app with external deep-link

 - How to navigate users to specific screen

Major Project:

Course Mentors

Keshavamurthy (Instructor)

Tech Lead at Halodoc | Ex-Rakuten | 12+ years of Exp.

Keshav is a passionate Software Engineer and an experienced mobile app developer. He has a sound knowledge of technologies like iOS, Swift, SwiftUI, Objective-C, REST APIs, CoreData, Android, HTML, CSS, and JavaScript. He is passionate about learning new technologies. Worked with Rakuten for 4.5 years as a lead engineer. Currently working with Halodoc as Tech Lead.


  1. How will these classes be conducted?
    It will be an online live (Live Stream) class, so you can attend this class from any geographical location. It will be an interactive live session, where you can ask your doubts to the instructor (similar to our offline classroom program). You just need to have working internet and a PC/Laptop.
  2. Is there any number to contact for any query?
    You may call us on our toll-free number: 1800 123 8622  or Drop us an email at
  3. How will we work on the projects?
    You will begin the project with the help of a course mentor. Each student will be guided by the mentor in the class itself.
  4. Is this a certification course?
    Yes, It's a GeeksforGeeks certified program that includes projects along with learning. All students will receive a completion certificate.
  5. What is the size of a batch?
    The planned batch size is 40.
  6. How can I register for the course?
    Click on the Signup for free button & Pay 
  7. What are the course duration and class timing?
    The course includes 12 lectures which will be completed in 6 weeks.
    It is a weekend Live classes batch scheduled on every Saturday & Sunday at 8:00 PM - 11:00 PM (IST).
  8. When can i access the recorded session of the class (if someone misses the live class)?
    The recorded session of the class will be uploaded in 2 working days.

Course Registration

Batch Date Type Register
IOS-1 19 September '20 to 25 October '20 Live Classes
Registration Closed