Books & Videos

Table of Contents

Chapter: Introduction

Swift Fundamentals LiveLessons: Introduction to Part I

14m 32s

Chapter: BeforeYouBegin: Setting Up Your Development Environment

Lesson Introduction

01m 40s

Before You Begin

09m 3s

Chapter: Lesson 1: Introduction to Swift and Xcode 6

Lesson Introduction

02m 3s

Swift Introduction

25m 57s

Creating Swift Apps with Xcode 6: Creating a Playground

10m 57s

Creating Swift Apps with Xcode 6: Creating a Project

10m 3s

Chapter: Lesson 2: Introduction to Swift Programming

Lesson Introduction

02m 33s

A First Swift Program: Printing a Line of Text

10m 8s

Displaying a Single Line of Text with Multiple Statements

00m 49s

Displaying Multiple Lines of Text with a Single Statement

01m 43s

Composing Larger Strings with String Interpolation—Introducing constants, variables, type inference, type annotations, built-in types, initialization and Identifier naming

11m 8s

Addition program—Introducing the arithmetic operators and overflow checking

12m 4s

The if Conditional Statement and the Comparative Operators

10m 47s

Chapter: Lesson 3: Introduction to Classes, Objects, Methods and Functions

Lesson Introduction

02m 55s

Account Class: Defining a Class

10m 5s

Account Class: Defining a Class Attribute as a Stored Property

04m 46s

Account Class: Defining a public Stored Property with a private Setter

03m 33s

Account Class: Initializing a Class’s Properties with init

07m 20s

Account Class: Defining a Class’s Behaviors as Methods

05m 6s

Creating and Using Account Objects: Importing the Foundation Framework

02m 48s

Creating and Using Account Objects: Creating and Configuring an NSNumberFormatter to Format Currency Values

04m 42s

Creating and Using Account Objects: Defining a Function—formatAccountString

06m 42s

Creating and Using Account Objects: Creating Objects and Calling an Initializer

06m 18s

Creating and Using Account Objects: Calling Methods on Objects—Depositing into Account Objects

03m 13s

Creating and Using Account Objects: Calling Methods on Objects—Withdrawing from Account Objects

01m 36s

Value Types vs. Reference Types

06m 53s

Software Engineering with Access Modifiers

06m 27s

Chapter: Lesson 4: Control Statements; Assignment, Increment and Logical Operators

Lesson Introduction

02m 56s

if and if...else Conditional Statements and the Ternary Conditional Operator (?:)

08m 29s

Compound Assignment Operators

01m 24s

Increment and Decrement Operators

04m 0s

switch Conditional Statement

12m 15s

while Loop Statement and an Introduction to the Xcode playground timeline

04m 0s

do...while Loop Statement

03m 3s

for...in Loop Statement and the Range Operators: Iterating over Collections of Values with Closed Ranges, Half-Open Ranges and the Global stride Function; Locating Documentation about Swift Standard Library Features.

09m 58s

for...in Loop Statement and the Range Operators: Compound-Interest Calculations with for...in

12m 14s

for Loop Statement

04m 30s

break Statement

01m 3s

continue Statement

01m 8s

Logical Operators

04m 30s

Chapter: Lesson 5: Functions and Methods: A Deeper Look; enums and Tuples

Lesson Introduction

03m 31s

Multiple-Parameter Function Definition

07m 34s

Random-Number Generation: Rolling a Six-Sided Die 20 Times

04m 47s

Introducing Enumerations and Tuples: Dice Game Example; Tuples and Multiple Function Return Values; Tuples as Function Arguments

24m 23s

Scope of Declarations

09m 10s

Function and Method Overloading

05m 26s

External Parameter Names

11m 31s

Default Parameter Values

02m 10s

Passing Arguments by Value or by Reference

02m 10s

Recursion

02m 10s

Nested Functions

05m 13s

Chapter: Lesson 6: Arrays and an Introduction to Closures

Lesson Introduction

