Welcome to the issue #35 👋 Enjoy!
Better test assertions
Multiple accessibility labels
accessibilityUserInputLabels, we can provide multiple strings by which the user can address an element.
UIColor.systemGroupedBackground exists, reflecting system background you see on grouped table views, for example in Settings. We can use it in both UIKit and SwiftUI:
ListFormatter I mentioned last time? Here's an infographic with even more examples of different native formatter APIs.
The traps of Swift Concurrency
There's many things the compiler doesn't check, and often the behaviour of async/await is not what you'd expect. Lots of traps to fall into... For example, actors are not as protective as they seem at first glance. Many examples of problems and solutions in this article by @kulik_wojciech.
It's a longer article going deep into how concurrency works, make sure to save it if you don't have time to read it yet :)
Sponsor of the week - Codelime
Codelime is a powerful code snippet manager with many dev tools for iOS development. Save and manage your code snippet across iPhone, iPad and Mac with Codelime.
Take advantages of many dev tools available in Codelime (Hash, Text Case, Color Picker, Generate Asset Catalog, Make Pretty Code Snippet, ...) to boost your every day iOS development workflow.
Powerful code snippet manager
Alright, that’s it for today.
Did you enjoy this issue? Let me know by pressing the buttons below. If you enjoyed it, you can help grow the newsletter by spreading the word ☺️
Got feedback? Want to see more, or less of certain kinds of tips? I’d love to hear from you. Reply to this email or reach out on Twitter via @ios_code_review 🙌