依赖倒置原则例子 依赖倒置和里氏替换的区别?
浏览量:2933
时间:2021-03-12 08:50:12
作者:admin
依赖倒置和里氏替换的区别?
依赖倒置原则是程序应该依赖于抽象接口,而不是具体实现。简言之,需要对抽象而不是实现进行编程,以减少客户机和实现模块之间的耦合。
Liskov替换原则(LSP)是面向对象设计的基本原则之一。Richter的替换原则说,无论基类出现在哪里,子类都必须出现。LSP是继承重用的基石。只有当派生类可以替换基类并且不影响软件单元的功能时,基类才能被重用,派生类才能在基类的基础上添加新的行为。
Service层和Dao层真的有必要每个类都加上接口吗?
这主要取决于您的项目:
例如,如果项目中使用hibernate,以后可能会切换到mybatis,那么Dao需要使用该接口。这不会影响上层代码的更改。
另一个例子是,项目是一个单一的应用程序。任何代码修改都需要重新编译整个项目,因此不需要接口。如果项目是由模块编译和部署的,那么可以使用接口解耦。假设修改了Dao,只需要重新编译和部署Dao模块,而不影响上层模块。
此外,如果项目团队中有许多新手,简单的代码结构可能更合适。复杂项目结构的学习成本较高。
如果工程进度非常紧迫,我们可以用简单粗暴的方式用经济成本来说明原因。
使用接口的成本是不使用接口的成本(包括后续维护成本)。
如果项目变化很大,部署了模块,项目不急,使用接口的成本比不使用接口的成本低,虽然早期不使用接口似乎更简单;相反,不使用接口的成本低,而且连框架都不能用~
毕竟工具是提高效率的,那你为什么不能和自己相处呢
假设开发某款软件1个程序员10天可以做好,那么找10个同等水平程序员一起做1天能否做好?
生孩子需要孕妇怀孕10个月。十个同级的女人一个月能生一个孩子吗?
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。