【发布时间】:2018-09-09 18:12:18
【问题描述】:
我正在尝试理解单一职责原则,但我很难掌握这个概念。我正在阅读 Lucian-Paul Torje;Adrian Ianculescu;Kamalmeet Singh 所著的“Java 中的设计模式和最佳实践”一书。
在这本书中,我正在阅读单一职责原则章节, 他们有一个汽车类,如下所示:
他们说 Car 同时具有 Car 逻辑和数据库操作。将来如果我们想更改数据库,那么我们需要更改数据库逻辑,并且可能还需要更改汽车逻辑。反之亦然...
解决方案是创建两个类,如下所示:
我的问题是,即使我们创建了两个类,假设我们正在向 CAR 类添加一个名为“price”的新属性 [或者将属性“model”更改为“carModel”] 那么你不认为我们也需要更新 CarDAO 类,如更改 SQL 等。
那么这里的 SRP 有什么用呢?
【问题讨论】:
标签: oop solid-principles single-responsibility-principle design-principles