apple Swift Curriculum Guide User Guide

October 27, 2023
Apple

Curriculum Guide

Spring 2021

Develop in Swift

Develop in Swift is a comprehensive coding offering intended for students in Year 10 and up. The curriculum prepares students for higher education or a career in app development using the Swift programming language, and it’s complemented by free online professional learning for educators. Swift is designed for Mac ­- which supports all major programming languages ­- making it the ideal device for teaching and learning code.

As students move from Develop in Swift Explorations or AP® CS Principles to more advanced concepts in Fundamentals and Data Collections, they’ll explore designing and building a fully functioning app of their own ­ and can even earn AP® credit or an industry-recognised certification. And for out-of-school coding, the App Design Workbook, App Showcase Guide and Swift Coding Club help students design, prototype and celebrate their app ideas.

Secondary School Curriculum Pathway
Explorations or AP® CS Principles

180 hours

Students will learn key computing concepts, building a solid foundation in programming with Swift. They’ll learn about the impact of computing and apps on society, economies and cultures, while also exploring iOS app development. The AP® CS Principles course extends Develop in Swift Explorations to prepare students for the AP® Computer Science Principles exam.

Unit 1: Values
Episode 1: The TV Club
Unit 2: Algorithms
Episode 2: The Viewing Party
Unit 3: Organising Data
Episode 3: Sharing Photos
Unit 4: Building Apps

Fundamentals

180 hours

Students will build fundamental iOS app development skills with Swift. They’ll master the core concepts and practices that Swift programmers use every day, and build a basic fluency in Xcode source and UI editors. Students will be able to create iOS apps that adhere to standard practices, including the use of stock UI elements, layout techniques and common navigation interfaces.

Unit 1: Getting Started with App Development
Unit 2: Introduction to UIKit
Unit 3: Navigation and Workflows
Unit 4: Build Your App

Data Collections

180 hours

Students will expand on the knowledge and skills they’ve developed in Fundamentals by extending their work in iOS app development, creating more complex and capable apps. They’ll work with data from a server and explore new iOS APIs that allow for much richer app experiences ­ including displaying large collections of data in multiple formats.

Unit 1: Tables and Persistence
Unit 2: Working with the Web
Unit 3: Advanced Data Display
Unit 4: Build Your App

Higher Education Curriculum Pathway
Explorations

One term

Students will learn key computing concepts, building a solid foundation in programming with Swift. They’ll learn about the impact of computing and apps on society, economies and cultures while exploring iOS app development.

Unit 1: Values
Episode 1: The TV Club
Unit 2: Algorithms
Episode 2: The Viewing Party
Unit 3: Organising Data
Episode 3: Sharing Photos
Unit 4: Building Apps

Fundamentals

One term

Students will build fundamental iOS app development skills with Swift. They’ll master the core concepts and practices that Swift programmers use every day, and build a basic fluency in Xcode source and UI editors. Students will be able to create iOS apps that adhere to standard practices, including the use of stock UI elements, layout techniques and common

Unit 1: Getting Started with App Development
Unit 2: Introduction to UIKit
Unit 3: Navigation and Workflows
Unit 4: Build Your App

Data Collections

One term

Students will expand on the knowledge and skills they’ve developed in Fundamentals by extending their work in iOS app development, creating more complex and capable apps. They’ll work with data from a server and explore new iOS APIs that allow for much richer app experiences ­ including displaying large collections of data in multiple formats.

Unit 1: Tables and Persistence
Unit 2: Working with the Web
Unit 3: Advanced Data Display
Unit 4: Build Your App

Key Features

Xcode playgrounds
Students learn programming concepts as they write code in playgrounds -­ interactive coding environments that let them experiment with code and see results immediately.

Guided app projects
Using the included project files, students can work with key concepts without having to build an app from scratch. Supporting images and videos challenge them to apply their knowledge.

**Connected World episodes***
Illustrated Connected World episodes allow students to explore everyday activities and tools ­- from searching on the web and taking photos to interacting on social media -­ while exploring the technology behind them and their impact on society.

Step-by-step instructions
Detailed instructions with images and videos guide students through all the steps of building an app in Xcode.

*Available in Develop in Swift AP® CS Principles and Develop in Swift Explorations courses only.

Develop in Swift Explorations and AP® CS Principles

Apple’s app development curriculum starts with the Develop in Swift Explorations and AP CS Principles books to help students learn key computing concepts and build a solid foundation in programming with Swift. They’ll learn about the impact of computing and apps on society, economies and cultures, while also exploring iOS app development. Lessons will take students through the app design process: brainstorming, planning, prototyping and evaluating an app design of their own. While they may still be developing skills to convert prototypes into full apps, designing an app is a critical skill and encourages students to learn to code.

