Point-Free Videos

Point-Free Videos

By Brandon Williams & Stephen CelisTechnologyEducation
Download on the App Store

Point-Free Videos episodes

  • Modern UIKit: Observation
    Subscriber-Only: Today's episode is available only to subscribers. If you are a Point-Free subscriber you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    It's time to build modern tools for UIKit from scratch, heavily inspired by SwiftUI and using
    the Observation framework. Surprisingly, Swift 5.9's observation tools _can_ be used in UIKit,
    and in fact they work _great_, despite being specifically tuned for SwiftUI.
    42 min
  • ๐Ÿ†“ Modern UIKit: Sneak Peek, Part 2
    Every once in awhile we release a new episode free for all to see, and today is that day! Please enjoy this episode, and if you find this interesting you may want to consider a subscription https://www.pointfree.co/pricing.
    ---
    We finish building a modern UIKit application with brand new state-driven tools, including a
    complex collection view that can navigate to two child features. And we will see that, thanks
    to our back-port of Swift's observation tools, we will be able to deploy our app all the way
    back to iOS 13.
    32 min
  • ๐Ÿ†“ Modern UIKit: Sneak Peek, Part 1
    Every once in awhile we release a new episode free for all to see, and today is that day! Please enjoy this episode, and if you find this interesting you may want to consider a subscription https://www.pointfree.co/pricing.
    ---
    As we approach WWDC24 and 5 years of SwiftUI, let's talk aboutโ€ฆ UIKit! ๐Ÿ˜œ We love SwiftUI,
    but there will still be times you must drop down to UIKit, and so we want to show what modern
    UIKit development can look like if you put in a little bit of effort to build tools that allow
    you to model your domains as concisely as possible.
    40 min
  • ๐Ÿ†“ Shared State in Practice: isowords, Part 2
    Every once in awhile we release a new episode free for all to see, and today is that day! Please enjoy this episode, and if you find this interesting you may want to consider a subscription https://www.pointfree.co/pricing.
    ---
    We conclude the series by stretching our use of the `@Shared` property wrapper in isowords to two more features: saved games and user defaults. In the process we'll eliminate hundreds of lines of boilerplate and some truly gnarly code.
    34 min
  • ๐Ÿ†“ Shared State in Practice: isowords, Part 1
    ๐Ÿ†“ Let's apply the Composable Architecture's new state sharing tools to something even more real world: our open source word game, isowords. It currently models its user settings as a cumbersome dependency that requires a lot of code to keep features in sync when settings change. We should be able to greatly simplify things with the `@Shared` property wrapper.
    26 min
  • ๐Ÿ†“ Shared State in Practice: SyncUps: Part 2
    ๐Ÿ†“ We finish refactoring the SyncUps application to use the Composable Architecture's all new state sharing tools. We will see that we can delete hundreds of lines of boilerplate of coordination between parent and child features, _and_ we won't have to sacrifice any testability, including the _exhaustive_ testability provided by the library.
    36 min
  • ๐Ÿ†“ Shared State in Practice: SyncUps, Part 1
    ๐Ÿ†“ In our last series we developed a wonderful way to share state between features in the Composable Architecture, and even persist it, all without sacrificing testability, but we also didn't get to show the (just now released) tools being used in real world applications, so let's do just that, starting with SyncUps.
    45 min
  • Shared State: File Storage, Part 2
    ๐Ÿ”’ It's incredible how easy `@Shared` makes it to persist complex data types to the file system, but currently it completely ruins our ability to test features that use it. Let's fix that, and we will also explore what it means to derive a small piece of shared state from a bigger piece of shared state.
    35 min
  • Shared State: File Storage, Part 1
    ๐Ÿ”’ While user defaults is convenient for persisting simple bits of state, more complex data types should be saved to the file system. This can be tricky to get right, and so we take the time to properly handle all of the edge cases.
    31 min
  • Shared State: User Defaults, Part 2
    ๐Ÿ”’ We can now persist simple bits of state to user defaults using the `@Shared` property wrapper, but there is more work to be done. We need to observe changes to user defaults in order to play those changes back to `@Shared`, and we need to put in a bit of extra work to make everything testable.
    27 min

About Point-Free Videos

From the publisher's feed

Point-Free is a hub for advanced topics in Swift. Videos cover complex, real world topics including application architecture, concurrency, persistence, and more.