A Swift Computed Property allows you to define values based on other properties. You can optionally use async/await and throw errors.| SwiftLee
Learn how to use an autoreleasepool in unit tests to capture memory leaks consistently throughout the development of your project.| SwiftLee
Auto Layout Constraints written programmatically in code by making use of Layout Anchors, Layout Guides, and a few useful extensions.| SwiftLee
Removing duplicates from a collection to get unique values can be achieved in two ways. One is more performant than the other, so let's dive in!| SwiftLee
Get started and learn how to write unit tests to validate your code. Best practices help you to be more productive by writing better tests.| SwiftLee
Race conditions and Data Races can lead to unexpected behavior, and as an engineer it's important to know the differences between both.| SwiftLee
Macros in Swift allow you to extend the compiler with custom build errors and code generation to eliminate extraneous boilerplate code.| SwiftLee
Static Member Lookup in Generic Contexts allows simplifying code while improving the readability and discoverability of your code.| SwiftLee
Use an SF Symbol in Swift & SwiftUI and explore over 6,000 free-to-use icons provided by Apple for app developers.| SwiftLee
Learn how to use the Thread Sanitizer to catch Data Races in Swift. Fix flaky tests and weird crashes and see Data Race examples in Swift.| SwiftLee
Improve your project structure and simplify testing with the repository design pattern. Centralize data access and separate concerns.| SwiftLee
Create a Swift Package that works with the Swift Package manager. Add dependencies, platform requirements and work with development packages.| SwiftLee
Boost your productivity with ChatGPT for Swift code generation. Learn how to harness the power of AI to speed up your development process.| SwiftLee
Learn how to use the Result enum type in Swift. Make use of methods like map, flatMap, flatMapError, and clean up your code.| SwiftLee
The nonisolated and isolated keywords allow you to control Actor isolation and provide access to immutable state within actors.| SwiftLee
MainActor in Swift replaces DispatchQueue.main and ensures tasks are performing on the main thread in a performant manner.| SwiftLee
AsyncThrowingStream and AsyncStream allow you to rewrite existing closure based code to async-await overloading methods.| SwiftLee
Async let allows executing multiple async methods in parallel and awaiting all results together for better performance in your apps.| SwiftLee
Actors in Swift prevent Data Races by synchronizing access. Combined with nonisolated access you can prevent crashes in your apps.| SwiftLee
Methods marked with @MainActor are not always executed on the main thread. It's essential to understand thread dispatching with actors.| SwiftLee
Tasks in Swift allow us to create an environment in which we can run async methods using await. Learn how to create and use tasks in Swift.| SwiftLee
Task Groups allow you to run multiple tasks in parallel and await their results. Bundle the outcome together into a single collection.| SwiftLee
The @preconcurrency attribute allows you to suppress Sendable-related warnings emitted from 3rd party libraries temporarily.| SwiftLee
Detached tasks allow you to run code asynchronously, but you should be aware of the substantial consequences they introduce.| SwiftLee
Discover the crucial role of system components in app design for enhanced accessibility and user experience.| SwiftLee
Optimize memory usage when loading images in iOS and SwiftUI. Learn best practices to minimize memory consumption & improve app performance.| SwiftLee
Async await in Swift allows to write asynchronous tasks with structured concurrency. Maintain readability in complex code.| SwiftLee
What's new in Swift 6 and how do you migrate your projects and packages? Learn how to apply incremental migration and why you should update.| SwiftLee
Learn how to create Property Wrappers in Swift. Use the @propertyWrapper to remove boilerplate, improve readability, and clean up code.| SwiftLee
Learn more using this list of Swift blog posts containing in-depth examples of Swift programming techniques, basics, and best practices.| SwiftLee
Dive deep into Swift’s latest concurrency changes, covering async-await, actors, and more.| SwiftLee
Unit testing async/await logic can be done by marking your unit test as asynchronous and using a new XCTest method.| SwiftLee