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!


  • Let's Solve The FizzBuzz Challenge in Swift

    Let's Solve The FizzBuzz Challenge in Swift
    August 5 2020 in App Development FizzBuzz is a legendary coding challenge. You simply must give it a try! But... what approaches can you use to solve FizzBuzz with the Swift programming language?

  • Lazy Computed Properties in Swift

    Lazy Computed Properties in Swift
    August 5 2020 in App Development Lazy computed properties are super useful in Swift programming. But you can't just make any computed property lazy. How do you get around that? Learn how to use lazy computed properties in this article. Enjoy!

  • An Extensive Guide to WKWebView

    An Extensive Guide to WKWebView
    August 5 2020 in App Development You use WKWebView to display interactive web content in your app. In this article you'll learn how to work with WKWebView, how to inject JavaScript and respond to event listeners, and some scenarios in which a web view is super helpful.

  • Delegation in Swift Explained

    Delegation in Swift Explained
    August 5 2020 in App Development Delegation, also known as the Delegate pattern, is frequently used in practical iOS development. It's a must-have in your iOS developer's toolbox, and in this tutorial we're going to figure out how delegation works.

  • Protocols in Swift Explained

    Protocols in Swift Explained
    August 5 2020 in App Development Protocols are prominently used in Swift. What makes them so elegant and powerful? In this article you'll learn how to work with protocols in Swift and why they are useful for practical iOS development.

  • Conditionals in Swift with If, Else If, Else

    Conditionals in Swift with If, Else If, Else
    August 4 2020 in App Development In Swift you use conditionals to make decisions in your code, with if, else if and else. If this happens, then do that. In this article you'll learn how to use conditionals in your Swift code. We'll get into boolean logic, expressions, operators, and the syntax of if, else if and else blocks. Let's get started!

  • Object-Oriented Programming (OOP) in Swift

    Object-Oriented Programming (OOP) in Swift
    August 4 2020 in App Development Object-Oriented Programming (OOP) helps you structure your Swift code. This article introduces classes, objects, properties, functions, and inheritance, and how to use them in Swift. Let's get started!

  • Functions in Swift Explained

    Functions in Swift Explained
    August 4 2020 in App Development In Swift you use functions to perform specific tasks in your code. It's that simple! In this article you'll learn how to define and call functions, how to use function parameters, and how to return a value from the function.

  • Variables and Constants in Swift Explained

    Variables and Constants in Swift Explained
    August 4 2020 in App Development You use variables and constants in Swift to store information. In this tutorial you'll learn how to declare and initialize variables, how to use them, and how type inference works. Let's get started!

  • Type Casting in Swift Explained

    Type Casting in Swift Explained
    August 3 2020 in App Development You use type casting in Swift to treat an instance of one class as another, in the same class hierarchy. In this article you'll learn how to use type casting in Swift. We'll take a look at upcasting, downcasting, checking types, and their syntax.

  • Working with Table View Controllers in Swift

    Working with Table View Controllers in Swift
    August 3 2020 in App Development In this article I'll show you step-by-step how table view controllers work, and how you can use them. We'll go into the full gamut of UITableViewController, by diving into Object-Oriented Programming, delegation and the behind-the-scenes mechanisms of table views.

  • How To Use Apple’s Developer Documentation for Fun and Profit

    How To Use Apple’s Developer Documentation for Fun and Profit
    August 3 2020 in App Development In this article I’ll guide you through using Apple's developer documentation, articles and resources effectively – for app development, marketing and business. I’ll show you where to find them and how you can apply the information in your own app development projects.

  • How To Design Your App’s Database

    How To Design Your App’s Database
    August 3 2020 in App Development How do you design your mobile app’s database? Every app has a database these days, whether it’s locally or in the cloud. In this article I’ll walk you through the process of app database design. We look at database tools, how to structure your data, and how to create relationships.

  • Promises in Swift

    Promises in Swift
    July 29 2020 in App Development Promises in Swift simplify your asynchronous code. Instead of "callback hell" you create a concise chain of async functions and keep your code clean. Let's find out how!

  • SOLID: The Single Responsibility Principle

    SOLID: The Single Responsibility Principle
    July 28 2020 in App Development The SOLID design principles are crucial to understand, for iOS developers. The first one? The Single Responsibility Principle. Sounds complex – but it's pretty simple. Do one thing only! Here's how.

  • How To Find Strings with Regular Expressions in Swift

    How To Find Strings with Regular Expressions in Swift
    July 26 2020 in App Development How do you find strings with regular expressions in Swift? In this tutorial, we'll code a function from scratch that extracts hashtags from a string. Happy coding!

  • Dependency Injection in Swift

    Dependency Injection in Swift
    July 18 2020 in App Development Dependency Injection sounds scary... but it's actually pretty simple. On top of that, understanding dependency injection will greatly improve your code quality and productivity as a Swift developer!

  • Objective-C for Swift Developers

    Objective-C for Swift Developers
    July 16 2020 in App Development Is Objective-C dead? No – it's still prevalent in Cocoa Touch, open-source code, and the app shop next door. Learning Swift? Learn a bit of ol' ObjC, too.

  • Understanding Model-View-Controller (MVC) on iOS

    Understanding Model-View-Controller (MVC) on iOS
    July 16 2020 in App Development Model-View-Controller structures the flow of data and interaction in your app. It's an exceptionally powerful software architectural pattern and it's important for iOS developers to master. Let's get started!

  • Shuffling Arrays in Swift with Fisher-Yates

    Shuffling Arrays in Swift with Fisher-Yates
    July 15 2020 in App Development In this tutorial, you'll learn how to shuffle an array of strings in Swift. We'll use the Fisher-Yates approach, and also work out our own algorithm for shuffling. It's great practice to brush up on your algorithms skills. Algorithms are fun!

  • Working with UserDefaults in Swift

    Working with UserDefaults in Swift
    July 15 2020 in App Development UserDefaults are useful for storing small pieces of data in your app. You use it to save your app user's settings, set some "flags", or simply use it as a tiny data store. You learn how to use UserDefaults in this article.

  • Displaying Alerts with UIAlertController in Swift

    Displaying Alerts with UIAlertController in Swift
    July 15 2020 in App Development In this tutorial, you'll learn how to use the UIAlertController class to display alert dialogs to the user of your iOS app. We'll dive into setting up the alerts, responding to user actions, and getting input from the user with text fields.

  • Why App Architecture is Important

    Why App Architecture is Important
    July 14 2020 in App Development You wouldn't build a house on quicksand. Would you build an app without architecture? In this article we'll find out what it means to build an app with a thoughtful architecture.

  • FlatMap and CompactMap Explained in Swift

    FlatMap and CompactMap Explained in Swift
    July 12 2020 in App Development Swift has a bunch of functions that are useful for transforming collections and sequences. In this tutorial, we'll discuss map(_:), flatMap(_:) and compactMap(_:).

  • Map, Reduce and Filter in Swift

    Map, Reduce and Filter in Swift
    July 9 2020 in App Development In Swift you use map(), reduce() and filter() to transform collections, like arrays, without using a for-loop. They're quite powerful, but also challenging. Let's dive in!

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