code design原则有哪些?

1、单一职责原则
2、开闭原则

对扩展开放,对修改关闭,概念不好理解,应用时尽量预留扩展点,避免新增功能时对老代码的修改。
在众多的设计原则、思想、模式中,最常用来提高代码扩展性的方法有:
多态、依赖注入、基于接口而非实现编程,以及大部分的设计模式(比如,装饰、策略、模板、职责链、状态等)

3、里氏替换原则

子类不能修改父类功能

与多态是有区别的,多态是能力,可以实现多种功能的能力。
父类定义的方法,如银行卡提现不能超出余额,如果子类要扩展一个信用卡可以超出余额的方法,可以通过另外定一个父类方法,而不是修改之前的实现方法。

4、接口隔离原则

接口的概念有两种:api接口或者oop接口
用来判断接口是否满足单一职责,调用者是否只调用一部分接口,或接口的部分功能。

5、依赖倒置原则

spring 控制反转通过DI实现(DI就是不通过new的方式在类中创建需要的对象,而是将依赖的类对象在外部创建好之后,通过构造函数、函数参数等方式传递(或注入)给类使用。)

控制指的是对程序执行流程的控制,而反转指的是在没有使用框架之前,程序员自己控制整个程序的执行。在使用框架之后,整个程序的执行流程通过框架来控制。流程的控制权从程序员反转给了框架。

6、kiss原则

保持简单/不要过度设计(使用已有工具类库,且不要用同事不懂的技术)

7、DRY原则

判断是否违背DRY原则,看是否有重复,重复有三种情况:实现逻辑重复、功能重复、代码重复执行。
1)实现逻辑重复,但功能不重复的代码,并不违反 DRY 原则。
2)实现逻辑不重复,但功能重复的代码,也算是违反 DRY 原则。
3)除此之外,代码重复执行也算是违反 DRY 原则。

如何提高代码的可复用性?

减少代码耦合
满足单一职责原则
模块化
业务与非业务逻辑分离
通用代码下沉
应用模板等设计模式

软件系统建设通常遵循一些基本原则,以保证系统的可靠性、可维护性和扩展性。这些原则包括: 1. **模块化设计(Modular Design)**:将复杂的系统分解为独立、可重用的模块,每个模块负责特定的功能,提高代码的组织和管理。 2. **开闭原则(Open-Closed Principle, OCP)**:系统对扩展开放,对修改关闭。即新增功能应通过扩展现有接口,而不是修改已有代码。 3. **里氏替换原则(Liskov Substitution Principle, LSP)**:子类可以替换掉它们的基类而不会影响程序的正确性,确保继承的正确性。 4. **单一职责原则(Single Responsibility Principle, SRP)**:每个模块或类应只负责一项职责,降低耦合度和提高复用性。 5. **依赖倒置原则(Dependency Inversion Principle, DIP)**:高层模块不应该依赖于底层模块,两者都应依赖于抽象,以便于单元测试和解耦。 6. **SOLID原则**:由五个面向对象设计的原则组成(单一职责、开放封闭、里氏替换、接口隔离、依赖倒置),提供高质量的设计指南。 7. **异常处理(Exception Handling)**:合理处理程序中的异常,保证程序在遇到错误时能够优雅地恢复或退出。 8. **代码重构(Code Refactoring)**:定期改进代码结构而不改变其外在行为,保持代码整洁和高效。 9. **测试驱动开发(Test-Driven Development, TDD)**:先编写测试,然后编写满足测试需求的代码,确保代码质量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值