zoukankan      html  css  js  c++  java
  • 设计模式笔记1-设计原则

    1.1常见设计原则

    1.简约原则(KISS)

    2.不要重复自己(DRY)

    3.讲述而不要询问(Tell,Don't Ask)

    4.您不需要它(YAGNI)

    5.分离关注点(SoC)

    1.2S、O、L、I、D设计原则

    1.单一责任原则(SRP):它要求每个对象只应该为一个元素而改变而且只有一个职责关注点。

    2.开放封闭原则(OCP):它要求对于扩展应该是开发的,而对于修改应该是封闭的,这样应该就能够在不改变类的内部行为的情况下添加新功能扩展类。

    3.里氏替换原则(LSP):LSP原则指出应该能够使用任何继承类来替代父类并且让其行为方式保持不变。

    4.接口分离原则(ISP):ISP原则关注的是将契约的方法划分成若干职责分组,并且为这些分组指派不同的接口,这些客户端就不需要实现一个庞大的接口和一堆它们并不适用的方法。

    5.依赖倒置原则(DIP):DIP原则的宗旨是将自己编写的类与具体的实现隔离开来,让这些类依赖于抽象类或者接口。

    6.依赖注入(DI)和控制反转(IoC)原则:

    1.3企业设计模式

    1.分层

    2.领域逻辑模式:Transaction Script(事务脚本),Active Record(活动记录),Domain Model(领域模型)。

    3.对象关系映射:1.Unit of Work(工作单元)。2.Repository(资源库)。3.Data Mapper(数据映射器)。4.Identity Map(标识映射)。5.Lazy Loading(惰性加载)。6.Query Object(查询对象)。

    4.Web表示模式:Model-View-Presenter(模型视图表示器),Model-View-Controller(模型-视图-控制器),Front Controller(前端控制器),Page Controller(页面控制器)。

    1.4基本模式,行为模式和结构模式

    1.Null Object模式(空对象)

    2.Separated Interface模式(独立接口)

    3.Gateway模式(网关)

  • 相关阅读:
    html5中将图片的绝对路径转换成文件对象
    Vue中之nextTick函数源码分析
    javascript中的异步 macrotask 和 microtask 简介
    HTML5可预览多图片ajax上传(使用formData传递数据)
    vue双向绑定的原理及实现双向绑定MVVM源码分析
    理解Vue中的Render渲染函数
    如何实现一个 Virtual DOM 及源码分析
    diff.js 列表对比算法 源码分析
    理解spread运算符与rest参数
    go语言之进阶篇普通变量的方法集
  • 原文地址:https://www.cnblogs.com/huijie/p/3587174.html
Copyright © 2011-2022 走看看