Steven Van Impe
Programming with Swift: Fundamentals is our introductory programming course. It covers the fundamental building blocks of programming, such as variables, control flow, functions, data collections, and types.
You don’t need any prior programming experience to start this course. However, we do assume some maturity and exposure to abstract concepts such as mathematics or grammar. A high school education should be sufficient.
Other than Swift itself, this course has no specific software requirements. You can use any of the major desktop operating systems to complete this course: macOS, Linux, and Windows. Getting Started will help you set up a development environment on your computer.
The objectives for this course are as follows:
Including evaluation, this course should take approximately 150 to 180 hours to complete.
This course has four parts. Other than the first, each part consists of chapters interspersed with exercises and ending with a programming challenge:
Each chapter, exercise, and challenge is part of a carefully designed learning path. It’s paramount that you read the chapters in order and that you complete every exercise and challenge before moving on.
Some of the exercises and challenges may seem difficult at first — this is intentional. Don’t give up and ask for help at the first sign of struggle. Instead, remove any distractions from your environment and focus on the problem at hand. Stick with it and take as much time as you need.
Challenging yourself with increasingly difficult problems is how you improve as a programmer. Don’t expect to learn how to program simply from reading instructions. Programming requires experience. The exercises and challenges in this course will give you that experience.
The solutions bundle contains solutions for all of the exercises and challenges in this course:
If you find an issue with the text, instructions, or code, please report it on our issue tracker:
Swift is a programming language developed by Apple. Swift’s unique blend of features makes it a solid choice for professional programmers as well as an excellent teaching language, which is why it was chosen for this course.
Swift is an open-source project, so anyone can contribute to it. As a result, Swift is rapidly growing from a language for Apple developers into a language that anyone can use.