Swift Programming Language training

Swift Programming Language training Course Content

Introduction to Swift Programming
  • Getting started with application development
  • Evolution of Swift
  • Leveraging Xcode for the rapid application development
  • Analyzing syntax of a simple application
  • Swift programming fundamentals
  • Decisions
  • Loops
  • Logic
  • Coding variables, constants, statements & control blocks
  • Testing code in interactive Playgrounds
Working with the Data Types
  • Appraising built in types
  • Choosing value types vs. reference types
  • Simplifying code with type inference
  • Writing safe & expressive code with optionals
  • Creating user-defined types
  • Returning compound values with tuples
  • Selecting among enums, structs & classes
Developing Classes, Structures & Enumerations
  • Declaring & initializing classes
  • Encapsulating the specific tasks using methods & properties
  • Applying inheritance & polymorphism to class objects
  • Setting initial state with initializers
  • Controlling access with public, private & internal modifiers
  • Organizing compound values with structures
  • Populating the struct properties with the memberwise initializer
  • Contrasting functionalities of structs & classes
  • Designating groups of values with enumerations
  • Providing additional information with computed properties
  • Assigning the initial values with custom initializers
  • Matching enumeration values in switch statements
  • Storing & accessing associated values
Constructing Functions & Closures
  • Designing reusable functions for code modularity
  • Performing the specific tasks with self contained blocks of code
  • Modifying variables with in-out parameters
  • Nesting the functions within functions to perform complex tasks
  • Passing functions as function arguments
  • Reducing code with closures
  • Morphing the functions into closures
  • Simplifying programming with anonymous in-line blocks
  • Capturing the surrounding context
  • Exploiting generics in applications
  • Declaring generic functions that use generic types
  • Constraining types passed to a generic function
Structuring Object-Oriented Class Hierarchies
  • Reusing classes through aggregation
  • Incorporate the has-a relationship in class design
  • Employing collection types including arrays & dictionaries
  • Iterating collections
  •  Exposing interfaces with protocols
  • Conform to protocols to provide standard functionality
  • Forming contracts with protocols
  • Benefit from protocols in app design
  • Extending the classes with inheritance
  • Enhancing class functionality beyond a default implementation
  • Identifying the is-a relationship
  • Defining initializers in subclasses
  • Leveraging the dynamic binding through polymorphism
  • Customizing the existing classes with extensions
  • Avoiding excessive inheritance
  • Modify the classes without access to the base class source code
Integrating Swift with Objective-C
  •  Interacting with Objective-C frameworks
  • Instantiating the Objective-C classes in Swift
  • Accessing properties & methods
  • Incorporating Objective-C & Swift in the same project
  • Bridging Objective C header files into Swift
  • Importing the Swift code into Objective C
Building GUIs with Swift
  • Creation of simple iOS app
  • Connecting actions & outlets