Understanding SwiftUI - What is SwiftUI? ๐Ÿง

Shivam MagguShivam Maggu
2 min read

Requirements

  • The minimum deployment target version is iOS 13 and above.

  • SwiftUI development is supported by Xcode version 11 and above.

The basics

  • SwiftUI is a UI Design Framework just like its predecessor, the UIKit.

  • It uses the Declarative programming approach as opposed to Imperative programming.

  • In simple words, we inform the framework of what should be done based on a state change and it handles the rest.

  • Whereas in the Imperative approach, we keep track of the state and instruct the framework on how to change the UI.

  • SwiftUI uses struct to create views instead of class.

Pros

  • SwiftUI helps developers write simple, clean and less code.

  • It manages the state better than the Imperative approach of UIKit.

  • Supports cross-platform development for iOS/iPadOS, macOS, tvOS and watchOS.

  • It uses Live Previews instead of building the project to view UI changes.

  • There are no auto layout issues as it always generates satisfiable layouts.

  • People working in teams no longer have to suffer merge conflicts in storyboards. ๐Ÿ˜œ

  • It can be used alongside UIKit using UIHostingController.

  • It supports reactive programming using ObjectBinding, BindableObject and the Combine Framework.

Cons

  • Users with iOS version 12 and below will not be able to use apps developed with SwiftUI.

  • Team development might take more time as others might not be familiar with SwiftUI.

0
Subscribe to my newsletter

Read articles from Shivam Maggu directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Shivam Maggu
Shivam Maggu

iOS developer specializing in Swift and anything tech that piques my interest.