Swift

Join the Swift Track
Swift is a modern open-source language with the aim of making programming simple things easy, and difficult things possible while still being fast and safe by design. Swift can run in scripting mode in the included REPL or it can be compiled with full support for C and Objective-C interoperability.
Join the Swift Track
Track mentors

13 Mentors

Our mentors are friendly, experienced Swift developers who will help teach you new techniques and tricks.
Track students

6,098 Students

Join thousands of students who have enjoyed learning and improving their skills by taking this track.
Track exercises

83 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Swift

//
// HelloWorld.swift
//

struct HelloWorld {
    static func hello(_ text: String = "World") -> String {
        return "Hello, \(text)!"
    }
}

Swift is a modern open source programming language that runs on macOS, Linux and on Windows using a linux subsystem.

Swift was developed initially by Apple to interoperate with their key frameworks, Cocoa and CocoaTouch, both of which are mostly implemented in Objective-C.

Swift is influenced by a large number of existing programming languages, and it incorporates concepts from a wide range of programming methods. Everything from scripting to object oriented and functional programming.

Apple refers to Swift as a "protocol oriented programming language" and has expressed the goal of eventually making Swift useful for everything from scripts to an operating system.


This Swift Tour is an introduction the language on Apple's Public Developer Website.


Wikipedia's Swift Page giving a good, Wikipedia-styled overview.


Swift is documented in The Swift Programming Language - again, on Apple's Public Developer Website - and in the iBooks Store. The ePub version is also available on Swift.org.

Join the Swift track

Exercism is a great website

What I like about it is that I am able to solve the challenges in a TDD way working in a environment that I am familiar (my own PC not a browser IDE) and the cherry on the top of the cake is that I have access to code reviews.

Relaxed. Encouraging. Supportive.

Meet the Swift Track mentors

Once you join the Swift language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Bo Oelkers

Bo Oelkers https://github.com/sendtobo

I love swift! I've been an iOS developer since iOS 3 and developing in Swift for over 2 years now at a large iOS company. I love the community surrounding swift, everyone has been so supportive. I'm hoping to help the developers grow and learn somethings myself along the way as well.
Avatar of Greg Stromire

Greg Stromire https://github.com/gstro

I learned to program on embedded devices, and later moved to iOS development in Objective-C and Swift. Most recently, I've been exploring functional programming in Scala. I'm interested in security principles and applied cryptography. And if I can ever find some spare free time, I would love to try out Rust!
Avatar of Makan Taghizadeh

Makan Taghizadeh https://github.com/MakanTaghizadeh

I'm an experienced iOS Developer and used Swift in many projects. Swift is the most lovable programming language I've ever developed. For, it's so modern, incredibly fast and safe by design.
Avatar of Dakota Kim

Dakota Kim https://github.com/GhostScientist

I have been programming for around 5 years using various languges and technologies. Currently, I focus on Swift and iOS development. I am excited to mentor for Swift and join Exercism's Objective-C track as a student!
Avatar of Seyed Mojtaba Hosseini Zeidabadi

Seyed Mojtaba Hosseini Zeidabadi https://github.com/MojtabaHs

Senior Developer Technical Lead ♛ iOS Programming Instructor ♛ UI/UX Designer ✔ More: https://www.linkedin.com/in/mojtabahosseini/
Avatar of John Turner

John Turner https://github.com/johndturn

I've built a couple of iOS apps in Swift, and love the syntax. It truly is my favorite strongly-typed language to work in. I'm excited to share what I've learned, and learn alongside others!
Fun. Challenging. Interesting

Community-sourced Swift exercises

These are a few of the 83 exercises on the Swift track. You can see all the exercises here.

Hello World
easy
optional values
text formatting
Queen Attack
easy
tuples
Pascal's Triangle
medium
lists
recursion
math
Wordy
medium
parsing
strings
transforming
Flatten Array
easy
lists
looping
searching
Secret Handshake
easy
bitwise operations
lists

Get started with the Swift track. As with everything on Exercism, it's 100% free!

Join the Swift Track