Top 10 Pros and Cons of SwiftUI

Uplift iOS Interview

The Guide is for YOU if
  • You are preparing for an iOS interview and want to improve your skills and knowledge and looking to level up your interview game and land your dream job.
  • You want to gain confidence and ease during iOS interviews by learning expert tips and curated strategies.
  • You want access to a comprehensive list of iOS interview QA to practice and prepare.

Before adapting SwiftUI in your current application or a brand new application, you should always consider all the advantages and disadvantages of SwiftUI. SwiftUI may not be good fit if you want to support older version of your application. In this short article, I will provide a high level pros and cons of SwiftUI which may help you to take the decision. There is a continuous debate among the iOS developer community about adopting SwiftUI since Apple introduced this framework in WWDC 2019(Debunk SwiftUI myth – Frequently asked questions). While adopting a new framework is always challenging but the advantages are huge in my opinion.

Pros of SwiftUI

  • SwiftUI has a declarative syntax which easy to use and learn.
  • SwiftUI syntax is very simple, modern and clean.
  • SwiftUI is compatible with UIKit that simply means you can use UIKit in SwiftUI which will help you to migrate code sequentially. 
  • You don’t need to dill with XML based interface builder’s merge conflict. Developers can easily solve complex UI merge conflicts which are mostly impossible in UIKit’s famous Storyboard.
  • VStack, HStack and ZStack are much simpler than Autolayout constraints. 
  • SwiftUI promotes reactive programming through Binding, State and the Combine framework. It works very well with Combine.
  • SwiftUI provides a live preview using the canvas, an interactive interface editor. 
  • Taking a look at the different variations of the UI such as dark mode, localisation is way simpler in SwiftUI. 
  • You need SwiftUI to work on WidgetKit extensions which is not possible in UIKit.

Cons of SwiftUI

  • Learning curve. 
  • Preview bugs in XCode.
  • For complex UI, the best practices are not defined by the community yet. 
  • Many features are still only available in UIKit. 
  • SwiftUI is not available for older operating systems that you want to support. Supported only on iOS 13+
  • It provides very limited set of UI components.
  • Lack of support from the developer community as it is a new paradigm.
  • There are many companies that still have Objective-C as their codebase, and haven’t even started switching over to Swift – Company tech stack boundary will be always cons for new paradigm.
  • No support for NSAttributedString.
  • Keyboard handling functionality is still missing.

Get ahead of the competition and ace your next iOS interview with expert-curated resources. Check out the collection of SwiftUI and Swift interview questions and answers, behavioral interview tips, and the popular custom layout contents. Plus, go through the new section for Engineering Manager to help you excel in your career!

Join my free Newsletter 🚀

✍️ Written by Ishtiak Ahmed

👉 Follow me on XLinkedIn

Get Ready to Shine: Mastering the iOS Interview

Enjoying the articles? Get the inside scoop by subscribing to my newsletter.

Get access to exclusive iOS development tips, tricks, and insights when you subscribe to my newsletter. You'll also receive links to new articles, app development ideas, and an interview preparation mini book.

If you know someone who would benefit from reading this article, please share it with them.