Programming in Swift for iOS Development Training Course

Programming in Swift for iOS Development Training Course

Maryland, Virginia, Washington D.C., Virtually Online Live & On-Site

Programming in Swift for iOS App Development Course Description:

With Swift, Apple has introduced a fast and innovative new programming language aimed specifically at iPhone, iPad and OS X App Development. Modern and concise, Swift represents a major departure from Objective-C in both structure and syntax as it introduces many new programming concepts. This course will thoroughly cover all the major features of Swift, from basic variable and constants declarations to working with Collection Objects, Optionals, Variadic and Curried Functions, Tuples, Closures, Control-Flow statements, and the creation of custom Swift Classes. The course is aimed at creating a solid foundation in Swift programming so as to easily enable moving towards iPhone, iPad and OS X App Development using Swift.

Locations for Programming in Swift for iOS App Development:

In Person at ThinkB!G’s Office in Columbia, MD (next to the Columbia Mall)
Online Live from Anywhere
Private Custom Training On Site at Your Location

Times for Programming in Swift for iOS App Development:

In Person & Online Live: 8:30AM-3:00PM ET / 5:30AM-12:00PM PT (30 Minute Lunch)
Private Custom & Project Based Training: Your preference
*Please click the Dates To Register tab above to see all dates & times available.*

Prerequisites for Programming in Swift for iOS App Development:

This class for beginner programmers and programmers who are not familiar with Swift. It is recommended as the for our prerequisite/companion class to the 5-day iOS 8 App Development Using Swift class.

Job Roles That Use Swift:

Programmers
App Developers

Projects That Use Swift:

iOS, OS X & watchOS Development

Programming in Swift for iOS App Development Class Includes:

Hands-On Training Led by Certified Instructors
Print and/or Digital Courseware
Certificate of Completion
Continental Breakfast Every Day (In Person Only)
Catered Gourmet Deli Lunch Every Day (In Person Only)
Unlimited Snacks and Refreshments (In Person Only)
Notebook & Pen (In Person Only)
Free Parking (In Person Only)

Software Versions:

ThinkB!G open enrollment classes are taught on the most current version of software whenever possible. To request a specific version, please Contact Us or call us at 301-362-2250.

Testimonials for Programming in Swift for iOS App Development:

“My experience was good as compared to the price. I have learned good amount of stuff but I believe training should be three days instead of two. So that instructor could cover more topics from the book.” – Imran N., Heartland Payment Systems

“Think Big has outstanding resources/classes and [The Instructor] was an excellent teacher. I do not have a programming background but I was able to learn a tremendous amount of information. Thank you ThinkB!G! See you again soon.” – Joanne M., JHU

Lots of great project ideas came from this class. Great instructor, great to work with and is definitely patient. I would recommend some sort of protocol for when students register. I felt I could have learned more, unfortunately I was in a class with students who had zero knowledge of using a Mac, so I had to compromise. In the future, maybe you can have some sort of proficiency level where those with experience can be in once class and those with no knowledge would take the class at a different time.” – Mary S., Navanti Group,  LLC

Related Training and Certification Courses:

Cross-Platform Mobile App Development

Programming in Swift for iOS Development Training Outline

I. Creating and Running a Swift Project in Xcode
1. Xcode IDE overview
2. Creating and using Playgrounds
3. Building and testing programs – the workflow

II. Variables, Constants, and Swift Data Types
1. Variables and Constants
2. Data Types: Ints, Floats, Doubles, Bools and Characters
3. Strings – Literals, Mutability, Interpolation, Concatenation
4. Type Inference & Type-Safety
5. Type Casting
6. Unicode characters in Variable declaration

III. Working with Collection Objects
1. Arrays
i. Array Literals
ii. Creating and Initializing Arrays
iii. Accessing & Modifying Arrays
iv. Iterating over Arrays
v. Assignment and Copy Behavior for Arrays
2. Dictionaries
i. Dictionary Literals
ii. Initializing
iii. Modifying Dictionaries
iv. Iterating over Dictionaries
v. Assignment and Copy Behavior for Dictionaries
3. Sequence Operations
i. map
ii. filter
iii. reduce

