美文网首页
斯坦福公开课Swift笔记2:MVC.srt

斯坦福公开课Swift笔记2:MVC.srt

作者: CyberDunk1997 | 来源:发表于2020-06-29 14:39 被阅读0次

视频地址:https://www.bilibili.com/video/BV1rb411C7eN?p=2

1. 什么是MVC

MVC结构
  • Model:What your app is (but not how it is displayed) ,Model仅仅关心你的app里有什么,而不是他们怎样显示
  • Controller:How your Model is presented to the user (UI logic),Model如何展现给用户,是用来处理逻辑
  • View:Controller's minions ,控制器的仆从

2. M,V,C之中如何通信

MVC沟通模式
  1. Controller可以随意通知Model
  2. Controller可以通过outlet随意控制View
  3. Model和View不能通信
  4. View对Controller通过Target-action:目标-动作模式进行通信。[https://www.cnblogs.com/wzrong/p/3218867.html] ,这篇文章里讲得很细
  5. View通过delegate模式与Controller进行通信
  6. Model通过NSNotification & KVO来通知Controller更新数据

3. 不同MVCs之间如何通信

MVCs
  • 所有控制器把其他的控制器当成自己的一个view

4. Struct和Class的区别

  • struct不能继承
  • struct是值类型,class是应用类型(值类型:被引用,传递时或者传递给一个变量时,会被复制;引用类型:当被传递时,被传递的仅仅是指针,而数据存在堆里)
  • 当一个class的所有变量都已经被初始化,这个class会获得一个自动的初始化函数
  • struct初始化时,需要初始化他的所有变量,即使已经预设值好了
  • 初始化函数倾向将内部参数名和外部参数名保持一致


    struct如何初始化

5. for ... in ... 循环

 for identifier in  "Apple" {
}
 for identifier in  [1,2,3] {
}
 for identifier in  0..< cardNumbers {
}
  • in后面是一个sequence,可以是数组Array,字符串String,可数区间countable range

6. static func & static var

  • static func 仅仅和类相关的函数,和实例无关,类似类函数
  • static var 仅仅和类相关的变量,和类一起储存的变量 , var 是和实例存储在一起
  • 在static func 中不需要加上类型就能访问static var


    static func & static var.png

7. lazy var

  • 当初始化一个变量时,需要用到另一个var会报错,因为这时还未初始化完成,所有变量还不可用,这时可以使用lazy进行初始化,使用lazy修饰的var并不会在一开始进行初始化,而是当有人用到它时,才会进行初始化,即延缓了这个变量的初始化。

8. xxx.indices

相关文章

网友评论

      本文标题:斯坦福公开课Swift笔记2:MVC.srt

      本文链接:https://www.haomeiwen.com/subject/levofktx.html