05m 45s

Array overview

05m 56s

Creating and Initializing Arrays

11m 46s

Iterating Through Arrays

09m 47s

Adding and Removing Array Elements

11m 0s

Subscript Expressions with Ranges—Slicing an Array

06m 50s

Closures and Closure Expressions

03m 1s

Array Methods sort and sorted

17m 42s

Array Methods filter, map and reduce—Introduction to Internal Iteration

07m 35s

Filtering an Array

05m 14s

Mapping an Array’s Elements to New Values

01m 55s

Reducing an Array’s Elements to a Single Value

01m 52s

Combining Filtering, Mapping and Reducing

03m 46s

Card Shuffling and Dealing Simulation—Class Card and an Introduction to Computed Properties

06m 1s

Card Shuffling and Dealing Simulation—Class DeckOfCards, Reference-Type Arrays and an Introduction to Optionals

09m 28s

Card Shuffling and Dealing Simulation—Shuffling and Dealing Cards, and Unwrapping Optional Values with Optional Binding and the if Statement

11m 31s

Passing Arrays to Functions by value and by reference

08m 2s

Multidimensional Arrays

12m 32s

Variadic parameters

06m 42s

Chapter: Introduction

Swift Fundamentals LiveLessons: Introduction to Part II

20m 57s

Chapter: Lesson 7: Dictionary

Lesson Introduction

03m 32s

Dictionary overview

04m 56s

Declaring Dictionary Key-Value Pairs and Dictionary Literals

06m 48s

Delcaring and Printing Empty Dictionary Objects

04m 29s

Iterating through a Dictionary with for...in

04m 56s

General-Purpose Generic Dictionary Printing Function

03m 36s

Dictionary Comparison Operators == and !=

03m 33s

Dictionary count and isEmpty properties

03m 18s

Dictionary with Values that are Arrays

06m 32s

Dictionary Properties keys and values

06m 32s

Inserting, Modifying and Removing Key-Value Pairs with Subscripting

08m 47s

Inserting, Modifying and Removing Key-Value Pairs with Dictionary Methods

07m 55s

Builing a Dictionary Dynamically: Word Countsin a String

07m 1s

Chapter: Lesson 8: Classes: A Deeper-Look and Extensions

Lesson Introduction

05m 42s

Time Class: Default Initializers and Property Observers

04m 14s

Stored Property Initialization and the Default Initializer

03m 1s

willSet and didSet Property Observers for Stored Properties

06m 17s

Computed Read-Only Properties universalDescription and description

03m 22s

Using Class Time

08m 20s

Class Time with Overloaded Designated and Convenience Initializers

10m 6s

Designated Initializers

06m 39s

Convenience Initializers and Initializer Delegation with self

02m 37s

Using Class Time’s Designated and Convenience Initializers

06m 40s

Failable Initializers in Class Time

15m 19s

Extensions to Class Time

07m 25s

Read-Write Computed Properties

09m 41s

Composition

07m 5s

Automatic Reference Counting, Strong References and Weak References

03m 18s

Deinitializers

01m 36s

Using NSDecimalNumber for Precise Monetary Calculations

06m 28s

Type Properties and Type Methods

12m 52s

Lazy Stored Properties and Delayed Initialization

02m 59s

Chapter: Lesson 9: Structures, Enumerations and Nested Types

Lesson Introduction

03m 18s

Prefer Constants and Immutability By Default

04m 41s

Time struct Definition with Default and Memberwise Initializers

08m 4s

Custom Initializers extension to struct Time

04m 51s

Computed Properties extension to struct Time

02m 27s

Mutating Methods extension to struct Time

04m 13s

Testing the Time struct

07m 9s

Enumerations and Nested Types

03m 56s

Card struct with Nested Suit and Face enum Types

04m 32s

Nested enum Type Suit

06m 28s

Nested enum Type Face

03m 58s

Using enum Constants in switch Statements

01m 59s

DeckOfCards struct

