My Thoughts on SwiftUI
Brad Manderscheid
Owner / Digital Strategy and Business Development at seventyseven
SwiftUI is currently my favorite framework (maybe ever)!
SwiftUI’s declarative nature using chainable modifiers makes UI finally enjoyable in iOS development — at least for me. I never quite got the hang of XCode’s storyboard-driven philosophy. It just wasn’t fun and felt clunky. Similar to UIKit, views are created in structs but then easily reusable throughout a neatly-composed UI code structure. It’s super fun! I’ve never felt this confident in implementing a design within native iOS development. Or macOS, or watchOS, or tvOS, or iPadOS..... It neatly compiles to all platforms.
It gets better! Aside from the awesome UI compositions, Apple appears to be favoring MVVM over its typical MVC approach. This should feel familiar to any web developer using a reactive framework. The BindableObject protocol makes data flow and model binding much more straightforward and manageable.
Similar approaches to UI development can be seen elsewhere. Flutter and Dart (written by Google) uses a very similar layout structure for quickly building cross-platform applications. Not native, but a more performant hybrid solution than Javascript and web views.
SwiftUI doesn't help us hybrid developers much, but if both platforms eventually start using this (clearly popular) layout structure, then writing for both platforms natively might somehow become a bit more feasible.