第二周作业
作业一
依赖倒置原则是指高层模块不能依赖低层模块,而是依赖于抽象。这个原则按照我自己的理解,主要的意义还是软件开发要以对上层的支持为主要思想。
好莱坞规则是指开发的代码不是主动调用,而是被调用。这个也是一种类似回调的思想。利用框架可以减少出错的概率。
作业二
spring等框架,基本上暴露给用户要写的代码就像一个填空题,整个功能的结构,实现流程都是由spring来决定的,用户只是提供细节。
作业三
学习总结:
这次上课学会了几个软件开发的原则:包括
开闭原则:对扩展开放,对修改关闭。我感悟到的是对于变化的东西,尽量设计成可以通过增加类就可以增加功能,而非修改已经有的类,尽量少写if else。
依赖倒置原则:是指高层模块不能依赖低层模块,而是依赖于抽象。 这个我的理解是尽量去设计接口,多依赖接口,接口的设计以满足上层的需求为主,或者说这种思想是一种利用框架的开发思想,尽量搭好一个框架去完成某个功能,细节可以轻松更改并可以被框架调用,这样的代码很清晰,即使有问题只去修改实现细节即可,系统整体的流程也不容易被破坏,易于管理。
里氏替换原则:父类出现的地方必须可以由子类替换。 也可以说子类和父类必须是is-a关系。 这个的意义也是在于,如果不严格满足这个原则,对子类实现不够深入的人会错误的使用它产生很多预料外的后果。、
单一职责原则: 一个类只负责一种职责 。不过难点是如何拆分功能到不同的类上。
接口隔离原则: 不给客户端暴露不该给它看到的东西。 这样调用者才不会意外犯错。
还学到几种设计模式的应用,总体来说都是利用了面向对象的多态,可以帮助写出符合以上原则的代码。
评论