Learn the essential features and design philosophy of the Swift programming language. We’ll explore how to model data, handle errors, use protocols, write concurrent code, and more while building up a Swift package that has a library, an HTTP server, and a command line client. Whether you’re just beginning your Swift journey or have been with us from the start, this talk will help you get the most out of the language.
Discuss this video on the Apple Developer Forums:
https://developer.apple.com/forums/topics/programming-languages-topic?cid=yt-w-0011
Explore related documentation, sample code, and more:
Wrapping C/C++ Library in Swift: https://www.swift.org/documentation/articles/wrapping-c-cpp-library-in-swift.html
Value and Reference types: https://www.swift.org/documentation/articles/value-and-reference-types.html
Tools used: Windows: https://www.microsoft.com/en-us/windows/
Tools used: Visual Studio Code: https://code.visualstudio.com
Tools used: Ubuntu: https://ubuntu.com/desktop
The Swift Programming Language: https://docs.swift.org/swift-book/
Embrace Swift generics: https://developer.apple.com/videos/play/wwdc2022/110352
Design protocol interfaces in Swift: https://developer.apple.com/videos/play/wwdc2022/110353
Explore structured concurrency in Swift: https://developer.apple.com/videos/play/wwdc2021/10134
Write a DSL in Swift using result builders: https://developer.apple.com/videos/play/wwdc2021/10253
Expand on Swift macros: https://developer.apple.com/videos/play/wwdc2023/10167
Meet Swift Regex: https://developer.apple.com/videos/play/wwdc2022/110357
00:00 - Introduction
00:51 - Agenda
01:05 - The example
01:32 - Value types
04:26 - Errors and optionals
09:47 - Code organization
11:58 - Classes
14:06 - Protocols
18:33 - Concurrency
23:13 - Extensibility
26:55 - Wrap up
More Apple Developer resources:
Video sessions: https://apple.co/VideoSessions
Documentation: https://apple.co/DeveloperDocs
Forums: https://apple.co/DeveloperForums
App: https://apple.co/DeveloperApp