Skip to content

Swift Modules

You write software in files.

A simple program might be stored in a single file, but complex programs are written across multiple files.

Swift provides a way to group several files into a group, called module.

Modules helps us do 2 things: reuse code, and encapsulate code.

You just have to write a particular functionality once, and after putting it into a module, you can import that into different places and projects.

Encapsulation means that the library can do lots of complicated things internally, but you only expose a tiny bit of it to the outside.

You start using modules by importing them.

If you’ve ever written

import SwiftUI


import UIKit

you’ve already used modules. Frameworks like UIKit and SwiftUI, and many others, are modules.

After you import a module, everything that that module declares public will be visible inside your application code.

Modules can import other modules, and when this happens you have access to those modules automatically.

For example SwiftUI imports Foundation, so you don’t have to write

import SwiftUI
import Foundation

because you just need the first line.

Your application is a module, too.

Swift itself is a module, as well. And you never have to import Swift because it’s done automatically for you.

→ Download my free Swift Handbook!



You might be interested in those things I do:

  • Learn to code in THE VALLEY OF CODE, your your web development manual
  • Find a ton of Web Development projects to learn modern tech stacks in practice in THE VALLEY OF CODE PRO
  • I wrote 16 books for beginner software developers, DOWNLOAD THEM NOW
  • Every year I organize a hands-on cohort course coding BOOTCAMP to teach you how to build a complex, modern Web Application in practice (next edition February-March-April-May 2024)
  • Learn how to start a solopreneur business on the Internet with SOLO LAB (next edition in 2024)
  • Find me on X

Related posts that talk about swift: