
敏捷软件开发
go go go go go
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
敏捷软件开发总结——单一职责原则(SRP)
为什么要遵循单一职责原则 就一个类而言,应该仅有一个引起它变化的原因。 为何要把俩个职责分离到不同的类呢? 因为每个职责都是变化的一个轴线,当需求变化时,该变化会反映为类的职责的变化。 如果一个类承担的多个职责,多个职责会有耦合性,那么引起它变化的原因也会有多个。一个职责可能会削弱和抑制其它职责,这样就形成了脆弱性设计。 什么是职责 在SRP中职责定义为“变化的原因”,如果你能够想到多于一个动机去...原创 2019-05-14 15:39:48 · 170 阅读 · 0 评论 -
敏捷软件开发总结——开放-封闭原则(OCP)
开放-封闭原则(OCP)的意义 任何系统在其生命周期中都会发生变化,那么怎样的设计才能面对需求变化而保持相对稳定?著名的开放-封闭原则(OCP)为我们提供了指引。 如果程序中的一处改动就会造成连锁反应,导致一系列相关模块改动,那么设计就具有僵化性。OCP建议我们对此重构,这样以后改动就只需要添加新的代码,而不必修改已经正常运行的代码。 关键是抽象 策略(Strategy)模式和模板方法(Templ...原创 2019-05-14 19:32:39 · 578 阅读 · 0 评论 -
敏捷软件开发总结——Liskov替换原则(LSP)
Liskov替换原则(LSP)的意义 OCP的主要机制是抽象和多态,而支持抽象和多态的关键机制之一是继承。 是什么设计规则在支配着这种特殊的继承用法呢?最佳的继承层次的特征又是什么呢?怎样的情况会使我们创建的类层次结构掉进不符合OCP的陷阱中去呢?这些正是Liskov替换原则(LSP)要解决的问题。 Liskov替换原则(LSP)的定义 若对每个类型S的对象s,都存在一个类型T的对象t,使得在所有...原创 2019-05-21 23:13:00 · 419 阅读 · 0 评论 -
敏捷软件开发总结——什么是敏捷设计
敏捷开发的作用和设计方法 关于敏捷开发,大家可能会有如下疑问: 1、敏捷开发往往微小增量迭代,那么会不会忽视全局视图? 答:在敏捷开发中,全局视图和软件是一起演化,因为预测需求是徒劳的,所以更应该关注当前需求。 2、如何设计,确保软件具有灵活性、可维护和重用性的结构? 答: (1)迭代设计,不断改进使得它尽可能适合当前系统,确保灵活性。 (2)避免臭味,确保可维护。 (3)遵循面向对象设计原则,确...原创 2019-05-12 23:37:00 · 2162 阅读 · 0 评论