Been using SwiftUI pretty in depth for a side project. It's been 80% awesome and 20% super frustrating. I can do so much more with SO much less code, but there are definitely a lot of gaps & annoying issues (particularly around documentation and in depth customization).
Fortunately it's easy to fill in the gaps with UIKit & there are some amazing people out there doing documentation (shout out to the guy at https://swiftui-lab.com/, you've saved me so much time!)
Per usual with Apple its a fantastic product launched in a buggy, incomplete state. Still a great option if you're willing to deal with the kinks.
Hopefully 2.0 will make it an even more solid (if not de facto) choice for all iOS devs!
I don't think SwiftUI will be stable until another two years or so. Swift 1 and 2 were alpha and beta tests, Swift 3 code kind of was the final language where 4 and 5 were cleaning up the API's and syntax and incrementally improving the language. SwiftUI has the same roughness to it and I expect the same kind of breaking changes.
Good luck supporting this code until then!
But really nice. Once SwiftUI starts working properly it's true WYSIWYG in Xcode and exporting it from Figma really could help speeding up the front-end process.
I've ported my apps to Swift in the first year. Looking back it was not the best approach, but for new applications it makes perfect sense to start with swift only. Regarding SwiftUI, I will wait at least 1 year :).
I still maintain applications that were started in Swift 1.x. But it looks a lot more like my old Objective-C code, it really took a while before my approaches changed.
Swift 1 and 2 didn't have to be stable – SwiftUI does. It's a system library, so it can't do things like change method names, at least not without keeping the old symbols around.
Of course, there will be bugs, and behavior will change as the library evolves, but shared library vs language evolution is fundamentally different.
This is insane. If the exported code is somewhat read-able, functions correctly, and the library gets updated as SwiftUI evolves, this is a game changer for iOS devs.
However, these are big IFs. Handling navigation, view hierarchy, and view category identification may be very hard to solve.
@insomnie Nicely done! Are your hopes to really take this to the next level? It would be awesome to see.
Proper export is definitely hard to solve. It's one thing to export bits of color and positioning. But, really making an export that devs can use, and includes the stuff that mkchoi212 mentions, is a definite challenge.
Fortunately it's easy to fill in the gaps with UIKit & there are some amazing people out there doing documentation (shout out to the guy at https://swiftui-lab.com/, you've saved me so much time!)
Per usual with Apple its a fantastic product launched in a buggy, incomplete state. Still a great option if you're willing to deal with the kinks.
Hopefully 2.0 will make it an even more solid (if not de facto) choice for all iOS devs!