面向对象的六大设计原则简称为SOLID原则,每个原则都有助于创建更加健壮、可维护和可扩展的软件系统。以下是对每个原则的详细介绍,以及相应的示例代码和抽象的结构表述。
本文将以尽可能少的文字,带你快速理解六大设计原则,不信?那就开始吧👇👇👇
相关文章:技术成神之路:二十三种设计模式(导航页)
1. 单一职责原则(Single Responsibility Principle, SRP)
一个类只应当有一个引起它变化的原因,即一个类只负责一个职责。
示例代码:
// 违反单一职责原则的类
public class Order {
public void addOrderItem(OrderItem item) {
// 添加订单项
}
public void calculateTotal() {
// 计算总价
}
public void printOrder() {
// 打印订单
}
public void saveOrderLog() {
// 保存订单日志
}
}
// 遵循单一职责原则的类
public class Order {
public void addOrderItem(OrderItem item) {
// 添加订单项
}
public void calculateTotal() {
// 计算总价
}
}
public class OrderPrinter {
public void printOrder(Order order) {
// 打印订单
}
}
public class OrderLogger {
public void saveOrderLog(Order order) {
// 保存订单日志
}
}
结构表述:
Order ----> addOrderItem(), calculateTotal()
OrderPrinter ----> printOrder()
OrderLogger ----> saveOrderLog()
2. 开闭原则(Open Closed Principle, OCP)
软件实体(类、模块、函数等)应该对扩展开放,对修改关闭。
示例代码:
// 支持开闭原则的图形绘制系统
public inter