SwiftUI in 2022
I&#x27;m really looking forward to what comes of it, but I have chosen to do my current major project in UIKit.<p>A couple of reasons:<p>1) The documentation for SwiftUI, when I started (about two years ago) was <i>awful</i>. I was shocked at how bad it was. I believe that it has since improved.<p>2) I knew of no major apps (even Apple ones) that had been done with it.<p>I already knew that UIKit was up to the task, and held my nose, while I set things up. It&#x27;s working out extremely well, but (of course) I&#x27;d like to rewrite the whole thing (a sure sign that I&#x27;m approaching ship).<p>I like things like the MVVM pattern, but it&#x27;s been my experience that it&#x27;s really not such a good idea to implement it in UIKit, because UIKit was designed explicitly for MVC. I have learned that those ugly-ass UIViewControllers are really important, and I circumvent them at my peril.<p>I&#x27;m able to release fairly basic Apple apps in UIKit, in just hours, so speed of development isn&#x27;t compelling.<p>What is compelling, is the ability to design a reactive system for a complex app (like the one I&#x27;m writing now). AppKit has allowed this for some time, and it&#x27;s possible to force UIKit to do it (but it isn&#x27;t really designed for that).<p>I really wish that SwiftUI had been a bit more mature, when I started this system, but I would have also needed to rewrite the two server SDKs I use, anyway. It wouldn&#x27;t have worked, no matter how hard I bang my heels together.<p>But I&#x27;m looking forward to it.<p>One thing that I&#x27;ve learned, is that it&#x27;s really OK to wait for things to mature. Companies always screech about how we need to jump on the bandwagon, but that&#x27;s all hype. I have taken OpenDoc courses at Apple DU. I also busted my ass, getting my app ready for Copland. I have <i>scars</i> from Apple hype.<p>I did take a big chance, by jumping directly into Swift, but that has turned out to be a good decision.