Recent Posts
Memory consumption when loading UIImage from disk
Memory consumption can quickly increase if you load many images from the disk using UIImage. You'll generally load images from ...
Why macOS Development is Perfect for Indie Developers
Building apps for macOS offers developers a fantastic opportunity to expand their skills, create useful utilities to solve their problems, ...
Inspect network traffic using the Xcode Simulator
Inspecting network traffic is an essential skill for app developers. Several tools allow you to monitor requests going in and ...
App Center is shutting down. Consider evaluating Codemagic CI/CD!Codemagic is trusted by 150,000+ developers and the build machines are over 700% faster than App Center. Learn more.![](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%200%200'%3E%3C/svg%3E)
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
Typed throws in Swift explained with code examples
Typed throws are new since Xcode 16 and allow you to define the type of error a method throws. Instead ...
Async await in Swift explained with code examples
Async await is part of the new structured concurrency changes that arrived in Swift 5.5 during WWDC 2021. Concurrency in ...
Swift Package Manager framework creation in Xcode
Swift Package Manager (SPM) is Apple's answer for managing dependencies. We're all familiar with tools like CocoaPods and Carthage, but ...
Learn SwiftUI
Memory consumption when loading UIImage from disk
Memory consumption can quickly increase if you load many images from the disk using UIImage. You'll generally load images from ...
Why macOS Development is Perfect for Indie Developers
Building apps for macOS offers developers a fantastic opportunity to expand their skills, create useful utilities to solve their problems, ...
@Previewable: Dynamic SwiftUI Previews Made Easy
Xcode 16 introduced the @Previewable macro for SwiftUI Previews, allowing you to use dynamic properties inline in previews. You'll be ...
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 ...
App Center is shutting down. Consider evaluating Codemagic CI/CD!Codemagic is trusted by 150,000+ developers and the build machines are over 700% faster than App Center. Learn more.![](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%200%200'%3E%3C/svg%3E)
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
Inspect network traffic using the Xcode Simulator
Inspecting network traffic is an essential skill for app developers. Several tools allow you to monitor requests going in and ...
Xcode Build Insights: Keep track of project compilation times
Xcode Build Insights lets you keep track of compilation times to ensure your project doesn't suddenly become slow to build ...
Solve Missing API declaration using required reason (ITMS-91053)
Apps submitted to the App Store must define API declarations using the required reasons. Apps that don't will be rejected ...
Get better at debugging
Memory consumption when loading UIImage from disk
Memory consumption can quickly increase if you load many images from the disk using UIImage. You'll generally load images from ...
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 ...
Improve your workflow
Test-Driven Development (TDD) for bug fixes in Swift
Test-driven development (TDD) is a technique that requires you first to write a failing test before you start implementing a ...
Third-party libraries acknowledgments using a Settings bundle
Third-party libraries help developers build apps faster but often come with a license. The MIT license is likely the most ...
App Preview Videos Capturing using the Xcode simulator
App Preview Videos allow you to increase the visibility of your app in the App Store. While it's best to ...
Optimize yourself and improve
ChatGPT for Swift: Top 5 code generation prompts
Using ChatGPT for Swift code generation can drastically increase your productivity. While I'm uncertain whether AI will take over our ...
The power of consistency in side projects
The success of your side projects can be mixed, but consistency brings power to your results. It's often easier to ...
Swift Newsletters: How to stay up to date as an app developer
Following the Swift Evolution can be time-consuming, but Swift newsletters enable you, as an app developer, to stay current. The ...
Explore categories
Swift
Combine
Concurrency
SwiftUI
Core Data
Xcode
Debugging
Workflow
Optimization
Swift Charts
Most Popular Posts
- Memory consumption when loading UIImage from disk
- Async await in Swift explained with code examples
- Sendable and @Sendable closures explained with code examples
- Why macOS Development is Perfect for Indie Developers
- MainActor usage in Swift explained to dispatch to the main thread