6 ms·
Nowhere in the comments thus far has anyone pointed out that SwiftUI — the framework in TFA's crosshairs — is in beta. I've written a relatively large amount of
by edw 7y ago
Nowhere in the comments thus far has anyone pointed out that SwiftUI — the framework in TFA's crosshairs — is in beta. I've written a relatively large amount of SwiftUI code and I get the impression that the design is still in flux. There are corner cases (as well as much more mainstream one) that haven't been fully thought through. Beta 5 of Xcode 11 brought non-trivial changes to the API and I expect those to continue.
"It's not finished until it's documented" is a fine sentiment, but I don't think Apple has remotely claimed that SwiftUI is finished.
- oflannabhra 7y agoAs I noted in another comment, the documentation for SwiftUI is actually pretty good, especially if you take into account how quickly the framework has changed. It includes some rich, progressive tutorials. [0] The author states that they are planning to write an app from scratch with SwiftUI. I think most iOS developers would hesitate to build an entire app on a beta framework. [0] - https://developer.apple.com/tutorials/swiftui/tutorials https://developer.apple.com/tutorials/swiftui/tutorials
- mistahenry 7y agoThey would also hesitate to build an app that only works in iOS 13+ when iOS 13 is the current iOS
- chriskrycho 7y agoThese tutorials are great (when they're working! That's been a bit spotty)—genuinely great. But they don't make up for everything that isn't present. Take a step off that beaten path and you're in for a world of pain today.
- varenc 7y agoThe SwiftUI tutorials also have quiz questions at the bottom to test your understanding of the tutorial. Never seen that before but seems like a great idea https://developer.apple.com/tutorials/swiftui/creating-and-combining-views#check-your-understanding https://developer.apple.com/tutorials/swiftui/creating-and-c...
- chriskrycho 7y agoEdit: this first paragraph is wrong, see child comment. Leaving for posterity. The second paragraph I stand by. SwiftUI is not in beta. It may be beta-quality, but they shipped it and encouraged devs to use it. Yes, it has undergone significant breaking changes since WWDC (and that's to be expected), but it's not described as beta anywhere in their docs about it. (See https://developer.apple.com/xcode/swiftui/ https://developer.apple.com/xcode/swiftui/ and https://developer.apple.com/documentation/swiftui/ https://developer.apple.com/documentation/swiftui/ for what the docs actually say!) My point is that if they want to say "This is ready for you to adopt" they need to back that up by documenting it. Even at an early stage. Facebook manages this for React, even for stuff that is in "experimental" mode! It's possible! It just has to be prioritized. (I'm no FB partisan and don't use React; the point is independent of those.)
- edw 7y agoYou are wrong. Go into the documentation viewer in Xcode and click on any page of SwiftUI documentation. SDK support is listed thusly: iOS 13.0+ Beta macOS 10.15+ Beta tvOS 13.0+ Beta watchOS 6.0+ Beta Mac Catalyst 13.0+ Beta [Edit: indentation]
- theIV 7y agoThis page, https://developer.apple.com/documentation/swiftui https://developer.apple.com/documentation/swiftui, makes no mention of it being in beta.
- chriskrycho 7y agoI stand corrected – updating the parent accordingly as well. Thank you! (Comment about documenting stuff you're recommending people use, even experimentally, stands though.)
- edw 7y agoI am totally with you regarding React: I've been distracted from my current SwiftUI project writing a React "teaser" version because it's so much easier to make progress in React, in large part thanks to the strong documentation. But even there, there are nontrivial problems. Look at the front page of reactjs.org: all of the examples use component classes. The tutorial introduces component classes without mentioning that they're a huge PITA compared to function components using hooks and that they need/should only be used in a few legacy corner cases. React 16.8.0, the first stable release featuring hooks, came out in February of '19. May I suggest that it's not finished until the home page and tutorial are updated?