分析模式(可复用的对象模型)- 读书笔记

 

读后感:web

Martin Fowler 20年前的书,OO和领域的思想对于今天的咱们来讲很基础,但在那时应该算是萌芽。Smalltalk语言简单,语法中省略空格可能由于那时的硬件设备昂贵,而不得不作出的选择,可是可读性真的不好,而书中基本是用Smalltalk进行示例。翻开这本书是为了查找财务模型,它没有让我失望,特别是第6章“库存与财务”给了我思惟建模的概念。这本书和UML、GOF的“设计模式”差很少是在同一时间段出现,因此书的内容看上去有点古董的感受。不过,大师的思路有时候都是的。这本书还让我联想到,其实软件开发领域这几十年并无改变多少,对比更新迭代很快的手机来讲,咱们算是很幸运了。数据库

 

读书笔记:设计模式

第1章 绪论框架

建模原则:概念模型是与接口(类型)而不是与实现(类)相关联的。函数

建模原则:模式是起点,而不是终点。工具

建模原则:模型无好坏对错之分,只有有用仍是无用之分。性能

做者的电子邮件(邮件地址是100031.3311@compuserve.com学习

 

第3章 观察和测量模式测试

关键概念:数量、单位、测量、观察、观察概念、现象类型、关联函数、被否决的观察、假设spa

建模原则:当多个属性与可能会在几个类型中使用的行为相关时,就把这些属性组合成新的基础类型。

建模原则:操做级中的对象会常常发生变化。它们的配置由不多发生变化的知识级来约束。

建模原则:若是某个类型拥有多种类似的关联,能够为这些关联对象定义一个新的类型,并创建一个知识级类型来区分它们。

 

第4章 针对公司财务的观察模式

关键概念:企业片段、维度、测量方案、状态类型

 

第6章 库存与财务

关键概念:帐目、事务、条目、记入规则

建模原则:要记录一个值的变动历史,能够为这个值设立一个帐目。

事务明确地把取款条目和存款条目联系起来。双条目法反映一个基本的帐务原理

建模原则:在使用帐目时要遵照守恒原理:须要清算的物品不能凭空生成和消失,它仅仅是从一个地方转移到另外一个地方。这使得发现和防止不守恒变得容易。

可逆性:记入规则的一个重要属性就是它们一定是可逆的。一般咱们不能删除一个错误的条目,由于它要么是支付的一部分,要么出如今帐目清单上。咱们清除它的做用的唯一方法就是输入一个一样的可是相反的条目。

建模原则:为了确认计算是如何进行的,把计算的结果表示成对象,由它来记住是由哪一个计算产生的结果以及计算所使用的输入值是什么。

 图释:若是使用多重汇总帐目,有可能会定义一个具备重叠细目帐目的汇总帐目。集合元素不容许重复

 

若是以为真的是个问题,咱们就要在组合关系上加以限制,这个限制不容许咱们选择带有重复的子帐目。 

伊利诺伊大学厄巴纳-尚佩恩分校的研究人员已经在开发帐务框架方面作了大量工做。

 

第12章 信息系统的分层构架

咱们看到会存在这样的状况:GUI开发者理解用户界面环境可是根本不须要了解领域模型,而外观开发者理解领域模型可是不须要知道GUI开发。表示层/应用逻辑层的分离把须要的不一样技术分割开来,从而使开发者为了作出贡献只须要学习较少的东 咱们看到会存在这样的状况:GUI开发者理解用户界面环境可是根本不须要了解领域模型,而外观开发者理解领域模型可是不须要知道GUI开发。表示层/应用逻辑层的分离把须要的不一样技术分割开来,从而使开发者为了作出贡献只须要学习较少的东西。

 

这个分离容许从一个单独的外观开发出多种表示。

 

外观为测试提供一个很好的平台。当外观和表示层被合并时,基础的计算只可以经过GUI进行测试,这须要手工测试(或者针对回归测试的GUI测试软件)。当这些被分隔开时,就可以为外观的接口编写一个测试程序。这样一来,只有表示层代码须要使用比较笨拙的工具来测试。

 

这个过程会发生一个例外,就是应用须要一个特殊的数据配置发生做用,而且在开始时只用一个步骤就可以从数据库中得到该数据,以便改善性能。在这种状况下,一个有用的作法是领域层提供针对具体应用的装载请求,这种请求给应用一个机会让领域层知道它想要请求什么。在某种程度上,这损害了领域层不该当知道什么应用使用它的原则,可是在一些环境中性能的改善是强制的。

 

一个解决方法是增长另外一个层次——数据库接口层,它负责从数据库中为领域层装载数据和当领域改变时更新数据库。这个层也负责处理输入以及其它遗留交互。

 

相关文章
相关标签/搜索