WWDC 是由 Apple 举办的一年一度的全球开发者大会,会上不仅会公布 iOS、iPadOS、macOS、watchOS 等最新版本的系统信息,还为开发者准备了多场技术相关的专题讲座,开发者甚至能直接与 Apple 工程师交流、咨询以及解决问题。

除了已经在 App Store 中推出作品的有经验的开发者们,还处在入门阶段、资历尚浅的学生开发者群体也是 Apple 一直以来关注的对象。每年 WWDC 期间,Apple 会通过 Swift 学生挑战赛、WWDC 奖学金等方式,鼓励学生开发者发挥创意、创作和提交自己的作品。

WWDC22 Swift 学生挑战赛也已于近期正式结束评选,来自全球各个国家和地区的 350 位学生开发者最终脱颖而出,获得了最终奖项。在这些获奖者中,有 27 名获奖学生来自大中华地区,其中来自中国大陆的获奖学生人数多达 21 位。

WWDC22 全球开发者大会期间,少数派也有机会与此次国内的几位 Swift 学生挑战赛获奖同学聊了聊,听他们讲了讲自己的参赛经历、获奖体会。

灵感来源于生活

在谈及自己的获奖作品的灵感来源时,多位同学都不约而同地提到了身边发生的小事。

就读同济大学软件工程专业的张佰一本次提交的 Swift Playgrounds 作品名为《Code Translator》,这是一款讲述《编译原理》课程中「中间代码生成」相关知识的互动教学类 App。在《编译原理》课程中,张佰一发现很多概念都晦涩难懂,因此才以此作为主题,希望这款 App 能够帮助其它学习这门课程的新手,降低学习难度。

《Code Translator》截图。

来自北京交通大学的韩楚博也是通过课业找到了参赛作品的灵感。同样主修软件工程专业的他,早在初高中时期就已经接触和学习过编程,本次提交的参赛作品《遗传实验室》,也是他由来已久的一个想法。

在高中时期学习生物遗传相关知识时,韩楚博认为由于植物从种植到收获需要经过漫长的培育过程,校园无法为学生提供实际的实验和体验机会,因此制作了一款模拟遗传实验的 App,通过不同类型西红柿种植与杂交的过程演示,帮助感兴趣的同学体验相关环节,更加清楚地了解遗传原理。

《遗传实验室》截图。

《The Path in the Garden》是来自吉林大学计算机科学与技术专业的王毓萱同学此次参赛提交的作品。受疫情与封校的影响,王毓萱发现身边的舍友和同学或多或少都有一些心理上的负面变化,王毓萱就想到要做一款 App,帮助他们初步判断自己的焦虑水平,并给出一些简单的调整和改善建议。

《The Path in the Garden》截图。

我们去年采访过的吴瑶瑶今年也再次参赛,带来了一款冰球运动的科普类工具《HockeyTourWithBingDwenDwen》。吴瑶瑶向我们解释,来自陕西的她在 18 岁之前几乎没有任何机会见到雪景,更不用提了解冰雪运动。趁着今年北京举办了冬奥会的契机,吴瑶瑶也想通过自己的身体力行,和大家一起进一步了解冰雪运动,于是有了这款 App 的诞生。

《HockeyTourWithBingDwenDwen》截图。

吴瑶瑶今年的作品同样运用了 AR 技术,以增强现实的方式向用户展现冰球赛场和冰墩墩的 3D 模型,用户也可以自由地放大和缩小冰球场地,全方位地观察和了解冰球赛场。当然,小朋友们也可以借助这款 App,在冰球赛场中和冰墩墩「合影留念」。

编程学习,行动比想法更重要

每年的 Swift 学生挑战赛,除了计算机与软件工程相关专业的多数同学之外,我们也能看到一些像钱雨心这样「非科班」同学的身影。在上海商学院主修服装与服饰设计专业的钱雨心,本次提交的作品《Three-Dimensional Space》同样是受到了生活灵感的启发。在朋友的一次偶然的问询中,钱雨心发现身边不少人都多少有些对于空间想象能力的匮乏,这直接反映到了数学学习或者生活动作的其它方面,这也是《Three-Dimensional Space》这款 App 的由来。

《Three-Dimensional Space》截图。

钱雨心表示,作为艺术类学科的学生,在面对「零基础学编程」这件事时自己其实会有些畏难情绪;好在开始学习之后,钱雨心才发现学习编程,其实没有当初想象的那么难。在学习 iOS 开发的过程中,上海商学院的各种资源也为钱雨心提供了许多帮助,比如学校的 iOS Club 社团提供了面向新手的课程,良好的学习和复习节奏也帮助钱雨心取得了更快的进步。

