Full course description
Great apps help us to create, connect, play, learn, and solve problems. This course is about designing and building excellent apps using Swift, Apple’s powerful and intuitive programming language.
Develop in Swift AP CS Principles will help you build a solid foundation in programming skills using Swift as the language. Throughout this course, you’ll get practical experience with the tools, techniques, and concepts needed to create a basic iOS app from scratch. You’ll also learn user interface design principles, which are fundamental to programming and making great apps. And, you’ll explore how technology affects the world, and your role in making technology a force for good.
Using This Book
Develop in Swift AP CS Principles will introduce you to core programming concepts through hands-on activities, Xcode playgrounds, and app projects. You’ll build your app development skills as you go, learning about app design as well as programming in Xcode. You’ll also have opportunities to think about the impact of computing innovations, and the decisions you make about your actions online and as an app developer.
The book is divided into four units that focus on building your programming skills and understanding of key concepts. Between units, you’ll explore a story about a group of students in a TV club. As you follow these episodes, you’ll have a chance to think about different aspects of online engagement, how information is shared online, and what kinds of decisions need to be made in a connected world.
By the end of the book, you will have built several simple apps and prototyped an app of your own design. And along the way, you’ll have gotten a taste for the world of app development—gaining an appreciation for how technology works, how you can use it to express yourself, and how it can be used to solve problems.
Each unit is divided into four sections:
You’ll begin by learning the key concepts covered in the unit, exploring how they relate to your everyday experiences, and completing activities that deepen your understanding. By using coding concepts to think about everyday problems, you’ll also be learning to think critically, to see the world as a programmer, and to apply computational reasoning.
In this section, you’ll apply the key concepts in Xcode playgrounds, where you can experiment with code and see the results immediately. As you complete each activity, you can check your understanding by answering review questions in the book.
You’ll also apply your understanding of the unit concepts through fun, creative playground challenges that will help you start thinking about your own app projects.
Later in the book, you’ll build simple apps to explore development topics.
You’ll be guided through the steps of building an app in Xcode. For this section, you’ll want to keep this book open while you’re working in Xcode.
You’ll explore the impact of computing innovations and experience the app design process. You’ll also consider the choices that app designers and developers make, knowing that their app could impact thousands—even millions—of people.
Using the App Design Journal, you’ll get creative. This is your chance to apply your design thinking, develop a great idea, create an interface, and prototype and pitch your concept. You’ll learn how to consider different perspectives, and how to use feedback from mentors, friends, and diverse users to improve your app.
Between the units, the episodes tell the story of a group of TV club students as they use technology in their daily lives. Each episode introduces key concepts about technology—and challenges you to analyze the students’ choices and to reflect on your own practices.
In this course, you’ll be learning the Swift programming language and working in Xcode. As a result, you’ll be joining an important Apple community—more than 20 million developers who write software for iOS, iPadOS, macOS, tvOS, and watchOS in the fast-growing app economy.
Swift is a powerful and intuitive programming language created by Apple. It makes programming easier, more flexible, and more fun. But Swift isn’t only great for getting you started with coding. It has the power to take you into your future—so you can graduate from writing the simplest program (like “Hello, world!”) to creating the world’s most advanced software.
Announced in 2014, Swift has become one of the fastest-growing languages in history. It’s open-source, which means that anyone—including the app developer community—can contribute directly to its continued development, helping it to evolve and become more capable. And another thing about Swift: You can apply your Swift skills to an ever-broader range of platforms, from mobile devices to desktop computers to the cloud.
Xcode is Apple's Integrated Development Environment (IDE) that's used to create apps for all Apple platforms: iOS, iPadOS, macOS, tvOS, and watchOS. It includes a source code editor for writing and managing code, a debugger for diagnosing problems, and a user interface editor—called Interface Builder—for laying out the visual elements of your app and connecting them to your code.
Much of the applied learning in this course takes place in an Xcode playground. Playgrounds allow you to write Swift code and immediately see the results in a live preview. Playing with code—and seeing what it does—is a great way to get started coding and to experiment with new ideas.
Explore the Xcode Support page.
To complete the lessons in this guide, you’ll need the following:
- A Mac running macOS Catalina.
- Xcode 11, available on the Mac App Store.
- Project files for the course. Download the resources for Xcode using the link below.
Note: To access these materials, you might need to enter the administrator name and password for the Mac you’re using.
Get ready to have some fun!