脚本宝典收集整理的这篇文章主要介绍了作业2:读书笔记——软件设计原则、设计模式,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
这个作业属于哪个课程 | 2022软件代码开发技术 |
---|---|
这个作业要求在哪里 | 作业2要求 |
这个作业的目标 | 1.养成写读书笔记的习惯 2.了解软件设计原则、设计模式 3.初步学习软件设计原则、模式设计软件 |
设计原则 | 个人理解 |
---|---|
单一职责原则 | 就一个类而言,应该仅有一个引起它变化的原因,避免耦合给程序带来复杂影响,提高软件可读性,可维护性和扩展性 |
开放-封闭原则 | 软件实体应该对扩展开放,对修改关闭。或者说对软件实体的改动,最好用扩展而非修改的方式以提高了复用性和可维护性 |
依赖倒转原则 | 高层模块不应该依赖于低层模块,而应该依赖于抽象。抽象不应依赖于细节,细节应依赖于抽象 |
里氏代换原则 | 一个软件实体如果使用的是一个父类的话,那么一定适用于其子类。这个原则使得继承复用成为了可能。同时也成为了面向对象设计的标志 |
迪米特法则 | 尽量减少对象之间的交互,从而减小类之间的耦合。类之间的耦合越弱,越有利于复用 |
合成/聚合复用原则 | 尽量使用合成/聚合,尽量不要使用类继承,这将有助于你保持每个类被封装,并被集中在单个任务上 |
在《设计模式》这本开山作中,作者将设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
在一周的读书记录后,我大致明白了模式以及各种模式是如何产生和发挥效果的。但是可惜的是因为时间有限,到现在为止我仍没有深入研究模式的各中精髓及模式间的配合,以及这些设计模式对我们开发软件的实际影响。
1.比如老师评分模块,就可以应用策略模式,把算法族分别封装起来,让它们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的人员。 2.比如管理考试时间模块,可以应该观察者模式。这种模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象;这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己的状态。 3.比如系统中试卷完成模块,可以应用备忘录模式。在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态;这样以后就可将该对象恢复到原先保存的状态,以避免网络等原因造成的不可逆转的故障。
以上是脚本宝典为你收集整理的作业2:读书笔记——软件设计原则、设计模式全部内容,希望文章能够帮你解决作业2:读书笔记——软件设计原则、设计模式所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。