iOS App development

Leading the Way in Skilling and Innovation

This course focuses on Mobile App development for iOS devices like iPhone and iPad, using Swift language and Xcode IDE. The participants will learn Swift programming language and all aspects of iOS application development including Tools, Language, Frameworks, Design, Process and best practices. 

Master Swift, design elegant interactions, and create a fully functioning iOS app.

The course can be taken up by faculty as a part of Professional development or by a student to skill-up.

Course Description

The course is designed comprehensively to impart programming skills and knowledge to students for developing iPhone and iPad applications. This course is updated with latest language features and basic concepts. The participants will learn Swift programming language and covers all aspects of iOS application development including Tools, Language, Frameworks, Design, Process and best practices.

Learn how to build and run your apps on iOS using the swift programming language. This course teaches you the common tools, interface elements, design patterns you need to build apps for iPhone and iPad. It includes detailed explanations of iOS technologies, hands on use of Apple’s development tools and coding exercises in Swift that use common iOS frameworks.

 

Objectives

What you’ll learn:

  • Use of Swift language in XCode IDE 
  • Most used frameworks like CoreData, AVFoundation, MapKit
  • How to use the tools and APIs in the iOS SDK 
  • Techniques to build scalable apps using MVC (Model, View Controller) techniques 
  • Start developing your own iOS apps with confidence

Audience

  • New to the iOS development environment 
  • Developers from different platform 
  •  IT / Computer Science students & educators

Prerequisites

  • Basic understanding of Object Oriented Programming Paradigm 
  • Basic programming concepts of any other programming language
 

Topics

Introduction to Apple Mobile app devices and Mac Systems.

  • iPad/iPhone Basics
  • iOS Architecture
  • Life cycle of Mobile app development
  • iMac/Mac desktop/laptop Basics

Introduction to Swift Playground.

  • Basics of Swift, Loops, and Functions
  • Closures, Enumerations
  • Optionals, Structures and Classes
  • OOPs Concepts
  • Protocols and delegates
  • Extensions
  • Memory Management

UI / UX Designing with Apple Human Interface Guidelines

  • Paper prototyping
  • Designing Intuitive screens 
  • Design screens using sketch
  • Linking them using inVision

Working with ViewControllers, UI elements, NavigationControllers.

  • Navigation Controllers
  • View Controllers and Navigation based apps
  • Working with UI Elements 
  • Creating custom UI elements
  • Navigating between ViewControllers
  • Data passing between View Controllers

Tab Bars Navigation, Views.

  • Creating TabBarControllers
  • Configuring the tabs to access different ViewControllers

Table Views and Collection Views.

  • Design patterns for Navigation-based Apps
  • Creating and Configuring a Table View
  • Table View Cells and Collection View Cells
  • Data source
  • Delegate
  • Flow-layout object

Integration of camera and Integration of audio into the app.

  • Using AVFoundation framework 
  • Integrating camera into the app
  • Integrating audio files into the app

Working with CoreData framework.

  • Creating a database in your app
  • Managing the records in the database
  • Creating persistent storage for data

 Working with MapKit and Introduction to web services.

  • Using CoreLocation framework
  • Accessing and displaying the current location of the user
  • Introduction to web services

Mini Project

Course Description

This is an advanced Apple application development course in which students learn expert level of application development for iPhone/iPad. The course deals with the language, framework and processes that go into iOS app development. The course will build on various advance concepts of language, framework and processes using those previously learned fundamentals. The iOS app development training will be hands- on, in addition to the know-how of using Swift on Xcode  IDE environment, and using the Model, View & Controller techniques and using API tools to build apps. This course covers advanced programming concepts and teaches students to develop  sophisticated Mobile Applications, including real time databases, advanced frameworks like Sprite Kit, Core ML and Augmented Reality.

 

Objectives

What you’ll learn:

  • Design apps to suit all the devices and orientations.
  • Handle multiple tables of data using coreData framework
  • Authenticate users using AccountKit
  • Manage real time database using Firebase.
  • Understand Advanced concepts of WebServices
  • Work extensively on MapKit framework
  • Understand JSONSerialization and the process of Uploading App to AppStore
  • Notify users by adding Push notifications
  • Create games using SpriteKit
  • Learn to integrate machine learning into your app
  • Integrate iMessage framework into the app
  • Integrate Health Kit, Siri Kit, Cloud Kit into the app
  • Integrate Augmented Reality using ARKit

Prerequisites

  • Have successfully completed the Beginner to Intermediate course conducted by  Creative Infotech
  • Have good experience of working with Swift

Topics

Sprite Kit

  • Adding nodes to the scene
  • Understanding SKPhysics
  • Detecting collisions
  • Adding actions to nodes

AR Kit

  • Adding 3D objects
  • Plane detection
  • Hit Test detection

Animations

  • Adding animations to the UI elements
  • Adding CGAffineTransformations

Machine Learning and CoreML

  • Core ML on iOS
  • Using different models
  • Object detection

Autolayout

  • Necessity to include Auto Layout
  • Setting Basic constraints to UI Components
  • Previewing the layout on different orientations.
  • Calculating multipliers
  • Setting constraints using multipliers
  • Different types of constraints 

Webservices and JSON Serialisation

  • JSON data format 
  • Fetch data from an API
  • Display it in your app 

Firebase

  • Adding firebase to the app
  • Storing user credentials in the database
  • Storing data 
  • Fetching data using the Key
  • Displaying , updating data using TableView

Push Notifications

  • Defining Notifications that can be used for different activities
  • Scheduling local Notification
  • Creating a trigger and content to display in the notification
  • Add a Reminder Using Notification Actions.
  • Create a Respond to actionable notifications
  • Adding method to receive notification in foreground.

Health Kit

  • Use health kit in application
  • Simulate addition of data to Health kit
  • Update Health kit
  • Read and write health and activity data to their Health app

Natural Language Processing ( NLP)

  • Define Natural Language Processing
  • Relate to the applications of NLP
  • Interpret the working of NSLinguistic Tagger Class.
  • Create an app that performs tokenisation, lemmatisation, language identification, parts of speech recognition and named identification on a given piece of text.

We conduct Internship program for various branches of Engineering students like CSE, ISE, ECE and EEE Branches. We  train the students on technical concepts and soft skills. The students develop an app for an iOS device, starting from scratch. They gather the requirements, conduct feasibility analysis, create a prototype, draw Data Flow Diagrams, prepare project planning report, design the interface, write the code and test it on the device. Throughout the program, students work collaboratively and develop skills like creativity, critical thinking, logical reasoning, communication, analytical thinking and leadership.

Objectives

  • To equip the student with the knowledge about latest tools and technology
  • To empower the student with the domain knowledge of iOS App development
  • To expose students to a working environment
  • To introduce Project Based Learning (PBL)

Technical concepts

  • Xcode (Latest Version)
  • iOS App Development
  • Adobe XD
  • inVision
  • Sketch
  • LucidChart
  • Firebase
  • Github
  • SourceTree
  • Blender
  • Google SketchUp
  • Project Planning
  • Project monitoring
  • MacOS essentials
  • Data flow diagram
  • Investment types
  • Digital Literacy
  • Final Cut Pro

Soft Skills

  • Time management and Time Robbers
  • Learning Styles
  • Self development
  • Anger management
  • Professional Skills
  • Digital Literacy Skills
  • Life Skills
wpChatIcon