与钱雨心类似,来自西北工业大学计算机科学与技术专业的张原溥也觉得在入门 Swift 编程时会感到有些困难,因为他在网络上找到的大部分教程和资料都由英文编写。不过,得益于 Swift 和 SwiftUI 在网络上丰富并且类型多样的学习资源,张原溥还是很快就顺利地入门了 iOS 开发。SwiftUI 对于开发者来说非常友好,仅靠它轻松实现设计稿和动画效果的完美还原,张原溥这样认为。

张原溥此次参赛提交的是一款 MG 风格动画制作与剪辑的辅助工具《MGColor Transition》,应用会读取导入的两段视频素材的图片帧颜色并为其自动补充中间色,再利用这三种颜色生成动画以及录制成视频,最后将视频裁剪到合适的大小尺寸之后进行拼接。

其他几位同学同样表达了自己对于编程学习的理解和看法,张佰一、韩楚博、王毓萱都不约而同地提到了实践对于编程学习的重要性。除了学习书本中的知识,他们都认为一定要结合实际的项目学习 iOS 开发,不管是模仿 GitHub  上其它开发者的代码也好,还是通过 Swift Playground 中的样例边学边做,只有通过实践解决实际的问题,才能真正理解编程语言中的许多概念和用法,达到事半功倍的学习效果。

他们的 iOS 开发之路,从 iPad 开始

几位同学也向我们讲述了自己与 iOS 开发结缘的经历与感受,值得注意的是,iPad 在同学们的分享中被频繁提及。

韩楚博向我们介绍,自己与 iOS 开发的故事开端,要从一台 2013 年的 iPad Air 开始说起。彼时只有 11 岁的韩楚博,看着 App Store 中各种充满创意、体验出色的 App,就萌生了自己也要开发一款 App 的想法;没有 Mac 的他,只能通过一款名为 Codea 的应用学习和编程。仅凭一台 iPad,韩楚博就在当时做出了自己的第一个 iOS 游戏《飞机大战》,还在高中时期为自己做了一款记录专注时间的 App,以督促自己认真学习。

正因如此,韩楚博对于此前 iPad 上全新升级的 Swift Playgrounds 应用感到非常激动,这让 iPad 首次实现了从写下第一行代码到应用上线 App Store 的完整流程和功能。相信未来还会有更多人通过 iPad 认识编程、学会编程并且爱上编程,韩楚博告诉我们。

张佰一同样是从小时候就开始接触 Apple 产品,彼时红极一时的《水果忍者》《顽皮小鳄鱼爱洗澡》等 App 都给他留下了深刻的印象。在这些 App 中体验到的新颖的交互方式和富有特色的设计风格,为张佰一脑中的「创新」埋下了一颗种子。而张佰一此次提交的参赛作品《Code Translator》,也是完全在 iPad 上开发完成的。

对于吴瑶瑶来说,从小学时期获得了人生中第一台 Apple 设备第二代 iPad开始,Apple 设备与 App Store 中大大小小的优质应用,对她的成长都起到了很大的帮助与影响。正因如此,吴瑶瑶才对 iOS 开发、产品设计产生了兴趣,并以此作为自己的职业目标。

而在 Swift 学生挑战赛上,Apple 也会鼓励学生们通过 iPad 上的 Swift Playgrounds 应用,创作属于自己的作品。从十多年前的一台几乎只能实现内容消费的设备开始,到现在能够让开发者直接开发和上线 App,iPad 在它的发展历程里产生的巨大变化,着实能让每一个人感到惊讶与惊喜。

结语

值得一提的是,除了大中华区的学生开发者们继续在 Swift 挑战赛上为我们带来的亮眼表现,韩楚博还从众多获奖者中脱颖而出,与来自全球各地的多位获奖学生代表一起,在线上会见了 Tim Cook 先生。

韩楚博向 Tim Cook 介绍自己的参赛作品。

能与这么多文化背景和语言都不相同的人,因为相同的爱好聚在一起,讨论同一个话题,这种感觉非常神奇。韩楚博告诉我们。在向 Tim Cook 先生展示获奖作品以及表达自己的想法之后,Tim Cook 也对韩楚博已经取得的成绩表示了肯定,韩楚博对此感到非常激动。这是一段奇妙的旅程,韩楚博这样向我们形容这次的参赛经历和与 Tim Cook 先生的会面。

最后,也再次祝贺韩楚博和其他各位获奖的学生开发者们。当然,对于没有获奖的各位同学,能够站上这样一个舞台,与来自全球各地的学生开发者们一同竞技、表达自我,本就已经是一次难能可贵的经历。希望在不远的将来,我们能够看到这些年轻的开发者们的优秀作品出现在 App Store 中,真正为更多人的生活和工作起到帮助。

> 下载 少数派 2.0 客户端、关注 少数派公众号,阅读更多 WWDC22 专题报道 👨🏻‍💻

> 实用、好用的 正版软件,少数派为你呈现 🚀