07m 7s

Testing the struct Types Card and DeckOfCards, and the enum Types Suit and Face; Creating an enum Constant from a Raw Value

08m 34s

Choosing Among Structures, Enumerations and Classes in Your Apps

04m 15s

Associated Values for enums

03m 49s

Demonstrating Associated Values with Optional<Int>

06m 48s

Chapter: Lesson 10: Inheritance, Polymorphism and Protocols

Lesson Introduction

03m 36s

Superclasses and Subclasses

02m 10s

An Inheritance Hierarchy

03m 19s

Utility Functions Used in Each of This Lesson’s Examples

04m 19s

Using Inheritance to Create Related Employee Types—Superclass CommissionEmployee

07m 29s

Using Inheritance to Create Related Employee Types—Subclass BasePlusCommissionEmployee

11m 31s

Using Inheritance to Create Related Employee Types—Testing the Class Hierarchy

13m 17s

Access Modifiers in Inheritance Hierarchies

04m 16s

Introduction to Polymorphism: A Polymorphic Video Game Discussion

05m 1s

Payroll System Class Hierarchy Using Polymorphism

02m 42s

Payroll System Class Hierarchy Using Polymorphism—Base Class Employee

04m 17s

Payroll System Class Hierarchy Using Polymorphism—Subclass SalariedEmployee

04m 50s

Payroll System Class Hierarchy Using Polymorphism—Subclass CommissionEmployee

03m 33s

Payroll System Class Hierarchy Using Polymorphism—Indirect Subclass BasePlusCommissionEmployee

02m 52s

Polymorphic Processing

14m 42s

Creating and Using Custom Protocols

10m 26s

Creating and Using Custom Protocols—Declaring Protocol Payable

07m 49s

Creating and Using Custom Protocols—Creating Class Invoice

11m 43s

Creating and Using Custom Protocols—Using Extensions to add Printable and Payable Conformance to Class Employee

04m 26s

Creating and Using Custom Protocols—Using Protocol Payable to Process Invoices and Employees Polymorphically

08m 26s

Additional Protocol Features

07m 20s

Using final to Prevent Method Overriding and Inheritance

01m 20s

Initialization and Deinitialization in Class Hierarchies—Basic Class-Instance Initialization

02m 9s

Initialization and Deinitialization in Class Hierarchies—Initialization in Class Hierarchies

03m 39s

Initialization and Deinitialization in Class Hierarchies—Overriding Initializers and Required Initializers

01m 53s

Initialization and Deinitialization in Class Hierarchies—Deinitialization in Class Hierarchies

01m 39s

Chapter: Lesson 11: Generics

Lesson Introduction

03m 52s

Motivation for generic functions

04m 45s

Generic Functions: Implementation and Specialization

05m 22s

Type Parameters with Type Constraints

05m 30s

Generic Types—Implementing a Generic Stack Type

07m 20s

Generic Types—Testing the Generic Stack Type

06m 41s

Note About Associated Types for Protocols

01m 28s

Chapter: Lesson 12: Operator Overloading and Subscripts

Lesson Introduction

04m 20s

Overview

02m 15s

String Operators and Methods: Variables and Constants

01m 43s

String Operators and Methods: Comparative Operators

03m 30s

String Operators and Methods: Custom String Unary Prefix Operator !

02m 58s

String Operators and Methods: Concatenation with + and +=

01m 48s

String Operators and Methods: Subscript Operator for Creating Substrings

03m 44s

String Operators and Methods: Other String Methods

03m 56s

Custom Complex Numeric Type with Overloaded Arithmetic Operators

09m 34s

Overloading Arithmetic Operators for Class NSDecimalNumber

03m 50s

Overloading Unary Operators ++ and —

10m 44s

Overloading Subscripts

13m 41s

Custom Operators Overview

06m 53s

Custom Generic Defining a Custom Exponentiation Operator for Type Int

06m 22s

Custom Generic Operators

05m 39s