美文网首页
《全栈工程师修炼指南》学习笔记 5

《全栈工程师修炼指南》学习笔记 5

作者: VioletJack | 来源:发表于2023-01-02 18:19 被阅读0次

    Model

    • 模型是什么?模型就是当我们使用软件去解决真实世界中各种实际问题的时候,对那些我们关心的实际事物的抽象和简化。

    • 领域模型:我们会更关注这个领域范围内各个模型实体之间的关系。

    • 模型可以是抽象的对象定义,也可以是具体的业务数据承载。

    • 贫血模型:意味着模型实体在设计和实现上,很少包含逻辑。逻辑写在了相关的 Service 中。

      • 所以更像是一定规则的封装容器。
      • 数据与行为存在了 model 和 service 两处。
      • service 代码会暴露 model 的行为,可能会因为滥用接口导致状态不一致。
      • 其实封装了一个类似 Java Bean 的对象,只有定义以及 setter 和 getter。
    • 充血模型:模型既包含数据、也包含逻辑,具有更高程度的完备性和自洽性。

      • 更加面向对象,可以充分描述一种实体
      • 封装性更好
    • model 层次划分:软件的耦合与复杂性问题往往可以通过分层解决。不过需要掌握分层的度。

    • 在 CORS 模式下,模型层的接口只分为两种

      • 命令,本身不返回任何结果,但会改变数据的状态。命令状态一定是不安全的。
      • 查询,返回结果,但不会改变数据的状态。查询状态一定是安全的。
        PS:其实像 vuex 这类状态管理库就是用的 CORS 模式。
    • 在 MVC 中的 CORS 模式

      • controller 通过命令调用 model 层,执行写入操作。
      • view 通过查询调用 model 层,执行查询操作。
    • 在 Model 层我们要经常与 SQL 打交道,需要有一定的 SQL 知识。

    相关文章

      网友评论

          本文标题:《全栈工程师修炼指南》学习笔记 5

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