One of the big questions on my mind is how well the fully declarative approach scales to complex apps. You can already build quite reasonable portal apps for your favorite web service with SwiftUI, which is 90% of the iOS app market, but I am much more interested in the other 10%. Can you build an advanced iOS app or serious macOS app with SwiftUI? Could you develop an app like Keynote or Xcode using SwiftUI?
This process is fast for a few standard views, but there are bigger challenges looming. For example, take a large array of values that you want to present in a
List. We encountered some serious performance issues when updating data in such a
List, as SwiftUI would attempt to diff thousands of
Viewnodes. You could restructure your UI in order to avoid such large lists, but that is a bit of a cop out, because the technologies SwiftUI is designed to supplant can handle such large lists.
The problem is perhaps even more apparent in a text view. We briefly saw a
TextViewtype appear during the SwiftUI beta in 2019, but it didn’t make the final release.
There’s also no outline view or Mac-style table view.