SWIFT

What is Swift? Syntax, Usage, and Examples

Swift is a modern, high-performance programming language developed by Apple for building apps across iOS, macOS, watchOS, and tvOS. It combines speed, safety, and ease of use, making it a great choice for beginners and professionals alike.

How to Use Swift

Swift uses a clean and expressive syntax, making it easy to write and read. Here’s a basic Swift program:

print("Hello, Swift!")

This prints "Hello, Swift!" to the console.

Declaring Variables and Constants

Swift distinguishes between variables and constants. Use var for values that change and let for constants.

var userName = "Alice"  // Variable (modifiable)
let birthYear = 1990    // Constant (cannot change)

Using constants wherever possible makes code safer and prevents unintended changes.

Data Types and Type Inference

Swift uses type inference, meaning it can automatically determine a variable’s type. You can also specify types explicitly:

var age: Int = 30
var price: Double = 9.99
var isActive: Bool = true
var greeting: String = "Hello"

Explicit typing improves readability and reduces unexpected behavior.

Functions in Swift

Functions encapsulate reusable logic. Define a function using the func keyword:

func greet(name: String) -> String {
    return "Hello, \(name)!"
}

print(greet(name: "Alice"))  // Output: Hello, Alice!

Functions can take multiple parameters and return values of any type.

Control Flow Statements

Swift provides standard control flow structures like if, switch, and loops.

let temperature = 25

if temperature > 30 {
    print("It's hot outside.")
} else if temperature > 20 {
    print("It's warm.")  // This line executes
} else {
    print("It's cold.")
}

Loops allow you to iterate over data.

for number in 1...5 {
    print(number)  // Prints 1 to 5
}

var count = 3
while count > 0 {
    print("Countdown: \(count)")
    count -= 1
}

Use loops when you need to execute a block of code multiple times.

When to Use Swift

iOS and macOS Development

Swift is Apple's primary language for iOS and macOS apps. It integrates seamlessly with Apple's frameworks like UIKit and SwiftUI.

import UIKit

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        print("Welcome to my app")
    }
}

If you're building an app for an Apple device, Swift is the best choice.

Server-Side Development

Swift can also power backend applications using frameworks like Vapor.

import Vapor

let app = Application()
app.get("hello") { req in
    return "Hello, Swift Server!"
}
try app.run()

This makes Swift a full-stack language.

Scripting and Automation

Swift can run scripts directly from the terminal, making it useful for automation.

#!/usr/bin/swift

print("Swift script running")

You can write Swift scripts to handle repetitive tasks efficiently.

Examples of Swift in Action

Using Optionals

Swift’s optionals help prevent crashes by handling missing values safely.

var username: String? = nil

if let user = username {
    print("Welcome, \(user)")
} else {
    print("No user found")  // This line executes
}

Use if let or guard let to safely unwrap optionals.

Structs and Classes

Swift supports both structs and classes for defining custom types.

struct Car {
    var brand: String
    var speed: Int

    func description() -> String {
        return "\(brand) is going \(speed) km/h"
    }
}

let myCar = Car(brand: "Tesla", speed: 120)
print(myCar.description())

Classes allow inheritance, while structs are value types.

class Animal {
    var name: String

    init(name: String) {
        self.name = name
    }

    func makeSound() {
        print("Some generic sound")
    }
}

class Dog: Animal {
    override func makeSound() {
        print("Woof!")
    }
}

let myDog = Dog(name: "Buddy")
myDog.makeSound()  // Output: Woof!

Choose structs when working with simple data models and classes for more complex behaviors.

Error Handling

Swift has built-in error handling using do-catch.

enum FileError: Error {
    case notFound
    case noPermission
}

func readFile(name: String) throws {
    throw FileError.notFound
}

do {
    try readFile(name: "data.txt")
} catch {
    print("Error reading file: \(error)")
}

Use error handling to prevent runtime crashes.

Learn More About Swift

What is Swift Used for in Programming?

Swift is used in:

  • iOS and macOS development – The primary language for native Apple apps.
  • Server-side applications – Works with frameworks like Vapor.
  • Machine learning and AI – Compatible with Core ML and TensorFlow Swift.
  • Scripting and automation – Useful for writing system scripts.

Swift vs Objective-C

Swift replaced Objective-C as Apple’s preferred language due to:

  • Better performance – Faster execution and memory efficiency.
  • Safer syntax – Reduces crashes with optionals and strong typing.
  • Modern features – Includes generics, functional programming, and type inference.

If you're working with Apple’s ecosystem, Swift is the best choice for new projects.

Swift Playgrounds

Swift Playgrounds provides an interactive way to learn Swift without setting up a full project. It’s great for experimenting with Swift code.

Swift is a versatile, fast, and beginner-friendly language. Whether you're building mobile apps, backend services, or scripts, it offers a clean and efficient coding experience.

Learn to Code in Swift for Free
Start learning now
button icon
To advance beyond this tutorial and learn Swift by doing, try the interactive experience of Mimo. Whether you're starting from scratch or brushing up your coding skills, Mimo helps you take your coding journey above and beyond.

Sign up or download Mimo from the App Store or Google Play to enhance your programming skills and prepare for a career in tech.

You can code, too.

© 2025 Mimo GmbH