Getting Started with iOS App Development with Swift

Suki
4 min readDec 1, 2020
Xcode and SwiftUI

Let’s dive into the iOS world of applications. one can make ios apps using lots of frameworks, IDEs available open-sourced, and using different languages. I will be focusing on developing using Swift ( Apple’s very own language).

For all those who haven’t heard of this beast.

Swift is a powerful and intuitive programming language for macOS, iOS, watchOS, tvOS, and beyond. Writing Swift code is interactive and fun, the syntax is concise yet expressive, and Swift includes modern features developers love. Swift code is safe by design, yet also produces software that runs lightning-fast.

Topics Covered :

  • Setting up a development environment
  • How to get started with swift (No programming knowledge needed)
  • what to choose UIKit or SwiftUI?

Prerequisites :

  • Must own a Macintosh or Hackintosh ( I will provide resources for converting your regular pc to a Hackintosh in case u couldn’t make a budget for mac )
  • If you know swift well and good but if you don’t know Swift, that’s fine.
  • Last but not least, get to an understanding of your choice on why you want to make it into the ios world of app making.

Before Jumping into Setting up the environment for developing apps in iOS. Apple currently doesn’t support Xcode(IDE) on a Windows machine as of yet. Xcode is an integrated development environment for macOS containing a suite of software development tools developed by Apple for developing software for macOS, iOS, iPadOS, watchOS, and tvOS.

Here are the resources that you can try at your own risk to convert your regular windows pc into a mac.

Read the instructions carefully out there and try it at your own risk

Setting up a development environment :

Once you are ready with your machine running on macOS or a Mac. Installing Xcode is a cake-walk, hustle-free unlike other IDE’s striving for extensions. Xcode is a packed up tool with almost everything you need as a developer.

To download the latest version of Xcode

  1. Open the App Store app on your Mac (by default it’s in the Dock).
  2. In the search field in the top-right corner, type Xcode and press the Return key.
  3. The Xcode app shows up as the first search result.
  4. Click Get and then click Install App.
  5. Enter your Apple ID and password when prompted.
  6. Xcode is downloaded into your /Applications directory.

Yay.. we are done with the setup…

How to get started with Swift:

Well, This is your choice to learn it the way you like.

Swift is very well documented and Swift is more similar to languages such as Ruby and Python than is Objective-C.

Check out the official documentation here.

You can practice swift in a bunch of places but I’d recommend doing it with swift playgrounds. which comes along with Xcode.

But wait, swift is just the language to make apps but not the framework or toolset for it.

What to choose UIKit or SwiftUI?

What’s UIKit?

The UIKit framework provides the required infrastructure for your iOS or tvOS apps. It provides the window and views architecture for implementing your interface, the event handling infrastructure for delivering Multi-Touch and other types of input to your app, and the main run loop needed to manage interactions among the user, the system, and your app. Other features offered by the framework include animation support, document support, drawing and printing support, information about the current device, text management, and display, search support, accessibility support, app extension support, and resource management.

What’s SwiftUI?

SwiftUI provides views, controls, and layout structures for declaring your app’s user interface. The framework provides event handlers for delivering taps, gestures, and other types of input to your app, and tools to manage the flow of data from your app’s models down to the views and controls that users will see and interact with.

Define your app structure using the App protocol, and populate it with scenes that contain the views that make up your app’s user interface. Create your custom views that conform to the View protocol, and compose them with SwiftUI views for displaying text, images, and custom shapes using stacks, lists, and more. Apply powerful modifiers to built-in views and your views to customize their rendering and interactivity. Share code between apps on multiple platforms with views and controls that adapt to their context and presentation.

You can integrate SwiftUI views with objects from the UIKit, AppKit, and WatchKit frameworks to take further advantage of platform-specific functionality. You can also customize accessibility support in SwiftUI, and localize your app’s interface for different languages, countries, or cultural regions.

There’s a whole of controversy on what to choose as a beginner, so I will attach a more detailed link out here to help you out decide.

I’d say start with UIKit and move on to SwiftUI but in the end, it’s your choice and taste of coding style u want to choose.

Thank you for reading the article. Have a nice day.

--

--