Recent Posts
Using @Environment in SwiftUI to link Swift Package dependencies
The @Environment property wrapper in SwiftUI allows you to read values from a view's environment. You're able to configure an ...
Bar Chart creation using Swift Charts
Apple introduced Swift Charts during WWDC '22, allowing you to visualize data into bar charts. Before this framework, we had ...
Statistical significance and its importance with app experiments
Statistical significance tells you whether the result from an experiment is likely attributable to the specific change you did. It's ...
Latest macOS versions, betas of Xcode, and remove access to solve CI issuesBitrise’s CI solution allows you to run your tests and deliver your builds using the latest technology. Receive Xcode updates within 24 hours and use their remote access solution to solve those issues that only seem to happen on CI. Get started.
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
Optionals in Swift explained: 5 things you should know
Optionals are in the core of Swift and have existed since the first version of Swift. An optional value allows ...
Extensions in Swift: How and when to use them
Extensions in Swift allow you to extend an existing class, struct, enumeration, or protocol with new functionality. Whether it's a ...
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 ...
Learn SwiftUI
Using @Environment in SwiftUI to link Swift Package dependencies
The @Environment property wrapper in SwiftUI allows you to read values from a view's environment. You're able to configure an ...
Identifiable protocol in SwiftUI explained with code examples
The Identifiable protocol in SwiftUI allows you to add a unique object identity. The protocol requires a single ID property ...
Key press events detection in SwiftUI
Key press events detection in SwiftUI allows you to respond to a keyboard key like return (enter), shift, command, and ...
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 ...
Latest macOS versions, betas of Xcode, and remove access to solve CI issuesBitrise’s CI solution allows you to run your tests and deliver your builds using the latest technology. Receive Xcode updates within 24 hours and use their remote access solution to solve those issues that only seem to happen on CI. Get started.
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
Symbolicate crash logs with Xcode
When you receive an unreadable crash report, you can symbolicate crash logs with the help of Xcode. As a developer, ...
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 ...
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
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
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 ...
Using campaign links to track impressions, downloads, and sales
Campaign links open your App Store product page and allow you to track the performance of your marketing channels. As ...
Explore categories
Swift
Combine
Concurrency
SwiftUI
Core Data
Xcode
Debugging
Workflow
Optimization
Swift Charts
Most Popular Posts
- Bar Chart creation using Swift Charts
- Async await in Swift explained with code examples
- MainActor usage in Swift explained to dispatch to the main thread
- Using @Environment in SwiftUI to link Swift Package dependencies
- Sendable and @Sendable closures explained with code examples
Let me help you stay up to date with all the latest Swift & SwiftUI features.
Learn more