I’ve been almost exclusively using SwiftUI for a year. Here’s what I found:

1) it’s way faster to create than any other framework (including other declarative ones like React) while getting good looking results. Biggest benefit.

2) being able to share code across platforms…
… is great, but I still find myself using #if os(?) more than I would like. I wish all APIs existed on all platforms but didn’t do anything like some APIs on catalyst.

3) Performance isn’t great especially on macOS. I keep trying but no matter what I do, macOS is always laggy
SwiftUI needs more control over performance and rendering like UIKit has.

4) SwiftUI needs more independence from UIKit and AppKit. Why is attributedstring supported on Text but not TextView?! I can make my text editor 100% cross platform SwiftUI if that was the case.
5) the SwiftUI app cycle is still lacking a lot of essential features and multi-window support (especially for document based apps) is still not good.
Overall, SwiftUI is still my preferred framework and I haven’t made a new UIKit project in over a year, but I wish that it was better since over the past few years, it hasn’t progressed as much as I liked especially on macOS and iOS.
Much like Swift 1.0-3.0, SwiftUI should have broken away from the yearly updates and been updated more often. Who knows how far we would have gotten with Swift if that was the case? I waiting a year for AttributedString in a TextView is not good

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Ethan Lipnik

Ethan Lipnik Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @EthanLipnik

18 Aug
So I’m gonna make a thread for my password manager, OpenSesame Image
Oh that’s interesting… Image
I want OpenSesame to have 4 things:

1) Fully cross platform (support Windows, Chrome, watchOS, etc.)
2) Have online or offline abilities (iCloud with iCloudJS?)
3) On-Device encryption
4) Authenticator functionality
Read 27 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(