位置:首页 > web前端 > javascript

软件的设计原则

dearweb 发布:2021-10-21 22:19:41阅读:

单一职责原则

永远不应该多余一个原因来改变某个类

理解:对于一个类而言,应该仅有一个引起它变化的原因

应用:如果一个类拥有了两种职责,那就可以将这个类分成两个类

开放封闭原则

软件实体扩展应该是开放的,但是对于修改应该是封闭的

理解:对扩展开放,对修改封闭。可以去扩展类,但不要去修改类。

应用:当需求有改动,对修改封闭。可以去扩展类,但不要去修改类。不是直接修改类的代码。

里氏替换原则

父类一定能够被子类替换

最少知识原则

只与你最直接的对象交流

理解:低耦合、高内聚

应用:做系统设计时,今年减少依赖关系

接口隔离原则

一个类与另一个类之间的依赖性,应该依赖于尽可能小的接口。

理解:不要对外暴露没有实际意义的接口,用户不应该依赖它不需要的接口。

应用:当需要对外暴露接口时,如果是非必要对外提供,尽量删除。

依赖倒置原则

高层模块不应该依赖于底层模块,它们应该依赖于抽象。抽象不应该依赖于细节,细节应该依赖于抽象。

理解:应该面向接口编程,不应该面向实现类编程。

原则:并不是说,所有的类都要有一个对应的接口,而是说,如果有接口,那就今年使用接口来编程吧。

综上所述,将上述六大原则的英文手写字母拼在一起就是SOLID(稳定的),所以也称之为SOLID原则。

其他软件设计原则介绍

组合/聚合复用原则

当要扩展类的功能时,优先考虑使用组合,而不是继承。

该原则在23种经典模式中频繁使用(代理模式、装饰模式、适配器模式等)。

无环境依赖原则

当A模块依赖于B模块,B模块依赖于C模块,C模块依赖于A模块,此时将出现循环依赖。

在设计中避免出现该问题,可以通过引入‘中介者模式’解决。

共同封装原则

将易变的类放在同一个包内,简变化隔离出来。

该原则是基于“开放-封闭原则”所诞生出来的。

共用重用原则

如果重用了包中的一个类,那么也就相当于重用了包中所有的类,我们尽可能的减少包的大小。

好莱坞原则

“控制反转”(或称为“依赖注入”),不需要主动创建对象,而是容器帮助我们来创建并管理这些对象。

不要重复你自己

不要浪重复的代码到处都是,要让它们足够的重用,所以尽可能的封装。

保持它的简单与傻瓜

保持系统界面的简洁、功能实用、操作方便。

高内聚低耦合

模块内部要做到内聚度高、模块之间需要做到耦合度低

关注点分离

将一个复杂的问题分离为多个简单的问题,然后逐个解决。

难点:如何进行分离

你不需要它

不要一开始就把系统设计的非常复杂,不要陷入“过渡设计”的深渊。

让系统足够简单,而又不失扩展性。

24人点赞 返回栏目 提问 分享一波

小礼物走一波,支持作者

还没有人赞赏,支持一波吧

留言(问题紧急可添加微信 xxl18963067593) 评论仅代表网友个人 留言列表

暂无留言,快来抢沙发吧!

本刊热文
网友在读
手机扫码查看 手机扫码查看