Non-fatal errors happen in every application that’s developed and have a close relationship with fatal errors. Most of us know that both types of errors have an essential difference: fatal errors are not recoverable, while non-fatals are. In my 10+ years of development experience, I’ve seen many engineers ignoring non-fatal errors since they wouldn’t crash …
debugging
Overriding UserDefaults for improved productivity
UserDefaults within apps are used to store data related to user configurations. It’s an easily accessible data store for saving states, statistics, and other app-related data. Launch arguments are passed to the application on launch and can be used to alter the application for debugging purposes. It’s often used by Apple to allow developers to …
5 Xcode breakpoints tips you might not yet know
Xcode breakpoints allow us to debug and find out solutions for nasty bugs. Without breakpoints, it would be a fun fest with a lot of print statements everywhere in your code. The basic principles of breakpoints we probably all know but there’s a lot more to discover! What are breakpoints in Xcode? A breakpoint can …
Combine debugging using operators in Swift
Combine debugging can be hard with long stack traces which don’t help at all. Asynchronous callbacks follow up on each other rapidly and easily make it hard to find the root cause of an issue. It’s next to the big learning curve one of the most common reasons to not go for reactive programming in …
Debugging breakpoints as a replacement for prints
Debugging breakpoints in Xcode allows you to replace prints and reuse debugging statements in future debugging sessions. By simply enabling and disabling needed breakpoints you can also get rid of debug levels as often defined in libraries like CocoaLumberjack. Inspired by @twostraws’s debugging presentation at @AppdevconNL I now keep around breakpoints instead of print …
Using the Network Link Conditioner Utility (how-to)
The Network Link Conditioner on iOS and macOS enables you to test your app in networking conditions like your users might have while using your app. It allows you to simulate networking conditions like 3G, Edge or High Latency DNS. Using the Network Link Conditioner on iOS You can find a Networking section inside the …
Core Data Debugging in Xcode using launch arguments
Core Data is Apple’s object graph management and persistency framework for iOS, macOS, watchOS, and tvOS. It’s around for a long time and therefore a great solution to use for persistent storage of structured data in your application. Core Data Debugging might be a bit hard, although some less-known functionalities in Xcode can help you …