Comment on Rewriting Notion in SwiftUI by Dragan

@ObjC4Life, I share your sentiment almost 100% (I’m a bit less angry, I’d say :-)), but I’m afraid it’s already far beyond the point of no return. Stop dreaming about ObjC 3.0, it’s not going to happen, because “oh my God, square brackets are soooooo scaaaaary and uuuuuugly, I can’t even look at such code on my screen, without my sensitive, self-entitled stomach making me puke”. It’s been 12 years since Swift (about just 2 years less than the whole Mac OS X period prior), 7 years since SwiftUI, tons of resources invested, not to mention PR disaster if Apple eventually gave it all up. Foundation is already converted to Swift, they’re already pushing SwiftUI lower and putting AppKit/UIKit on top of it (it’s been vice-versa before), if I heard correctly in WWDC26 keynote, they mentioned starting to rewrite OS internals and fundamentals in Swift…

Personally, I still use ObjC/AppKit combo EXCLUSIVELY in my applications. I was planning to start migration to Swift once I drop support for older macOS versions (I didn’t want to bundle Swift libraries into application bundles), although I never liked how Swift and AppKit work together, it just seems clumsy, with AppKit designed with ObjC in mind and around it, plus a lot of Swift Cocoa type conversions, plus the pain of using Swift with plain C code (and I have a lot of such code). Then, when the time to start conversion came, the whole “Swift concurrency” disaster has already been going on, with things drastically changing even between point releases…

In parallel, SwiftUI came out with great promises, only to deliver more and more disappointments every following year. Today, it’s still not possible to make a decent macOS application with SwiftUI, provided the application requires something more UI related than what one usually sees in almost toy examples in all SwiftUI books and tutorials. Yes, it’s possible to make the application, but note the word “decent”. I mean c’mon, after 7 years they still can’t figure out drag’n’drop and undo/redo, two techniques Mac was always praised for (“in Mac, you can drag anything and drop it on anything, and it will do the right thing”) and which Mac (and partially Lisa beforehand) actually brought to the wider audience in early ‘80s.

With latest SwiftUI backlash I had a tiny hope AppKit (and UIKit) would start getting some attention, mostly to modernize and make them work better with Swift, eventually converting them to full Swift and make them feel like at home when used in that language. However, WWDC26 keynote killed that last tiny hope as well.

I guess I’m lucky that my applications don’t really need (yet) anything, which can be achieved with Swift/SwiftUI only. So, for the time being I’ll keep doing what I already do. I still have one last tiny hope that, by the time I finally HAVE TO make the switch, things around Swift/SwiftUI will somehow, magically, be sorted out and in decent order to actually have some pleasure working with and achieving the full potential macOS offers.

Apologies to everybody for being this long.

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论