As a College Board-endorsed provider for the 2021-2022 school year, Apple expanded the Explorations course to create AP® CS Principles, including material to prepare students for the AP® Computer Science Principles exam.

Download: apple.co/developinswiftexplorations
Download: apple.co/developinswiftapcsp

Unit 1: Values. Students learn about the fundamental units of Swift ­ the values that flow through their code, including text and numbers. They explore how to associate names with values using variables. The unit culminates in an app project to display a photo.

Episode 1: The TV Club. Students follow members of a TV club as they anticipate the new series of their favourite programme. They learn how searching on the web and signing up for accounts relates to their personal information, as well as how to think about their privacy while using apps.

Unit 2: Algorithms. Students learn how to structure their code using functions to encapsulate repetitive tasks, use if/else statements to represent decisions and explore how Swift uses types to distinguish different kinds of data. The culminating project is a QuestionBot app that responds to user input from the keyboard.

Episode 2: The Viewing Party. The TV club story continues as its members stream the episode while texting each other. Students explore how data is represented inside their devices at the lowest level and how it flows across the internet. They also learn more about security and privacy of data.

Unit 3: Organising Data. Students explore how to create custom types using structs, and how to group large quantities of items into arrays and process them using loops. They also learn how enums represent a set of related values, and in the app project at the end of the unit, they build an interactive game with colourful shapes.

Episode 3: Sharing Photos. The TV club concludes as its members share pictures of the viewing party on social media. Students learn about digitising analogue data and parallel computing, and they explore some consequences of sharing data online.

Unit 4: Building Apps. Students deepen their skills in Xcode and Interface Builder in guided projects to build apps from the ground up. They learn how to add user interface elements to a screen, connect those elements to their code and respond to the events generated by user interaction. They use the incremental development process to build their apps one piece at a time, testing as they go. The culmination of the unit is a study app with flash card and quiz modes.

Develop in Swift Fundamentals

Students will build fundamental iOS app development skills with Swift. They’ll master the core concepts and practices that professional programmers use every day and build a basic fluency in Xcode source and UI editors. Students will be able to create iOS apps that adhere to standard practices, including the use of stock UI elements, layout techniques and common navigation interfaces. Three guided app projects will help students build an app in Xcode from the ground up with step-by-step instructions. Xcode playgrounds will help students learn key programming concepts in an interactive coding environment that lets them experiment with code and see the results immediately. They’ll explore app design by brainstorming, planning, prototyping and evaluating an app idea of their own.
Download: apple.co/developinswiftfundamentals

Unit 1: Getting Started with App Development. Students find out about the basics of data, operators and control flow in Swift as well as documentation, debugging, Xcode, building and running an app, and Interface Builder. Then they apply this knowledge to a guided project called Light, in which they create a simple torch app.

Unit 2: Introduction to UIKit. Students explore Swift strings, functions, structures, collections and loops. They also learn about UIKit ­ the system views and controls that make up a user interface ­ and how to display data using Auto Layout and stack views. They put this knowledge into practice in a guided project called Apple Pie, where they build a word-guessing game app.

Unit 3: Navigation and Workflows. Students discover how to build simple workflows and navigation hierarchies using navigation controllers, tab bar controllers and segues. They also examine two powerful tools in Swift: optionals and enumerations. They put this knowledge into practice with a guided project called Personality Quiz ­ a personalised survey that reveals a fun response to the user.

Unit 4: Build Your App. Students learn about the design cycle and use it to design an app of their own. They explore how to develop and iterate on their designs, as well as how to create a prototype that can serve as a compelling demo and launch their project towards a successful 1.0 release.

Develop in Swift Data Collections

Students will expand on the knowledge and skills they’ve developed in Develop in Swift Fundamentals by extending their work in iOS app development, creating more complex and capable apps. They’ll work with data from a server and explore new iOS APIs that allow for much richer app experiences ­ including displaying large collections of data in multiple formats. Three guided app projects will help students build an app in Xcode from the ground up with step-by-step instructions. Xcode playgrounds will help students learn key programming concepts in an interactive coding environment that lets them experiment with code and see the results immediately. They’ll explore app design by brainstorming, planning, prototyping and evaluating an app idea of their own. Download: apple.co/developinswiftdatacollections

Unit 1: Tables and Persistence. Students learn scroll views, table views and building complex input screens. They also explore how to save data, share data to other apps and work with images in a user’s photo library. They’ll use their new skills in a guided project called List, a task-tracking app that allows the user to add, edit and delete items in a familiar tablebased interface.

