2026赛季投稿截止
2026年2月28日晚上11:59(太平洋标准时间 PST,已截止)
Swift Student Challenge(苹果 Swift 学生挑战赛)由 Apple 面向符合资格的全球学生举办,参赛者须满足所在国家或地区的最低年龄要求,中国大陆为年满14岁。参赛者独立创作 App Playground,提交一个可在三分钟内完成体验的互动作品。
学术活动中脱颖而出的优胜者不仅可以展示自己的编程实力,还能获得主题夹克和胸针,更重要的是能获得与苹果工程师一对一交流的机会,这对小编程者来说是一次难得的学习机会。
2020年6月22日,来自41个国家和地区的350位Swift学生挑战赛获奖者。来自中国大陆的23名学生Swift Playground原创作品,从苹果 Swift年度学生挑战赛中脱颖而出,而苹果Swift学生挑战赛冠军得主正是翰林学员余铁琳同学。
1、2026年 WWDC26 Apple Park 特别活动向2024—2026年 Swift 学生挑战赛获奖者开放随机抽选申请,获选参加者可与 Apple 专家进行一对一及小组实验室交流;本次申请已结束
2、挑战赛设获奖者及杰出获奖者。2026赛季评出350个获奖作品,50位杰出获奖者受邀前往 Apple Park 参加 WWDC 及为期三天的特别体验
2026年2月28日晚上11:59(太平洋标准时间 PST,已截止)
2026年2月6日至2月28日(已结束)
使用Swift语言编程,打造新一代创新App
英语
个人
https://developer.apple.com/cn/swift-student-challenge/index.html
挑战赛为数以千计的学生开发者提供了机会,让他们可以通过 Swift编程语言展现自身的创造力和编程能力,并从中收获可以在职业生涯和更多地方运用的实际技能。
在提交 App Playground 时,参赛者不能是全职受雇开发者,并须满足以下资格条件:
1、最低年龄按国家或地区分别为13岁、14岁、15岁或16岁,中国大陆为年满14岁。未达到最低年龄要求者,可由法定监护人发送英文邮件至 swiftstudentchallenge@apple.com 申请特别许可,是否获准由 Apple 决定
2、已在 Apple 免费注册为 Apple 开发者,或者已是 Apple Developer Program 的成员
3、提交作品时满足以下任一条件:
● 现正就读于,或过去90天内毕业于经认可的学术机构、同等正规家庭学校或 Apple Developer Academy
● 是 STEM 组织教育课程的在读学生
● 在过去6个月内从高中或同等学校毕业,并且正在等待认可的学术机构录取或已被录取
提交材料还须包含 PDF、PNG 或 JPEG 格式的最新课程表或其他最新在读证明,以及院长或校长的联系信息。证明须清楚显示本人姓名、学校或组织名称和提交时有效的日期,证明文件可使用任何语言。
获得 Swift Student Challenge 奖项以三次为限,杰出获奖者只能入选一次
在 App Playground 中创建一个互动式场景,提供不超过三分钟的体验。发挥你的创造性。如果你需要灵感,可以借鉴示例模板 中更高级的创意。你还可以通过添加图形和音频等元素,彰显自己的个人风格。
要求:
● 提交的作品必须是 App Playground (.swiftpm),请压缩成一个 ZIP 文件
● 每人只能提交一个 App Playground,且只能提交一次信息;须在截止时间前通过 https://developer.apple.com/swift-student-challenge/apply 提交
● 你的创作不可依赖于网络连接,在 App Playground 中使用的所有资源都应位于本地并包含在这个 ZIP 文件中。提交作品将被离线评审
● ZIP 文件大小不可超过 25 MB
● 提交作品必须由你独自创作,或者是你独自修改的模板。集体作品不予接受。你可以包含第三方开源许可代码和/或公共领域的图像和声音,但应注明其来源和使用原因
● App Playground 必须使用 Swift Playground 4.6 或 Xcode 26,或更高版本构建并可在其中运行,可以融入对 Apple Pencil 的使用
● App Playground 和提交表单的论述性回答须使用英文;课程表或其他在读证明可使用任何语言
● 可以使用 AI 工具协助项目中的特定任务,但须如实披露全部使用情况,并通过作品展示实质性个人贡献、技术理解及问题解决能力
● 提交表单中的所有必填论述性问题,均须由参赛者本人撰写回答
● 作品须在评审时正常运行,不得要求登录,也不得使用分析或跟踪代码识别、跟踪评审人员的活动
● 不得将以往已提交的作品仅作极少改动或不作改动后再次提交
作品评审包括 App Playground 的技术完成度、创意,以及提交表单问题的书面回答内容;获奖评选还关注创新、社会影响与包容性。
为你的App Playground构想、起草和整理创意,下载将创想变成现实所需的资源,然后开始构建吧!
学习使用深受专业开发者喜爱的 Swift 语言来编程,为构建App来解决你关心的问题开启无限可能。加入由学生开发者组成的全球社区,使用Swift打造新一代创新App。
探索工具
Swift Playgrounds 和 Xcode 等工具可帮助任何拥有奇思妙想的人打造优秀的作品。如果你刚刚接触 App 开发,可以尝试使用 Swift Playgrounds,它包含从编写你人生中的第一行代码,到构建第一款 App 所需的一切。
如果你非常熟悉 App 开发,请尝试使用 Xcode,它是 Apple 强大的集成式开发环境,供世界各地的专业人士用来开发、测试和分发 App。
你可以使用 Swift Playgrounds 或 Xcode 来编写 App Playground,它是供你在构建过程中进行试验的简洁空间。要向 Swift Student Challenge 提交作品,你需要提交一个 Playground,其中包含一个可以在三分钟内完成体验的交互式场景。
设计你的 App
出色的 App 始于绝妙的创意。想想你的 App 能做些什么,以及能解决什么问题。
你可以使用 App Design Workbook 来查看 App 设计流程的核心原则:定义、原型设计、测试、验证和迭代。如需详细了解如何构建原型,请观看“60 秒完成原型设计”。你甚至可以使用“设计一个简单的 App” 项目来练习设计 App。准备就绪后,设计要向挑战赛提交的 App。
了解如何构建 App
下载最新版本的 Swift Playgrounds。通过探索“开始构建 App”和“继续构建 App”来培养你的 SwiftUI 技能。这些有趣易懂的教程将为你演示编写和构建 App 的核心概念。
查看 Swift Playgrounds 教程,例如“给形状添加动画”、“使用网格整理”和“编辑网格”,进一步深化学习。
深入了解
进一步了解使用 Swift Playgrounds 或 Xcode 进行编程的最佳实践。
构建和迭代
现在是时候通过构建 App,将你掌握的 Swift 和 SwiftUI 方面的新技能运用于实践了。Swift Playgrounds 是一个不错的着手点。要创建新的 App Playground,请打开软件并轻点 App 按钮 (+)。
如果你已经熟悉在 Xcode 中编程或者想要尝试这样做,你也可以使用 Xcode 来构建 Playground。选择“文件”>“新建”>“项目”>“iOS”>“App Playground”。
你向 Swift Student Challenge 提交的 Playground 需要使用 Swift Playgrounds 或 Xcode 构建并在其中运行。
通过添加自己的图形和音频等元素,让你的 App 别具一格。如需寻找灵感,请了解 Apple 设计大奖获奖者如何将他们的奇思妙想变为现实。
检查你的作品
测试、测试、再测试!在发送提交的作品之前,请先与朋友、家人和同学分享你的 Playground,尽可能多地听取有关功能、宣传内容和用户体验的意见。分享你的作品还有助于确认,所有功能在其他人的设备上是否也能正常运行。
在论坛上发布你的问题
Apple 开发者论坛是一个很棒的平台,可供你提问并与其他参赛者交流。
苹果公司主办的Swift学生挑战赛一直是全球学生开发者展示才华的舞台。2025年的挑战赛即将于2月3日拉开帷幕,持续三周。这场赛事不仅为学生提供了展示创造力和编程能力的机会,还让他们能够学习到对未来职业生涯大...
More对于苹果生态的开发者而言,每年的WWDC都是不可错过的盛会。因为这是一个属于全球苹果生态开发者交流的平台,而且苹果也将在主题演讲中公布包括iOS、iPadOS、macOS、watchOS、tvOS等操作系统的最新特性,帮助开发...
More1、完全零基础,可以参加吗?
当然可以!即使完全没有接触过编程,也可以通过「边做边学」的方式,一步步地亲手构建属于自己的 app,这个过程要比大多数人想象得简单很多,而且除了奖品之外,你还能额外获得编程技能。
2、参赛需要哪些基础?
作为 Swift 学生挑战赛的指定编程语言,想要参赛,Swift 是一定要会的。不过,Swift 直观的语法对新手十分友好,即便是普通人也能通过官方或非官方的各种资料快速上手。
至少需要了解 Swift 语言的以下基础知识:
变量赋值与使用
数据类型
条件与循环语句
类与对象
想要写出漂亮的用户界面,这些 SwiftUI 知识必不可少:
绘制常见元素(例如窗口、文本、输入框、列表等)
利用修饰符调整元素外观属性,并与事件绑定
利用 VStack、HStack 和 ZStack 排列多个元素
控制元素尺寸