IV. Control-Flow
1. Conditionals
i. IF and Ternary Statements, Compound Relationals
ii. Switch Statement – switch with Strings, Range-Matching, Tuples, Value Bindings, WHERE clauses
iii. Control Transfer Statements – Continue, Break, Fallthrough, Return
2. Loops
i. FOR loops, FOR-IN loops, FOR-Condition-Increment
ii. WHILE loops, DO-WHILE loops

V. Writing Classes in Swift
1. Properties
i. Stored Properties – Variable or Constant
ii. Optional Properties
iii. Computed properties – Read/Write, Read-Only
iv. Lazy Properties
v. Property Observers
vi. Type Properties
2. Methods
i. Instance Methods
• init methods – Designated Initializer, Convenience Initializer, Initializer Delegation, Initializer Chaining
• Customizing Initialization
ii. Local and External Parameter Names
iii. The Self keyword
iv. Type Methods

VI. Inheritance
1. Base Classes, Creating Subclasses
2. Overriding Methods & Properties
3. Preventing Overrides

VII. Optionals
1. Forced Unwrapping
2. Optional Binding
3. Implicitly Unwrapped Optionals
4. Optional Chaining

VIII. Functions
1. Basic, Argumented, Variadic Parameters Functions, inout Parameter Value Functions, Curried Functions, Nested Functions,with Default parameter values, with Return types, Returning Multiple/Tuple Types
2. Constant and Variable Parameters
3. Function Types
4. Functions Returning functions

IX. Structures
1. Properties & Methods
2. Memberwise Initializers
3. Mutating Functions
4. Structures vs. Classes
5. Asking Questions about Classes

X. Enumerations
1. Declaration & Creation
2. Matching with Switch Statements
3. Associated Values
4. Raw Values

XI. Generics
1. Generic Functions
2. Generic Types
3. Type Parameters
4. Extending Generic Types
5. Associated Types

XII. Protocols
1. Protocol Declarations and Syntax
2. Property and Methods Requirements
3. Requiring Initializers
4. Protocol Types
5. Swift Standard Library Protocols
6. GeneratorType, SequenceType, CollectionType
7. Protocol Inheritance

XIII. Closures
1. Closure Expressions & Syntax
2. Closure Context Type Inferrence
3. Shorthand Argument Names
4. Trailing Closures

XIV. Debugging
1. Creating Breakpoints
2. Advanced Breakpoints
3. Debugging in LLDB

XV. Memeroy Management – Automatic Reference Counting
1. Weak References
2. Strong References
3. Unowned References

This video will show you more information about Swift. This is not a reflection of our online courses which are live.

Excellent training for Intro to iOS App Development. [I] learned quite a bit in a short amount of time!” – Dan H., Johns Hopkins Medicine

“My experience was good as compared to the price. I have learned good amount of stuff but I believe training should be three days instead of two. So that instructor could cover more topics from the book.” – Imran N., Heartland Payment Systems

“Think Big has outstanding resources/classes and [The Instructor] was an excellent teacher. I do not have a programming background but I was able to learn a tremendous amount of information. Thank you ThinkB!G! See you again soon.” – Joanne M., JHU

Great class & facilities. Staff was very friendly and helpful. Wonderful experience.” – Donna C., MD US Courts

Lots of great project ideas came from this class. Great instructor, great to work with and is definitely patient. I would recommend some sort of protocol for when students register. I felt I could have learned more, unfortunately I was in a class with students who had zero knowledge of using a Mac, so I had to compromise. In the future, maybe you can have some sort of proficiency level where those with experience can be in once class and those with no knowledge would take the class at a different time.” – Mary S., Navanti Group,  LLC

More Testimonials

We have instructors ready to teach this class, but we do not currently offer it on our open enrollment schedule. If you are interested in this class, please fill out the form below and we will contact you shortly about your training options!