Swift创新导论
本课程系统教授Swift入门、进阶及实践知识,结合AI、AR、Face ID、Accessibility等典型应用,并通过WWDC奖学金获得者、中国“互联网+”国赛金奖获得者以及中国高校计算机大赛移动应用创新赛最高奖获得者的分享,培养学习者iOS生态下的开发能力,提升学习者的移动应用创新创业素养。
授课老师
浙江大学 张克俊 / 同济大学 朱宏明 / 上海交通大学 董占勋 / 武汉大学 赵小刚
课程大纲
第一周
第1讲:课程概述
第2讲:Swift浅析
第3讲:Swift编程基础知识
第4讲:移动应用设计流程
第5讲:iOS 人机交互基础
第6讲:iOS交互设计实践(一)
第7讲:iOS交互设计实践(二)
第8讲:常量、变量、函数
第9讲:数组与字典
第10讲:控制流(Control Flow)(一)
第11讲:控制流(Control Flow)(二)
附录一:学习分享(一)
附录二:学习分享(二)
附录三:Swift Playgrounds初步(一)
附录四:Swift Playgrounds初步(二)
第二周
第12讲:函数(Functions)和闭包(Closures)(一)
第13讲:函数(Functions)和闭包(Closures)(二)
第14讲:Playground 实践应用(一)
第15讲:Playground 实践应用(二)
第16讲:对象(Objects)和类(Classes)(一)
附录五:Swift Playgrounds初步(三)
附录六:Swift Playgrounds初步(四)
学习分享
单元测试(第二周)
第三周
第17讲:对象(Objects)和类(Classes)(二)
第18讲:枚举(Enumeration)和结构(Structures)(一)
第19讲:枚举(Enumeration)和结构(Structures)(二)
第20讲:协议(Protocols)和拓展(Extensions)(一)
第21讲:协议(Protocols)和拓展(Extensions)(二)
第22讲:错误处理(Error handling)(一)
第23讲:错误处理(Error handling)(二)
附录七:Swift Playgrounds初步(五)
附录八:Swift Playgrounds初步(六)
学习分享
单元测试(第三周)
第四周
附录九:Swift Playgrounds初步(七)
附录十:Swift Playgrounds初步(八)
学习分享
第24讲:Playground 实践应用进阶(一)
第25讲:Playground 实践应用进阶(二)
第26讲:Playground 实践应用进阶(三)
第27讲:Xcode 实践应用(一)
第28讲:Xcode 实践应用(二)
第29讲:Xcode 实践应用(三)
单元测试(第四周)
第五周
第30讲:WWDC Case分享(一)(1)
第31讲:WWDC Case分享(一)(2)
第32讲:WWDC Case分享(二)(1)
第33讲:WWDC Case分享(二)(2)
第34讲:WWDC Case分享(二)(3)
第35讲:WWDC Case分享(二)(4)
附录十一:Swift Playgrounds初步(九)
附录十二:Swift Playgrounds初步(十)
学习分享
第六周
第36讲:SceneKit_ basics
第37讲:SceneKit实践(1)
第38讲:SceneKit 实践(2)
第39讲:构建基于iOS设备的AR应用(1)
第40讲:构建基于iOS设备的AR应用(2)
第41讲:True Depth
第七周
专题分享:AR(1)
专题分享:AR(2)
专题分享:AR(3)
专题分享:AR(4)
专题分享:AR(5)
专题分享:AR(6)
专题分享:AR(7)
专题分享:AR(8)
专题分享:AR(9)
专题分享:AR(10)
第八周
第42讲:AI 分享(1)
第43讲:AI 分享(2)
第44讲:AI 分享(3)
专题分享:传感器(1)
专题分享:传感器(2)
专题分享:传感器(3)
专题分享:传感器(4)
专题分享:传感器(5)
专题分享:传感器(6)
专题分享:传感器(7)
专题分享:传感器(8)
专题分享:传感器(9)
专题分享:传感器(10)
第九周
专题分享:动画(1)
专题分享:动画(2)
专题分享:动画(3)
专题分享:动画(4)
专题分享:动画(5)
专题分享:动画(6)
专题分享:动画(7)
专题分享:动画(8)
专题分享:动画(9)
第十周
第45讲:MAIC Case分享(1)
第46讲:MAIC Case分享(2)
第47讲:MAIC Case分享(3)
第48讲:MAIC Case分享(4)
第49讲:MAIC Case分享(5)
第50讲:MAIC Case分享(6)
第51讲:MAIC Case分享(7)
第52讲:MAIC Case分享(8)
参考资料
(1) Stanford University: Developing iOS 11 Apps with Swift
https://itunes.apple.com/cn/course/id1309275316
(2) Plymouth University: iOS Development in Swift
https://itunes.apple.com/us/course/ios-development-in-swift/id950659946
(3) A Swift Tour
https://docs.swift.org/swift-book/GuidedTour/GuidedTour.playground.zip
(4) iOS Human Interface Guideline
https://developer.apple.com/design/human-interface-guidelines/ios
(5) WWDC 2018 Designing fluid Interface
https://developer.apple.com/videos/play/wwdc2018/803/
(6) Material Design Guidelines
(7) Fluent Design System
https://www.microsoft.com/design/fluent/
(8) Apple Design Resources
https://developer.apple.com/design/resources/
(9) Principle Tutorial
https://principleformac.com/tutorial.html
(10)Apple Developer Center & sample code
https://developer.apple.com/documentation/
(11)Brian Advent Video
https://www.youtube.com/channel/UCysEngjfeIYapEER9K8aikw
(12)Linda Course
https://www.lynda.com/search?q=swift+
(13)Awesome Swift Playgrounds
https://github.com/uraimo/Awesome-Swift-Playgrounds
(14)WWDC Scholarship Winners 2017-2019 作品集