您的位置:首页 > 其它

敏捷设计简单说明

2017-10-27 09:07 134 查看
上一周入手一本大作,敏捷软件开发原则、模式与实践,刚开始接触这本书的时候,书中第一部分敏捷开发的相关介绍我只是快速地扫过,因为我还没有一各统筹计划的能力,我更关心地是如何写出优美的程序,所以我的关注点集中在开发实践上。

我将会把我看到的关于本书的内容以及部分java源码做个读书笔记,一方面加深自己的理解,另一方面,下次需要时可以快速找到相关理论。本书的源码后期将会上传到github上。

下面把书中关于敏捷设计方面的内容做个简单介绍:

敏捷开发:是以微小增量方式去迭代开发,在本书中采用测试驱动开发。

一个不好的软件会带来的问题如下:

僵化性:设计难以改变

单一的改动会导致有依赖关系的模块中的连锁改动

脆弱性:设计易于遭到破坏

在进行一个改动时,程序的许多地方可能就会出现问题

牢固性:设计难以重用

设计中包含对其他系统有用的东西,但是将其分离出来,难度大

粘滞性:难以做正确的事情

需要对原有设计进行破坏,才能进一步开发

不必要的复杂性:过分设计

包含有当前没有用的组成部分

晦涩性:混乱的表达

模块难以理解,代码不够清晰

不必要的重复

复制粘贴导致系统构建在许多重复的代码片段上

在我们设计软件过程中,有时候没有良好设计,也没有一次次去迭代,大部分时候是为了完成工作而工作,所以我参与以及接触的项目或多或少都有以上问题,给后期维护带来很大麻烦。

为解决上述软件开发过程中可能出现的各种各样问题,有一些原则可以遵循。

1.单一职责原则SRP

2.开放封闭原则OCP

3.Liskov替换原则LSP

4.依赖倒置原则DIP

5.接口隔离原则ISP

后续将会将这本书的内容一一详尽,接下来会对各个原则进行说明。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: