zoukankan      html  css  js  c++  java
  • 敏捷软件开发 第十八章

    本章将薪水支付案例大致分析了一下,过程中还提到了一些注意事项,摘取一些进行记录

    1、不要过早地设计数据库

    将用户素材进行一些记录之后,我们首先想到的是,开始设计数据库,并且在这里关系型数据库比较合适,从需求中我们可以清楚地知道表和字段的可能样子。

    不过,如果一开始就着手设计数据库的话,数据库难免会成为我们的关注中心。

    而数据库是实现细节!

    我们应该尽可能地推迟数据库的设计,有太多的应用程序之所以和数据库绑定在一起而无法分离,就是因为一开始设计时就把数据库考虑在内了。

    抽象的定义是:本质部分的放大,无关紧要部分的去除

    在项目初始设计的阶段,数据库时无关紧要的,它只不过是一项用来存储和访问数据的技术而已。

    2、基于用例分析

    我们首先需要考虑的是系统的行为而不是数据。

    一种捕获、分析系统行为的方法就是创建用例(user case),用例和极限编程中的用户素材的概念非常详细,我们可以认为用例就是用稍多一点细节详细描述的用户素材。

    当我们将用户素材转换为具有详细细节的用例时,不应该陷入过多的细节,只要有助于考虑出实现每个素材的代码设计即可。

    在用例分析中,粗略的 UML 图、设计原则和设计模式都是非常有帮助的。

    3、找出潜在的抽象

    为了有效使用 OCP,我们必须要搜寻并找出隐藏于应用背后的抽象。

    通常情况下,应用的需求,甚至用例不会表述,甚至间接提及这些抽象。

    需求和用例太关注于细节以至于不能表达潜在抽象的一般性。

    要发现潜在的抽象,就要仔细地考虑需求,并且要能洞察出用户社团的误导。过度信赖工具和过程以及低估智力和经验都是灾难的源泉。

  • 相关阅读:
    成员对象和封闭类
    静态成员
    this指针
    类型构造构造函数
    拷贝构造函数
    C++
    矩阵快速幂求递推式
    对浅拷贝和深拷贝的基本理解
    传引用作为形参和返回值_节省参数拷贝的时间
    namespace的基本知识
  • 原文地址:https://www.cnblogs.com/stone94/p/10665760.html
Copyright © 2011-2022 走看看