WWDC 2025 Developer Special Edition - #088
WWDC 2025 Developer Special Edition
WWDC 2025 arrived right on schedule. Apple released all session videos at once, allowing developers to dive into the new features and APIs they care about without delay. After skimming through them over the past two days, my initial takeaway for this year’s conference is: as expected, yet unexpected.
Nowadays, Xcode Playgrounds seems to have deviated from its original purpose, and configuring VSCode can be overly complex for beginners. Against this backdrop, how can we easily set up an environment suitable for learning and testing Swift? Perhaps Notepad.exe, as introduced in this article, will provide a satisfying solution.
By Megabits
Although Swift 6 has been released for some time, many of Apple’s first-party frameworks have yet to fully adopt it, creating challenges for developers who rely on them during migration. While developing the SLIT_STUDIO camera app, Megabits encountered similar issues—but chose to tackle them head-on. This article details how he addressed Swift 6’s new thread-safety requirements by introducing actor, GlobalActor, and well-structured components such as Recorder and CaptureManageObject. These changes helped resolve incompatibilities between AVFoundation and Swift Concurrency, improved code structure and safety, and avoided reliance on temporary workarounds like @preconcurrency and nonisolated.
As my understanding of Swift has deepened, its appeal has become increasingly dazzling to me. Swift allows me to express programming ideas in a way that is clear, precise, safe, modern, and elegant. This article shows how to use Swift’s powerful generics, KeyPath, protocol extensions, and ResultBuilder to build a highly configurable, type-safe DataFrame export tool with TabularData, supporting column mapping, conditional logic, and declarative DSL syntax.
Among SwiftUI’s many APIs, .ignoredByLayout() is something of an “understated member.” Information is scarce, usage scenarios are uncommon, and its very name tends to raise questions. It seems to suggest some kind of “ignoring” of the layout—but how does that differ from modifiers like offset or scaleEffect, which by default don’t affect their parent’s layout? When does ignoredByLayout actually come into play, and what exactly does it “ignore” or “hide”? In this article, we’ll lift the veil on this subtle API in SwiftUI’s layout mechanism.
In everyday life we constantly convert values between different units of measurement. For developers this seems easy—write a few formulas, sprinkle in a couple of switch statements and you’re done. But the moment you try to support dozens of units, seamless internationalisation, formatting, precision and rounding, the workload sky-rockets and the drudgery can make you question your life choices. The good news: starting with iOS 10 Apple added a comprehensive Measurement API to Foundation, taking all that donkey work off our hands. This article walks you through its usage and best practices.
Swift’s powerful type system empowers us to create semantically explicit and safe data models. Yet when we move to SwiftData or Core Data, the constraints of their underlying storage mechanisms often force us to compromise on type expressiveness. This article explores how, within the restrictions of persistence layers, we can leverage ingenious type wrappers and conversions to build data models that are simultaneously Type-safe, semantically clear, and highly efficient.