iOS设计模式学习笔记

来源:互联网 发布:php开发架构 编辑:程序博客网 时间:2024/06/15 01:10

设计模式

指导原则

  • 最小耦合
  • 设计变更
  • 强调接口
  • 最佳粒度
  • 复合优先于继承

MVC

  • Model
  • Controller
  • View

target-action

selector

  • SEL
  • @selector(methodName)

nib/storyboard

storyboard

  • scene
    • 一个scene相当于一个nib
  • 缺点
    • 同时编辑时,容易引起冲突。解决的方法是:拆分。
    • 当scene较多时,加载可能会很慢。
  • 编译,生成storyboardc文件包,实际包含多个.nib和.plist

原型设计(工具)

  • Sketch
  • Keynote
  • Omnigraffe

两步创建和模版方法

两步创建

  • alloc
  • init

alloc

  • 创建的对象没有必要判空
  • 从虚拟内存中申请
  • allocWithZone

init

  • 不能重复初始化
  • initWithArgnment
  • 步骤
    • 调用父类初始化
    • 必要时需copy
    • 根据具体情况返回self或nil

工厂方法

  • 两步合一
  • autorelease

内省

  • class
  • super class
  • isKindOfClass
  • respondsToSelector

模版方法

  • 用一个可以重用的类实现通用的步骤
  • 需要在子类中重写
  • dealloc, 在没有使用ARC时需要实现
  • UIView - drawRect
0 0