App Development

Want to build an app? Are you already building one? Check out one of the many tutorials on app development below.

If you want to make an app for iOS, you’ll need a Mac. Learn about Xcode, Swift, and the iOS SDKs. A great way to learn more about iOS development and Swift programming is to build your own app projects. You can also use few alternatives for Windows or Linux.

Most apps are connected to the internet these days, which means you’ll need a back-end that stores data in the cloud. Popular back-ends include Firebase and Realm.

If you want to publish your apps in the App Store, you’ll need an Apple Developer Account. You can always run your apps on your own iPhone, with Xcode, for free.

Let’s get to it!


  • How To Create a New Xcode App Project

    How To Create a New Xcode App Project
    November 19 2020 in App Development You'd think that creating a new app project in Xcode is as simple as File → New → Project, but that approach actually hides interesting complexity. In this tutorial, we'll discuss Xcode's new project options and the effect on your app.

  • How to Use

    How to Use "where" in Swift
    November 11 2020 in App Development You use the 'where' keyword to filter things in Swift. Loop over all items 'where x = true', for example. It's simple and powerful! In this tutorial, we'll discuss the various scenarios in which you can use 'where' in Swift.

  • Fun with print() in Swift

    Fun with print() in Swift
    November 5 2020 in App Development You use print() in Swift to print text to the Console. It's super useful for finding out what's going on in your code. In this tutorial, we'll discuss how you can customize print() to code more productively.

  • How To Fix Strong Reference Cycles in Swift

    How To Fix Strong Reference Cycles in Swift
    October 30 2020 in App Development A strong reference cycle causes a memory leak in your iOS app, and that's a bad user experience. In this tutorial, we'll discuss what causes strong reference cycles and how you can resolve them.

  • Weak vs. Strong References in Swift

    Weak vs. Strong References in Swift
    October 21 2020 in App Development Creating a strong reference to an instance in Swift, means that the instance is kept in the iPhone's memory until you're done with it. You can also create weak references. Both are part of the memory management mechanism called ARC. In this tutorial, we'll discuss how weak and strong references work on iOS with Swift.

  • Automatic Reference Counting (ARC) in Swift

    Automatic Reference Counting (ARC) in Swift
    October 15 2020 in App Development Automatic Reference Counting (ARC) is a mechanism to manage memory in Swift. Working with ARC concepts is essential in day-to-day iOS development. In this tutorial, we'll discuss how ARC is used to manage memory on iOS.

  • Self and self in Swift

    Self and self in Swift
    October 8 2020 in App Development In Swift, "self" typically refers to the current object within a class or struct. But there's more: "self", "Self" and even ".self". How does that work? Get ready for some introspection and metaprogramming, as we discover The Self in Swift!

  • Keypaths in Swift Explained

    Keypaths in Swift Explained
    October 5 2020 in App Development With keypaths in Swift, you're referencing a property, as opposed to its value. You can pass these keypaths around in your code, and create all sorts of metaprogramming mayhem with it. Let's find out more!

  • Working with Files on iOS with Swift

    Working with Files on iOS with Swift
    October 1 2020 in App Development You use FileManager to work with files and directories on iOS. It's a Swift API that helps you read from, and write to, various data and file formats. In this tutorial, you learn how to work with files on iOS with Swift.

  • Storing Data with NSCoding and NSKeyedArchiver

    Storing Data with NSCoding and NSKeyedArchiver
    September 27 2020 in App Development You can use NSCoding and NSKeyedArchiver to save and load simple data objects with Swift. It's perfect for scenarios when you don't need a more complex tool, like Core Data. Let's dive in!

  • Strings in Swift Explained

    Strings in Swift Explained
    September 22 2020 in App Development You use strings in Swift to represent text. They're strings of characters, use the String value type, and are stored with the intriguing Unicode/UTF-8 data format. Let's find out more about strings in Swift!

  • Ranges in Swift Explained

    Ranges in Swift Explained
    September 9 2020 in App Development You use ranges in Swift to define values between a lower and upper limit. Ranges are useful for creating slices of arrays, checking if a value is contained in a range, and much more. Let's find out how they work!

  • How To Download, Install and Update Xcode

    How To Download, Install and Update Xcode
    September 1 2020 in App Development Xcode is the Mac app that developers use to create apps for Apple's platforms, like iOS. In this tutorial, you'll learn how you can download and install Xcode on your Mac.

  • Working with Stacks in SwiftUI

    Working with Stacks in SwiftUI
    August 28 2020 in App Development You use stacks in SwiftUI to group views together. You can choose from the VStack, HStack and ZStack, and combine them to build complex layouts. In this tutorial, you'll learn how to use stack views with SwiftUI.

  • Create UIs with Views and Modifiers in SwiftUI

    Create UIs with Views and Modifiers in SwiftUI
    August 23 2020 in App Development How do you create User Interfaces with SwiftUI? In this tutorial, we'll dive into the fundamental concepts and approaches that make SwiftUI work. We'll discuss views and modifiers and create a card view in the process. Let's get started!

  • 1x, 2x and 3x Image Scaling on iOS Explained

    1x, 2x and 3x Image Scaling on iOS Explained
    August 20 2020 in App Development How does image scaling work on iOS, and what does @2x mean? Different iPhone and iPad models have different screen sizes and pixel densities (PPI). Find out in this tutorial how that affects practical iOS development.

  • Working with Assets Catalogs in Xcode

    Working with Assets Catalogs in Xcode
    August 20 2020 in App Development Assets catalogs are super useful to organize your app's assets in Xcode. Drop graphics, images, icons, colors and vectors into an asset catalog and use them directly in your app's code. Find out more in this tutorial!

  • Random Numbers in Swift

    Random Numbers in Swift
    August 14 2020 in App Development Let's take a look at random numbers and their functions in Swift. How do you use them? What are they for? Let's find out!

  • Playing With Code: Insertion Sort in Swift

    Playing With Code: Insertion Sort in Swift
    August 6 2020 in App Development Let's play with code! Today, we'll discuss a sorting algorithm called insertion sort. And we'll build it step-by-step in Swift. It's interesting to see how sorting works exactly, and good practice to code it ourselves. Let's get started!

  • How To Solve SIGABRT Error in Xcode

    How To Solve SIGABRT Error in Xcode
    August 6 2020 in App Development One minute your iOS app runs fine in Xcode, and the next it has hopelessly crashed with a cryptic "SIGABRT" error. What's going on!? Let's find out...

  • How To Generate a Random Unique Identifier with UUID in Swift

    How To Generate a Random Unique Identifier with UUID in Swift
    August 6 2020 in App Development Universally unique IDs are very useful in Swift. How do you generate them? And how do they work behind-the-scenes? Let's dive into the world of RFCs, UUID and big numbers...

  • Convert String to Int (and Back) in Swift

    Convert String to Int (and Back) in Swift
    August 6 2020 in App Development You can't fit a round peg in a square hole. But you can convert from String to Int, and vice versa! And it depends on the size of the peg, really. Well... let's find out if the article is better than this cheesy intro!

  • Extensions in Swift Explained

    Extensions in Swift Explained
    August 6 2020 in App Development Extensions in Swift are super powerful, because they help you organize your code better. You use an extension to add new functionality to an existing class. Let's find out how!

  • How To: Working with Plist in Swift

    How To: Working with Plist in Swift
    August 6 2020 in App Development A property list, or plist, is an XML file that contains basic key-value data. You can use a plist in your iOS apps as a simple key-value data store. Let's find out how that works!

  • How To Find an Item in an Array in Swift

    How To Find an Item in an Array in Swift
    August 6 2020 in App Development How do you find an item in an array in Swift? Let's find out! In this article you'll learn how to use the various generic functions to find matching items in an array.

Reinder de Vries

Hi, I'm Reinder.
I help developers play with code.

Get the Weekly

Get iOS/Swift tutorials and insights in your inbox, every Monday.
  • This field is for validation purposes and should be left unchanged.

Most Popular

Browse Topics

Swift Sandbox

Code Swift right in your browser!
Go to the Swift Sandbox