Donny Wals
  • Home
  • The Blog
  • The Newsletter
  • Speaking
  • Books
    • Practical Core Data
    • Practical Combine

Swift

10 things iOS developers should focus on in 2021

I know. This is a clickbaity title. And yes, I know that this list is not relevant for everybody. I know that not every iOS developer has to learn everything on this list. That said, this list is a list of technologies and skills that I think are either already Read more…

By donnywals, 2 weeks1 week ago

Building a simple remote configuration loader for your apps

Remote configuration is a common practice in almost every app I have worked on. Sometimes these configurations can be large and the implications of a configuration change can be far-reaching while other times a configuration is used to change the number of items shown in a list, or to enable Read more…

By donnywals, 3 months3 months ago

Understanding how DispatchQueue.sync can cause deadlocks

As a developer, you’ll come across the term "deadlock" sooner or later. When you do, it’s usually pretty clear that a deadlock is bad (the name alone implies this) and if you’ve experienced one in your code, you’ll know that your application crashes with EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) when a deadlock Read more…

By donnywals, 4 months4 months ago

Dispatching async or sync? The differences explained

When writing iOS apps, we regularly run into code that is asynchronous. Sometimes you know you’re writing something that will run asynchronously and other times you’re passing a completion handler to code that may or may not run asynchronously on a different dispatch queue. If you’re familiar with using DispatchQueue.main, Read more…

By donnywals, 5 months5 months ago

Understanding Swift’s OptionSet

Every once in a while I look at a feature in Swift and I fall down a rabbit hole to explore it so I can eventually write about it. The OptionSet protocol is one of these Swift features. If you’ve ever written an animation and passed it a list of Read more…

By donnywals, 5 months5 months ago

Using Codable with Core Data and NSManagedObject

If you’ve ever wanted to decode a bunch of JSON data into NSManagedObject instances you’ve probably noticed that this isn’t a straightforward exercise. With plain structs, you can conform your struct to Codable and you convert the struct from and to JSON data automatically. For an NSManagedObject subclass it’s not Read more…

By donnywals, 6 months6 months ago

Setting up a Core Data store for unit tests

Unit testing is an important skill in the toolbox of any engineer. Knowing how to write a reliable, robust test suite helps you write reliable and robust code. If you’ve followed my introduction to unit testing part one and part two, or if you’re experienced with unit testing you know Read more…

By donnywals, 6 months5 months ago

How to change a UICollectionViewListCell’s separator inset

In WWDC2020’s session Lists in UICollectionView a slide is shown where a UICollectionViewListCell’s separator inset is updated by assigning a new leading anchor to separatorLayoutGuide.leadingAnchor. Unfortunately, this doesn’t work in when you try to do it. To set the separator inset for a UICollectionViewListCell you can update the leading anchor Read more…

By donnywals, 7 months4 months ago

How to add a custom accessory to a UICollectionViewListCell?

Apple provides several accessory types that you can use to apply certain affordances to a UICollectionViewListCell. However, sometimes these options don’t suit your needs and you’re looking for something more customizable. To add a custom accessory to a list cell instead of a standard one, you use the .custom accessory Read more…

By donnywals, 7 months4 months ago

How to add accessories to a UICollectionViewListCell?

In iOS 14 Apple added the ability for developers to create collection views that look and feel like table views, except they are far, far more powerful. To do this, Apple introduced a new UICollectionViewCell subclass called UICollectionViewListCell. This new cell class allows us to implement several tableviewcell-like principles, including Read more…

By donnywals, 7 months4 months ago

Posts navigation

1 2 … 4 Next
Categories
  • Books
  • Home
  • The Blog
  • The Newsletter
  • Speaking
Hestia | Developed by ThemeIsle