Unit 2: Working with the Web. Students learn about animations, concurrency and working with the web. They’ll apply what they’ve learnt in a guided project called Restaurant – a customisable menu app that displays a restaurant’s available dishes and allows the user to submit an order. The app uses a web service that lets students set up the menu with their own menu items and photos.

Unit 3: Advanced Data Display. Students learn how to use collection views to display data in a highly customisable, two-dimensional layout. They also discover the power of Swift generics and bring all of their skills together in an app that manages a complex data set and presents a customisable interface.

Unit 4: Build Your App. Students learn about the app design cycle and use it to design an app of their own. They explore how to develop and iterate on their designs, as well as how to create a prototype that can serve as a compelling demo and launch their project towards a successful 1.0 release.

Teaching Code with Apple

When you teach coding, you’re not only teaching the language of technology. You’re also teaching new ways to think and bring ideas to life. And Apple has free resources to help you bring code into your classroom, whether you’re just starting or ready to get your students certified in Swift. The Everyone Can Code curriculum introduces students to coding through a world of interactive puzzles and playful characters with the Swift Playgrounds app. The Develop in Swift curriculum introduces students to the world of app development by making it easy for them to design and build a fully functioning app of their own design. And Apple supports educators with professional learning offerings to help you get started bringing Everyone Can Code and Develop in Swift to students.

Free Self-Paced Online Professional Learning
The Develop in Swift Explorations and AP® CS Principles course is available through Canvas by Instructure. Participants will learn the foundational knowledge they need to teach Swift and Xcode directly from Apple education experts, making this the ideal introductory course for teaching Develop in Swift in any educational environment. Find out more at apple.co/developinswiftexplorationspl.

Bring an Apple Professional Learning Specialist to your school
For educators interested in going further, Apple Professional Learning Specialists organise multiple-day training engagements designed to provide hands-on, immersive learning experiences to help staff members develop innovative instructional practices that engage students.

To find out more about Apple Professional Learning, please contact your Apple Authorised Education Specialist for more information.

App Development with Swift Certifications

Educators who are teaching app development with Swift can help their students prepare for a career in the app economy by earning an industry-recognised certification. App Development with Swift certifications recognise foundational knowledge of Swift, Xcode and app development tools covered by the free Develop in Swift Explorations and Develop in Swift Fundamentals courses. After successfully completing an App Development with Swift exam, students will earn a digital badge they can add to a CV, portfolio or email, or they can share with professional and social media networks. Learn more: certiport.com/apple

APP DEVELOPMENT
WITH SWIFT
Associate

App Development with Swift Associate
Secondary school or higher education students who successfully complete the App Development with Swift Associate exam will demonstrate knowledge of the impact of computing and apps on society, economies and cultures while exploring iOS app development. This certification is aligned with the Develop in Swift Explorations course.

APP DEVELOPMENT
WITH SWIFT
Certified User

App Development with Swift Certified User
Higher education students who successfully complete the App Development with Swift Certified User exam will demonstrate fundamental iOS app development skills with Swift. They’ll have knowledge of core concepts and practices that professional Swift programmers use every day. This certification is aligned with the Develop in Swift Fundamentals course.

Additional Resources

App Design Workbook

The App Design Workbook uses a design thinking framework to teach students app design ­ a fundamental skill of iOS app development. They’ll explore the relationship between app design and coding in Swift through each stage of the app design cycle to bring their app ideas to life. Download: apple.co/developinswiftappdesignworkbook

App Showcase Guide

Celebrate student ingenuity by encouraging students to share their coding achievements with community events, such as project demonstration events or app showcases. The App Showcase Guide provides practical support to help you host an in-person or virtual app showcase event. Download: apple.co/developinswiftappshowcaseguide

Swift Coding Club

Swift Coding Clubs are a fun way to design apps. Activities are built on learning Swift programming concepts in Xcode playgrounds on Mac. Students collaborate with their peers to prototype apps and think about how code can make a difference in the world around them. Download: apple.co/swiftcodingclubxcode

AP is a registered trademark of the College Board and is used with permission. Features are subject to change. Some features may not be available in all regions or all languages. © 2021 Apple Inc. All rights reserved. Apple, the Apple logo, Mac, MacBook Air, Swift, the Swift Logo, Swift Playgrounds and Xcode are trademarks of Apple Inc., registered in the US and other countries. App Store is a service mark of Apple Inc., registered in the US and other countries. iOS is a trademark or registered trademark of Cisco in the US and other countries, and is used under licence. Other product and company names mentioned herein may be trademarks of their respective companies. Product specifications are subject to change without notice. This material is provided for information purposes only; Apple assumes no liability related to its use. April 2021

References

Read User Manual Online (PDF format)

Loading......

Download This Manual (PDF format)

Download this manual  >>

Related Manuals