Books & Videos

Table of Contents

  1. Chapter 1 The Architecture of Swift

    Ground of Being

    Everything Is an Object?

    Three Flavors of Object Type

    Variables

    Functions

    The Structure of a Swift File

    Scope and Lifetime

    Object Members

    Namespaces

    Modules

    Instances

    Why Instances?

    The Keyword self

    Privacy

    Design

  2. Chapter 2 Functions

    Function Parameters and Return Value

    External Parameter Names

    Overloading

    Default Parameter Values

    Variadic Parameters

    Ignored Parameters

    Modifiable Parameters

    Function in Function

    Recursion

    Function As Value

    Anonymous Functions

    Define-and-Call

    Closures

    Curried Functions

    Function References and Selectors

  3. Chapter 3 Variables and Simple Types

    Variable Scope and Lifetime

    Variable Declaration

    Computed Initializer

    Computed Variables

    Setter Observers

    Lazy Initialization

    Built-In Simple Types

  4. Chapter 4 Object Types

    Object Type Declarations and Features

    Enums

    Structs

    Classes

    Polymorphism

    Casting

    Type References

    Protocols

    Generics

    Extensions

    Umbrella Types

    Collection Types

  5. Chapter 5 Flow Control and More

    Flow Control

    Privacy

    Introspection

    Operators

    Synthesized Protocol Implementations

    Key Paths

    Dynamic Member Lookup

    Memory Management

  6. Chapter 6 Anatomy of an Xcode Project

    New Project

    The Project Window

    The Project File and Its Dependents

    The Target

    From Project to Built App

    The App Launch Process

    Renaming Parts of a Project

  7. Chapter 7 Nib Management

    The Nib Editor Interface

    Nib Loading

    Connections

    Additional Configuration of Nib-Based Instances

  8. Chapter 8 Documentation

    The Documentation Window

    Class Documentation Pages

    Quick Help

    Symbol Declarations

    Header Files

    Sample Code

    Internet Resources

  9. Chapter 9 Life Cycle of a Project

    Environmental Dependencies

    Version Control

    Editing and Navigating Your Code

    Running in the Simulator

    Debugging

    Testing

    Clean

    Running on a Device

    Profiling

    Localization

    Distribution

  10. Chapter 10 Cocoa Classes

    Subclassing

    Categories and Extensions

    Protocols

    Some Foundation Classes

    Accessors, Properties, and Key–Value Coding

    The Secret Life of NSObject

  11. Chapter 11 Cocoa Events

    Reasons for Events

    Subclassing

    Notifications

    Delegation

    Data Sources

    Actions

    The Responder Chain

    Key–Value Observing

    Swamped by Events

    Delayed Performance

  12. Chapter 12 Memory Management

    Principles of Cocoa Memory Management

    Rules of Cocoa Memory Management

    What ARC Is and What It Does

    How Cocoa Objects Manage Memory

    Autorelease Pool

    Memory Management of Instance Properties

    Retain Cycles and Weak References

    Unusual Memory Management Situations

    Nib Loading and Memory Management

    Memory Management of CFTypeRefs

    Property Memory Management Policies

    Debugging Memory Management Mistakes

  13. Chapter 13 Communication Between Objects

    Visibility by Instantiation

    Visibility by Relationship

    Global Visibility

    Notifications and Key–Value Observing

    Model–View–Controller

  14. Appendix A C, Objective-C, and Swift

    The C Language

    Objective-C

    Bilingual Targets