Course Overview

Learn how to build and run your first apps on iOS using the Swift programming language. This 3- day, hands-on course teaches you the common tools, interface elements, and 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.

3 days
    • Learn how to build native apps using the iOS SDK.
    • Learn how to use Xcode and the Simulator.
    • Learn how to use common navigation patterns and UI controls.
  • Interface Builder Basics
    Learn how to navigate through Interface Builder, add elements onto the canvas, and interact with those elements in the code.

    Displaying Data
    Use Interface Builder to create the beginnings of an app, adding labels and images.

    Controls in Action
    Use Interface Builder to add buttons, switches, and sliders to a scene. Create actions and outlets, write some basic code, and learn how these tools work together.

    Auto Layout and Stack Views
    Learn the fundamentals of Auto Layout for building precisely designed user interfaces.

    Segues and Navigation Controllers
    Learn how to use segues to transition from one view controller to another, and how to define relationships between view controllers. Learn how navigation controllers can help you manage scenes that display related or hierarchical content.

    Tab Bar Controllers
    Learn how to use tab bar controllers to organize different kinds of information or different modes of operation.

    View Controller Life Cycle
    Learn more about the view controller life cycle so you can understand the potential of this important class.

    Building Simple Workflows
    Tie together the concepts you’ve learned so far to design simple workflows and familiar navigation hierarchies.

    App Anatomy and Life Cycle
    Explore the different life cycle states and the delegate hooks for executing logic as the app moves through each state.

    Model View Controller
    Learn how to organize files, structures, and classes into a design pattern called Model- View-Controller.

    Table Views
    Learn the basics of creating table views in an iOS app.

    Intermediate Table Views
    Learn how to customize your table views by creating custom cells, dynamically inserting and removing cells, using static table views to present forms or other non-changing lists, and allowing the user to swipe to delete cells.

    Saving Data
    Learn how to implement data persistence using NSCoding, a protocol for saving files to your app’s Documents directory.

    System View Controllers
    Discover how to incorporate a variety of system view controllers for displaying alerts, sharing content, sending messages, and accessing the camera and photo library on an iOS device.

    Building Complex Input Screens
    Learn how to use a combination of static and dynamic table views. Explore how to use controls and views to build custom workflows that put an elegant face on any kind of business information.

    Working with the Web: HTTP and URLSession
    Discover how web data is sent and received, how URLs work, and how to fetch data for use in your app.

    Working with the Web: Decoding JSON
    Learn how to read and write basic JSON. Explore how to convert JSON to and from Swift types and into your own custom model objects.

    Working with the Web: Concurrency
    Become familiar with the concurrency system in iOS and learn how to make sure code that updates the user interface is executed in the right place.

  • Introduction to Swift: From Playgrounds to Protocols—discover, explore, and demonstrate how to use the fundamental building blocks of the Swift programming language.

    Getting Started with iOS Development videos: Learn about Apple’s advanced mobile device hardware, characteristics of modern apps, the iOS software development kit, Apple developer programs, and Apple’s approach to security and distribution.

    Basic computer programming concepts: You should be comfortable with the basic concepts of computer programming, including variables, strings, logic, and classes. You’ll be expected to write code as part of the training.

    • Software developers
    • Software architects
    • Technology consultants