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.

Subscribers-Only

Subscribers Only

#70 Table View Animations with Reactive Arrays 15:26

We use the reactive array type from episodes #67 and #69 to back a table view. This allows us to correctly animate changes in the underlying data, even with filter and sort transformations applied.

#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

#67 Reactive Data Structures: Linked Lists 25:58

We build a reactive linked list on top of reactive programming primitives. We implement a reduce method on this type, which does the minimum amount of work when the underlying data changes.

  1. Enums
  2. Collections
  3. Reactive
  4. Types
September 15, 2017
Subscribers-Only

Subscribers Only

#58 Red-Black Trees 31:51

Building on the binary search tree code from episode #56, we implement red-black trees as self-balancing tree data structures and benchmark their performance.

Subscribers-Only

Subscribers Only

#56 Binary Search Trees 27:00

In this episode, we implement a binary search tree as an alternative to the sorted array from the last episode. We benchmark the performance of insertion and lookup in both data structures, with some surprising results.

#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.

#35 Sorted Arrays (Collections #3) 16:42

We look at extracting a sorted array type in order to increase code clarity. We'll also make it conform to Collection.

#33 Sequence & Iterator (Collections #2) 16:54

We continue to make the collection extension from the last episode more generic: we implement it on the Sequence protocol and discuss infinite sequences in the process.

Subscribers-Only

Subscribers Only

#32 Array, ArraySlice & Collection (Collections #1) 15:16

We show how to make an extension on array available to other collections: first, we implement it for array slices, then we implement it as a protocol extension for all collections.

Subscribers-Only

Subscribers Only

#30 Interfaces 16:07

We talk about the importance of types and interfaces as tools to express your intent precisely and to set the proper boundaries.

  1. Generics
  2. Architecture
  3. Types
December 30, 2016