Swift Talk

A weekly video series on Swift programming.

#71 Type-Safe File Paths with Phantom Types 24:14

Brandon Kase joins us to show how Swift's type system can be leveraged to check file paths at compile time.

#69 Reactive Data Structures: Arrays 30:55

We build a reactive array type on top of the reactive list from episode #67 and implement a filter method.

  1. Collections
  2. Reactive
  3. Structs
  4. Types
September 29, 2017

#63 Mutable Shared Structs (Part 2) 22:59

We continue to experiment with our hybrid struct/class data type and incorporate the ability to add and remove more fine-grained observers.

#61 Mutable Shared Structs (Part 1) 30:10

We build an experimental data type that combines the advantages of both structs and classes. It allows shared mutable state while preserving the features of structs to make easy copies and observe changes.

#55 Sorted Arrays with Binary Search 26:51

Károly joins us to improve our sorted array implementation from episode #35 using binary search. We benchmark both implementations to learn about their real-world performance.

#29 Protocols & Class Hierarchies 16:02

We refactor a class hierarchy using a protocol and discuss the differences between both approaches.

#21 Structs and Mutation 16:07

We look at multiple ways to change structs: mutation, functional chaining, and inout parameters. We discuss how they differ at the call site and why they’re all equivalent.

  1. Mutation
  2. inout
  3. Value Types
  4. Structs
October 21, 2016

#17 Ledger GUI Architecture 18:31

We connect multiple view controllers using a central coordinating object and callback functions. Then we refactor the UI state into its own struct to simplify the control flow.

#1 Networking 22:49

We explore an alternative approach to building the networking layer of an app. We make use of Swift's generics and structs to end up with simple, testable code.