Coding Donuts

Sunrise Coding

I’m now about 20% of the way through Simon Ng’s excellent book on SwiftUI and this morning, as the sun rose here in Vancouver, it was all about using Path and Shape to create shapes, pie charts and donut charts. While a fruit smoothie is a healthy and delicious way to start the day something about having the word ‘donut’ bounce around my pre-coffee mind this morning made writing code a bit more challenging.

Mmmmm … donuts …

This is the fourth book on SwiftUI in the past 2 years that I’ve worked through and it’s been remarkable to see such a fundamental shift in how we write modern apps grow from just a curiosity to something that’s just about ready for mission critical applications. And to be honest the only reason I added the qualifier ‘just about‘ is because I haven’t yet written a mission or business critical app using SwiftUI.

My two latest apps available in the App Store are written in SwiftUI, are rock solid, took a fraction of the time to design, code and test then my previous Swift and Objective-C apps did and look amazing … but … well … I’m just not there yet. I’ve yet to write an app with SwiftUI with a complex mission. So far it’s nifty single purpose utility apps that look great and ones that in real life I use often.

If you haven’t yet dipped your toes into the world of declarative programming or like me didn’t know until two years ago with the arrival of SwiftUI that I had been previously using the imperative programming style then you’re in for a treat. I’m now officially a SwiftUI fan boy and honestly don’t expect I’ll write another application in the imperative programming style. Once you go declarative you’ll never go back.

For a deeper dive into the philosophy of coding this article by Haoxian Chen at the freeCodeCamp is a great place to start.

Published by Douglas J Farmer

I'm a freelance developer of Apple ecosystem apps including the iPhone, iPad and Mac.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: