本次课程是基于Swift和SwiftUI的。适用于iOS(iPhone、iPad还有Watch/TV)
你能学到的东西包括:
- Swift语言
- 函数编程
- 设计范例(MVVM)
- 面向对象数据库
- CHI、API设计、语言设计、动画、数据保存、网络、多线程等等
这门课如何运作?
- 大部分时间在讲Demos
- 也有讲PPT,为了讲清概念是必不可少的。
- 有阅读任务(去学swift的官方文档,前三周完成)
- 制作app任务(大概4到5个,前六周完成)
- 最终的大作业(最后三周)
这是我们将要制作的第一个app,大概就是配对消消乐。

剩下的是编写ContentView.swift里面的内容。代码如下
import SwiftUI
struct ContentView: View { //可以理解为ContentView表现得像View。这里还是函数编程,而不是面向对象编程。
var body: some View {
HStack { // 并列显示下面的内容,下面的内容其实是HStack的参数来的。
ForEach(0..<4) { index in // 在一个屏幕了生成四个view
CardView(isFaceUp: false)
}
}
.padding() // 设置边框距离参数
.foregroundColor(Color.orange) // 设置前置边框的颜色
.font(Font.largeTitle) // 设置文本的大小
}
}
struct CardView: View { // 卡片
var isFaceUp: Bool
var body: some View {
ZStack { // ZStack的作用还不是很懂
if isFaceUp {
RoundedRectangle(cornerRadius: 10.0).fill(Color.white)
RoundedRectangle(cornerRadius: 10.0).stroke(lineWidth: 3)
Text("👻")
} else {
RoundedRectangle(cornerRadius: 10.0).fill()
}
}
}
}
struct ContentView_Previews: PreviewProvider { // 这个是将ContenView()放到了预览上,所以不用管它
static var previews: some View {
ContentView()
}
}