High Temperatures and Strange Atmospheric Phenomena - #092
High Temperatures and Strange Atmospheric Phenomena
Text is heavily used in SwiftUI. Compared to its counterparts in UIKit/AppKit, Text requires no configuration and works out of the box, but this also means developers lose more control over it. In this article, I will demonstrate through a real-world case study how to accomplish seemingly impossible tasks with SwiftUI's approach - finding the first view among a given set where text is not truncated, and using it as the required size.
Almost without noticing, I've already spent a full month exploring Claude Code. During this time, it has quickly become the new darling of developers everywhere, with discussions about Claude Code flooding my social media timeline. When a fellow developer on Discord asked me to share my thoughts on Claude Code, I thought this would be a perfect opportunity to reflect on my experience with it, as well as how AI has transformed my development work over the past two years.
NotificationCenter has long been a staple of iOS development, offering developers a flexible broadcast–subscribe mechanism. However, as Swift's concurrency model has advanced, the traditional approach—using string-based identifiers and a userInfo dictionary—has revealed several pitfalls. Swift 6.2 introduces a brand-new, concurrency-safe notification protocols in Foundation: NotificationCenter.MainActorMessage and NotificationCenter.AsyncMessage, completely eradicating common problems like wrong thread or payload type mismatch.
In SwiftUI’s layout system, the layoutPriority() modifier might seem inconspicuous at first glance, yet it can decisively influence a view’s size allocation when it matters most. Most developers know its “magic”—in a VStack or HStack, a higher priority view will fight for more space when things get cramped. But did you realize that layoutPriority can work wonders in a ZStack too? Its behavior there is entirely different from VStack and HStack. In this article, we’ll dive deep into this little-known feature and show you how to harness layout priority inside a ZStack.
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.