At WWDC 2019, Apple announced the SwiftUI and Combine frameworks, at first I was as most of the other attendee, high flying, loving evert bit I saw, and at the hotels at night, I was recreating all the demoes and I found that it was really great.
Doing the summer and the progressing releases of XCode 11 betas, SwiftUI also changed a lot, the first indication of the immatureness of the framework.
I’m writing this article in December and have had the privilege to try using the final version of SwiftUI for a couple of months now.
In general, I will say that SwiftUI have a promising future, building bridge between those of us that loves to “draw” our views in Storyboard and those of us that always makes the views in code.
I almost can’t wait to get going with SwiftUI! but…
I have a couple of minor apps, that don’t have the large audience, not that I can understand why, but newer the less, a small audience. One of them is a “concept” app, that I use as a POC, when pitching my development pattern to potential customers, the other is my first app, and have been in app store since 2010, however do to some changes in the allowed bundle id, I have to abandon the 60,000+ downloads I had on it, in order to update the app, so now it is down to about 1,000 downloads.
These app’s I use as a playground for all the new stuff that hits iOS, within the reasonable UX of the app, and I have tried to Update the apps with swift UI and Combine.
The combine thing works fine, still some improvements to wish for, but I like!
SwiftUI, not so much, the display of data, in standard formats, like lists and detail views is fine, even the changes of the view based on “states” of the data. Together with combine framework, it keeps the UI need updated.
Getting out of the standard view and lists, you starts getting some things where you starts thinking: “I know it is coming, but why in the … did they implement this from the start” two of the things that are worthy of that thought is MKMapView, CollectionView (horizontal scrolling).
Then there is some inconsistent, where sometimes you have to use enums as parameters, other times it a protocol.
I will love to use SwiftUI, but I don’t think it is going to happen at the best until iOS 14.
I will also recommend, to keep trying with a couple of POC, just to get the feel of it, the things that works is really nice