Recorded – watch the full episode on YouTube.
If a junior developer asks whether they should learn SwiftUI or UIKit, what would your advice be?
Kaya Thomas: My advice would be start with UIKit. Start with UIKit, understand the kind of foundations of iOS programming, and really get your foundation strong because jumping into SwiftUI, if you come into problems or things that you don't understand or things that don't exist yet, it might be hard to actually continue because a lot of the problems are not things that we can solve, right? Because they either don't exist or they're above et cetera.
And so, whereas with UIKit, you can have way more support from the community because if you're learning and you're coming to roadblocks, most likely, most of us will be able to help you and help you continue on and understand that problem. And it will give you a better foundation so that when you do decide to learn SwiftUI, you can always fall back to UIKit.
“It's not either or, and I think a lot of the conversation sometimes is like either or, and it doesn't have to be either or. You can learn both and you can use both, but I highly recommend starting out with UIKit, building the foundation and then trying to explore and experiment with SwiftUI.”
If you only learn with SwiftUI and you're a junior developer, you don't have that UIKit foundation to fall back to. And the great thing about SwiftUI right now is you can use it with UIKit, right? You can use both. It's not either or, and I think a lot of the conversation sometimes is like either or, and it doesn't have to be either or. You can learn both and you can use both, but I highly recommend starting out with UIKit, building the foundation and then trying to explore and experiment with SwiftUI. And you can always fall back to UIKit if it doesn't work out.
Paul Hudson: I think at this point we are what, 10 years into UIKit? It's a mature framework now to the point where you could probably paste almost any error message into Google and get some results saying, here's my problem and then further down, here's how to fix it. In SwiftUI it's a clean slate. There's no ancient definitive answers to fall back on whatever – it's completely clean slate, so often you're the first person asking that question.
This transcript was recorded as part of Swiftly Speaking. You can watch the full original episode on YouTube, or subscribe to the audio version on Apple Podcasts.
SPONSORED Spend less time managing in-app purchase infrastructure so you can focus on building your app. RevenueCat gives everything you need to easily implement, manage, and analyze in-app purchases and subscriptions without managing servers or writing backend code.
Link copied to your pasteboard.