苹果2022年度的全球开发者大会(WWDC22)已于6月7日凌晨拉开帷幕。大会开始前,苹果公布了今年Swift学生挑战赛获奖名单。在350名全球获奖者中,有21名是来自中国内地的学生。北京青年报记者采访了其中6位,他们分别讲述了自己与iOS开发、Swift编程语言、WWDC结缘的故事,并分享了在此次比赛中获奖的作品,以及他们的未来规划。
近几年,苹果通过举办Swift学生挑战赛激励与表彰全球各地热爱编程的学生开发者,让学生开发者们通过Swift Playgrounds展示自己的编程技能与创意。今年的比赛邀请学生创建一个自选主题的Swift Playgrounds app项目。
初衷:希望用Swift开发解决现实问题
吉林大学计算机科学与技术专业大二的王毓萱开发了名为“the path in the garden”的app,这是一个为疫情中的人们测试焦虑水平的应用。王毓萱分享,该作品的灵感来源于她自己的现实生活。由于疫情的反弹,她们学校实施了封寝,随着隔离天数的增加,她观察到她的室友和同学出现了不同程度的烦躁、沮丧甚至抑郁的情况。后来,她通过社交媒体发现,不只是她周围的人,世界各地有很多人都因疫情产生了负面心理现象。“于是我想设计一款作品,来帮助疫情中的人们测试自己的焦虑水平,并给出一些建议,缓解他们的心理压力。”
王毓萱
王毓萱自学了一些心理学知识,并筛选出几个用于测试的问题,然后学习了SwiftUI。拥有绘画技能的她,自己用电脑绘制了app的背景与插画,将app设计成淡雅清新的油画风格。“我可能没有最强、最顶尖的技术,但我真的想要帮助饱受疫情之苦的人们,因为我看见身边的人正在煎熬。”她说。
王毓萱作品“the path in the garden”
解决现实问题也是韩楚博设计“遗传实验室Genetics Lab”的初衷。“我们都在高中时学过生物遗传,但由于种植到收获是一个漫长的过程,几乎没有哪个学校可以提供这样的实验机会。”于是就有了这个可以模拟播种、收获、性状观察的app,使用者可以通过种植和杂交不同类型的西红柿来模拟实验。
韩楚博作品“遗传实验室Genetics Lab”
“为了更详尽地解释遗传究竟是如何发生的,我还添加了演示环节,将植物简化为遗传因子,并使用SwiftUI动画将遗传过程可视化,以便使用者能够清楚地了解遗传原理。”
韩楚博
iOS Club为跨专业学习提供平台
参加比赛之前,王毓萱就在校内的iOS Club社团里学习iOS开发、Swift语言,并参加各种竞赛。“加入社团之前,我就梦想着在大学期间独立开发一款iOS app并上架APP store,加入社团无疑让我离梦想更近了。”
来自上海商学院的钱雨心虽然是服装与服饰设计专业的学生,但她在心中埋下了对编程喜爱的种子。因一次偶然的机会,她加入了学校的iOS Club,从零开始学Swift语言。“对我来说,从零开始学编程是有些许难度的,但在爱好的驱逐下,我逐渐掌握了Swift语言,并逐渐熟练运用。”她表示,这个过程让她不再畏惧挑战自己,让她有勇气去面对一切未知的事物。“所以我爱上了Swift语言,我希望以后能够有更多机会去用编程展现我的想法,这些想法所衍生出来的作品也让我发现自己对周围人乃至社会上一部分群体的价值,享受自己为世界带来的小小改变。”
钱雨心
钱雨心告诉记者,在iOS Club,大家的目标都是“用编程改变世界”,社团的宗旨是跨学科、跨专业的合作,同时,学校老师为他们提供了良好的学习环境。她表示,作为艺术专业学生、感性思维较强的人,学习Swift开发让她的思维更加清晰,带着编程思想去解决每件事情,这是她与其他艺术专业生的区别。“我正在计划寻找实习工作,我发现掌握Swift开发对我寻找心仪的工作非常加分。”
钱雨心作品“Three-Dimensional Space”
给新手的建议:动手去做 拥抱所有技术
北京邮电大学的大四学生吴瑶瑶已经是第二次参加Swift学生挑战赛了。今年,她设计的“HockyTourWithBingDwenDwen”让她再次获奖,这是一款介绍冰雪运动的应用。“我用ARKit和ARQuickLook来展示冰球场和冰墩墩的3D模型。ARQuickLook可以非常方便地放大和缩小模型,这使得用户可以仔细观察、理解冰球场的构造,想象自己正在参观冰球场,小朋友也许会喜欢利用ARQuickLook与冰墩墩合影。”而SwiftUI用于演示冰球越位的过程及细节,“SwiftUI响应式编程以及优雅的动画能完美演示冰球运动中的⼀些过程”。
吴瑶瑶作品“HockyTourWithBingDwenDwen”
吴瑶瑶将自己对iOS开发的热爱与经验向更多的人共享,自己在校内创建了iOS Club。“我们互相分享苹果与学生相关的活动、iOS开发相关知识,也与其他高校的iOS Club建立联系,比如我们和北京师范大学心理学部的UX学生一起举办过iOS开发介绍沙龙。”
吴瑶瑶
作为Swift开发和比赛经验都较为丰富的学生开发者,吴瑶瑶建议新手“拥抱所有技术,新的旧的,Apple的非Apple的”。她表示,可以通过对新技术和旧技术进行对比学习,来理解新技术的优越性和设计的科学合理之道。她还建议其他开发者不局限于中文社区,通过切换语言来解决自己开发过程中遇到的困难。
此外,针对不同的年龄、教育阶段、编程基础、Apple设备和最终目的,她有针对性地提出了一些建议。
来自同济大学的张佰一表示,他自己就是新手,他的建议是:动手去做。“当我仅仅将这门语言的特性分开学习时,我是无法理解Swift中的Extension、Enumeration特别在哪⾥的。但当我真正动手去做项目之后,我发现很多问题都可以用这些语言特性非常巧妙地解决。”
“随着Swift Playgrounds 4的推出,Swift开发变得更简单便捷了,我们可以直接在iPad上学习、开发、发布自己的app。”韩楚博说,“对于新手来说,最重要的是先去了解相关内容,破除心里对开发的恐惧。当你发现SwiftUI简单到只需要几行代码就可以构建魅力的UI界面,内心的成就感就会驱使你一直走下去。”
实习记者 辜晓晓
文/北京青年报记者 温婧
编辑/樊宏伟