Tech-Thinking
  • REAdME
  • 技术点思考
    • 内存管理
      • 内存管理进化史
        • 分代垃圾回收vs垃圾回收
        • 引用计数vs垃圾回收
      • 内存回收机制
        • 手动管理
        • 垃圾回收
          • 引用计数
          • 基本内容
          • GC垃圾回收的实现方式
      • 内存对齐(Memory Alignment)
        • 是什么?
        • 内存对齐是不是在所有的编程语言中都得有?
      • 智能指针
        • 现代语言与智能指针
        • C++
          • std::unique_ptr
          • td::shared_ptr、std::weak_ptr
          • 删除器
        • Rust
          • Box<T>
          • Rc<T> 和 RefCell<T> 和Weak<T>
          • Arc<T> 、RefCell<T> 、weak<T>
          • 类比C++
    • 编程范式
      • 面向对象编程(OOP)
        • 优缺点
        • 类主要概念
          • 类对象
            • OC
            • C++
          • 三大特性
            • 多态
              • 是什么?
              • C++上的多态
              • OC中的多态
              • C++ vs OC
        • Page
    • 函数/方法
      • 重载
      • 方法重写
        • 函数没有重写
      • 重写vs重载
    • Page 1
  • 编程范式
    • 编程范式
      • 链式编程
      • 响应式编程
        • 响应式编程的原理
      • 函数式编程
      • 函数式、响应式、链式编程的结合
    • 编程风格
    • 比较
  • 流 Stream
    • 抽象分类
    • 特性
  • 设计模式
    • 疑问
      • 观察者模式和订阅者模式是不是同一个东西?
    • 创建型
      • 简单工厂、工厂方法、抽象工厂
    • 行为型
      • Coodinator(协调者模式)
        • 使用场景
        • iOS开发中的使用
        • 与其他设计模式的区别
        • 中介者 vs 协调者
          • 核心区别
          • 详细对比
      • 备忘录
        • 和栈关系
          • 撤销与重做
        • iOS开发
        • iOS系统提供
  • 软件架构模式
    • 耦合度
      • 概念
    • 衡量一个编程架构模式的好坏
    • 软件架构模式的演化
    • 分层架构
      • 演化
      • MCV、MVP、MVVM演化
      • MV-X
        • 数据流方向
        • 构架界面架构
        • MVC
          • 耦合度
          • 数据流
            • 数据流方向
          • iOS的简单示例
          • 优缺点
        • MVP
          • 耦合度
            • 和MVC比较
          • 数据流
            • 数据流方向
          • iOS简单例子
          • 优缺点
        • MVVM
          • 耦合度
          • 数据流
            • 数据流向
          • iOS简单例子
          • 优缺点
          • 疑惑点
            • MVVM的数据绑定以及绑定的方式
            • 响应式编程和 MVVM 关系
        • MVI
          • 耦合度
          • 数据流
            • 数据传递的具体过程
            • 数据流方向
          • iOS例子
          • 优缺点
          • MVI架构的库
        • 比较
          • MV-X的划分角度
          • MVC、MVP、MVVM、MVI
          • MVVM vs MVI
            • 两者的单向数据流
  • 模块
    • 模块间关系
    • 解决模块一来混乱
    • 常见的模块依赖问题
      • 依赖循环
        • 依赖注入
    • 面试题中关于模块的依赖,怎么处理?
  • 编程核心概念
    • Reducer
      • Reducer相关
    • 副作用
    • 异步 vs 同步
      • 为什么要划分
      • 划分角度
      • async/await
        • await等待的异步任务去了哪里执行呢?
  • 软件工程
    • 概要设计
      • 伪代码的应用
      • 流程图
        • 数据框(通常是平行四边形)
        • 流程框(即矩形框
  • ———————————————————
  • 暂时
    • ReactiveSwift和RxSwift
    • 判断条件实现的效率
      • 固定且连续的条件值,switch比字典更高效
      • 跳转表
      • 编译器优化switch
      • 编译器对if..else的优化
    • ————
  • ————
  • 读源码的建议步骤
  • 开源知识点
    • Copyright 和 Copyleft
    • 版权和开源协议
      • 常见的开源协议
    • SemVer
  • 小知识点
    • 样板代码
      • Moya 减少 boilerplate 代码
      • 没有减少boilerplate
      • 疑问
        • 为什么OC不封装一个类似moya的库封装AFNetworking?
        • OC语言特性上的限制
        • 响应处理的具体区别
        • 为什么swift需要moya
Powered by GitBook
On this page
  1. 软件架构模式
  2. 分层架构
  3. MV-X
  4. MVVM

疑惑点

MVVM的数据绑定以及绑定的方式响应式编程和 MVVM 关系
Previous优缺点NextMVVM的数据绑定以及绑定的方式