SwiftUI vs UIKit - new features?

I'me learning Swift and iOS development using the UIKit method. I decided to learn UIKit because I believe it is the most capable and I can use any API I can find, not everything is available in a SwiftUI App. I figure I can use SwiftUI after I master UIKit and decide where it is appropriate.

As I watch the videos that have been coming out, I think my approach has been validated. I watched a video about Scribble and the new APIs to support it in your app. As far as I can tell, these APIs are only available in UIKit and not SwiftUI, right? UIScribbleInteraction and UIIndirectScribbleInteraction for example: https://developer.apple.com/documentation/uikit/handwriting_recognition

I did watch a video on SwiftUI and I am intrigued by the new programming paradigm. So I'm looking forward to trying it out on a project. But I just want to check-in with the more experienced developers on this forum to see if I'm correct about learning UIKit first.

Replies

The difference between UIKit and SwiftUI is their maturity (amongst things, of course).

UIKit has been around since iPhoneOS 2.0 (so about 10 years), and SwiftUI is brand new since it was released last year.
So it's not surprising that you can do more with UIKit: it has quite the "head start". SwiftUI will evolve and gain more capabilities over time.

Since you can mix and match both approaches in an app, and you already started off with UIKit, I'd suggest continuing on that route, and look out for opportunities to add some SwiftUI. Start with smaller screens, get some experience and then move on to bigger parts of your app when you feel comfortable.

Both frameworks are great choices, but they just are in a different moment in their lifetime.

Scribble and the new APIs to support it in your app. As far as I can
tell, these APIs are only available in UIKit and not SwiftUI

SwiftUI can bridge with UIKit, so how much does this really matter? (I'm not very familiar with either)
At present time, I would not undertake a large project with SwiftUI. It is still too much a work in progress.

So I definitely share  Frameworks Engineer answer.

You will need UIKit for a long time, even to understand SwiftUI.