代码设计的原则

本文详细探讨了面向对象设计的六大原则:单一职责原则、里氏代换原则、依赖倒转原则、接口隔离原则、最少知识原则(迪米特法则)和开闭原则。每个原则都配以定义、解释和代码实现示例,旨在帮助开发者理解和应用这些原则,以提升代码的可维护性和复用性。
摘要由CSDN通过智能技术生成

单一原则

就一个类而言,应该仅有一个引起它变化的原因。具体说,在做编程的时候,很自然的回个一个类加上各种各样的功能。这样意味着,无论任何需求要来,都需要更改这个类,这样其实是很糟糕的,维护麻烦,复用不可能,也缺乏灵活性。如果一个类承担的职责过多,就等于把这些职责耦合起来,一个职责变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致设计很脆弱,当变化发生时,设计会遭到很多意想不到的破坏。
定义:一个类或者一个接口,最好只负责一项职责。
代码实现:尽量避免一个方法里面写过多的 if 完成不同的操作导致逻辑过于复杂

代替原则(里氏代换原则):

派生类(子类)对象能够替换其基类(父类)对象被调用。这条原则主要是说,在程序中,任何调用基类对象实现的功能,都可以调用派生类对象来替换,当然,反过来是不行的。其实这里主要说的是继承问题,既然派生类继承基类,那它的对象也应该相应继承基类对象的实现,当然也就因该能替换基类对象。如果无法替换,就说明这个派生类继承有问题,需要修改设计。
在使用基类的地方可以任意使用其子类,能保证子类完美替换基类;这一种精神其实是对继承机制约束规范的体现。在父类和子类的具体实现中,严格控制继承层次中的关系特征,以保证用子类替换基类时,程序行为不发生问题,且能正常进行下去。
对于继承来说,父类定义了一系列的规范和契约,虽然不强制所有的子类必须

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值