Recent Posts
Swift Evolution: Reading and learning from proposals
The Swift Programming Language constantly evolves, and most of its changes result from public proposals inside the Swift Evolution repository ...
Unit testing async/await Swift code
Unit tests allow you to validate code written using the latest concurrency framework and async/await. While writing tests doesn't differ ...
Debugging SwiftUI views: what caused that change?
Debugging SwiftUI views is an essential skill when writing dynamic views with several redrawing triggers. Property wrappers like @State and ...
Paywalls Made EasyBuild and test paywalls with ease using RevenueCat's new native, remotely configurable paywall templates. Learn more here.
Swift Keywords
Do you know how to use each keyword in Swift?
Click on the keyword to learn more and explore code examples.
Learn more about Swift
Swift Evolution: Reading and learning from proposals
The Swift Programming Language constantly evolves, and most of its changes result from public proposals inside the Swift Evolution repository ...
User Defaults reading and writing in Swift
User Defaults are the go-to solution for Swift applications to store preferences that persist across launches of your app. It's ...
Thread dispatching and Actors: understanding execution
Actors ensure your code is executed on a specific thread, like the main or a background thread. They help you ...
Learn SwiftUI
Debugging SwiftUI views: what caused that change?
Debugging SwiftUI views is an essential skill when writing dynamic views with several redrawing triggers. Property wrappers like @State and ...
App Intents Spotlight integration using Shortcuts
App Intents have been new since iOS 16 and offer a programmatic way to service your app's content and functionality ...
ContentUnavailableView: Handling Empty States in SwiftUI
ContentUnavailableView is a SwiftUI view introduced in iOS 17 during WWDC 2023. It allows you to handle cases of networking ...
Build Apps Faster using RocketSim
Recommend by Apple as an “Essential Tool for Developers”, RocketSim helps thousands of engineers to save hours per week. Discover these articles and learn how you can leverage RocketSim to improve your workflow:
App Actions
- Universal Links implementation on iOS
- Deeplink URL handling in SwiftUI
- Location Simulation in Xcode’s Simulator
- Optimizing your app for Network Reachability
- Testing push notifications on the iOS simulator
App Actions Perform Menu
- Localization testing in Xcode
- User Defaults reading and writing in Swift
- Xcode Simulator Directories Exploration
RocketSim Tools
Combine all the things
@Published risks and usage explained with code examples
@Published is one of the property wrappers in SwiftUI that allows us to trigger a view redraw whenever changes occur ...
RunLoop.main vs DispatchQueue.main: The differences explained
RunLoop.main and DispatchQueue.main are often used as schedulers within Combine. During code reviews, I often encounter inconsistency in using one ...
PassthroughSubject vs. CurrentValueSubject explained
PassthroughSubject and CurrentValueSubject are two types from the Combine framework that conforms to the Subject protocol. Both are very similar ...
Dive into Core Data
How to observe NSManagedObject changes in Core Data using Combine
Observing changes in Core Data NSManagedObject instances with Combine publishers can be a great solution to keep your user interface ...
Data validation on insertion, update, and deletion in Core Data
Data validation in apps is important to make sure we save data conforming to the business rules. A name should ...
Derived Attributes to improve Core Data Fetch Performance
Derived attributes are available since iOS 13 and aim to improve fetch performance in many different scenarios. Although we have ...
Be an expert on Xcode
RocketSim 12.0: Builds Apps Faster
RocketSim is a developer tool that gives your Xcode Simulator extra functionalities to increase day-to-day development productivity. A floating window ...
Build performance analysis for speeding up Xcode builds
Build performance can be analyzed in Xcode to speed up your builds. This can quickly speed up your workflow and ...
Xcode Debug Console Tour: Exploring All Options
The Xcode Debug Console allows you, as a developer, to explore logs and debug issues with your apps. All your ...
Get better at debugging
Debugging SwiftUI views: what caused that change?
Debugging SwiftUI views is an essential skill when writing dynamic views with several redrawing triggers. Property wrappers like @State and ...
OSLog and Unified logging as recommended by Apple
OSLog is a replacement for print, and NSLog and Apple's recommended way of logging. It has different logging levels, like ...
Network Extension Debugging on macOS
A Network Extension on macOS allows you to create content filters, DNS proxies, and more. They integrate nicely into the ...
Improve your workflow
Picking your minimum iOS version to support
When a new iOS version arrives, it's oftentimes a moment to reflect on the supported iOS versions and see to ...
OSLog and Unified logging as recommended by Apple
OSLog is a replacement for print, and NSLog and Apple's recommended way of logging. It has different logging levels, like ...
Location Simulation in Xcode’s Simulator
Location Simulation is a critical feature for apps that provide location access. You want to mimic the environment of real ...
Optimize yourself and improve
Promotional offers: Increase App Revenue using discounts
Promotional offers allow you to increase the revenue for your app by promoting a user's subscription to a new offer ...
Build performance analysis for speeding up Xcode builds
Build performance can be analyzed in Xcode to speed up your builds. This can quickly speed up your workflow and ...
10 Tips to Get Your App Featured on the App Store
Getting your app featured on the App Store allows you to gain organic growth and more reach. Users can find ...
Explore categories
Swift
Combine
Concurrency
SwiftUI
Core Data
Xcode
Debugging
Workflow
Optimization
Most Popular Posts
- Swift Evolution: Reading and learning from proposals
- Async await in Swift explained with code examples
- Guard statements in Swift explained with code examples
- Thread Sanitizer explained: Data Races in Swift
- Sendable and @Sendable closures explained with code examples
SwiftLee Community
Giveaways, free behind-the-scenes stories, and latest Swift & SwiftUI articles. Join 16,323 others:
Join the Community