摘要:
业务层引言 Martin Fowler说过:“任何人都可以写出计算机才能理解的代码,只有写出人能理解的代码的程序员才是好程序员。” 每一个复杂的软件都应该按层来组织。每一层代表系统的一个逻辑部件。尤其是,业务层的模块包括了所有使得系统运行的时候和其它层交互所需要的功能算法和计算,其他层包括数据访问层DAL和表现层。 业务层是任何分层系统的神经中心,包含了大部分的核心逻... 阅读全文
随笔档案-2010年08月
《架构之美》读书笔记(一)
2010-08-19 05:31 by Virus-BeautyCode, 4901 阅读, 收藏, 编辑
摘要:
1、引言 建筑师、音乐家、作家、计算机设计者、网络设计者、软件开发者都在使用架构一词,在其他地方也可能会听到这个词,但是他们产生的结果是不同的。建筑和交响乐有很大的区别,但是它们都有架构。进一步说,所有的架构师都在谈论他们工作的美妙,以及结果的美妙。一名建筑架构师可能会说一个建筑应该提供舒适的工作、生活环境,看起来应该是美丽的;音乐家可能会说音乐应该可以可以演奏的,有一个可以识别的主题,听起来应... 阅读全文
项目总结-代码之前的工作
2010-08-17 19:27 by Virus-BeautyCode, 2755 阅读, 收藏, 编辑
摘要:
代码之前的工作比较多,也比较广,需要的不仅仅是开发技能,还包括行业知识,分析能力,设计能力。以及更深远的商业预见能力,预见系统之上的商业前景,是否值得我们开发这么一个系统,以及系统的大方向,服务的客户群,需要达到的目标,盈利的点。 一旦上面的商业目标确定之后,就需要行业专家以及架构师的介入。这两者会配合工作,行业专家的主要职责是构建满足商业目标的业务模型,将商业目标分解为很多小的业务模型,梳理其... 阅读全文
项目总结-耦合Couple
2010-08-07 16:37 by Virus-BeautyCode, 2924 阅读, 收藏, 编辑
摘要:
耦合Couple引言 本文将到的耦合是指的软件开发中的耦合,而且是代码方面的耦合。包括后面讲到的分层,也只是逻辑分层,不是物理分层。 耦合是我们做软件开发经常会遇到的词汇,尤其是在使用面向对象语言进行开发的时候。看到的相关资料也都在说要低耦合,减少耦合。 尽管我们加入了设计模式,分了层,分了模块,做了等等的工作,还是发现存在耦合,还是有人说耦合高了,导致不能修改,修改、维护的代价太大了。直接... 阅读全文
用微软.NET架构企业解决方案 学习笔记(二)UML概要
2010-08-06 00:04 by Virus-BeautyCode, 3856 阅读, 收藏, 编辑
摘要:
UML概要引言 设计一个系统,任何科学领域的系统,你首先需要做的是对它进行抽象。抽象模型为系统的视图、结构、行为、参与实体和流程方面具体的实现提供一个代理。在系统的参与人员(包括:开发者,架构师,所有者,用户)之间应该共享一个模型。为了能够提出反馈,提出错误的假设,改进建议,模型应该能够被系统的参与者所理解。尽管共享了一个模型,你还是需要用一种通用的,被广泛接受的的形式和符号来表达模型。例如:模... 阅读全文
用微软.NET架构企业解决方案 学习笔记(一)
2010-08-05 00:24 by Virus-BeautyCode, 5154 阅读, 收藏, 编辑
摘要:
当今的架构师和架构 引言 在计算机的早期,大概是1960年左右,硬件的花费在软件之上,是占主导地位的。40年之后,我们发现情况发生了极大的变化。 因为工业的进步,硬件的成本急剧的下降。另一方面,软件开发的成本因为个性化企业级应用开发的复杂性而急剧上升。对公司来说,便宜的硬件使得为他们的信息系统增加越来越多的功能是值得的。最初一些独立的系统,相互之间没有连接,也很少会共享数据,在多年之后,变成... 阅读全文
领域驱动设计之入门级教程(下)
2010-08-04 00:15 by Virus-BeautyCode, 2999 阅读, 收藏, 编辑
摘要:
在我们创建软件的时候,有很多的功能是和要解决的业务领域没有关系的,他们是软件的基础部件,或者是为软件服务的。例如:权限、日志、数据访问、文件访问、网络访问、用户界面等。最好将这部分功能从业务领域分离开来,独立出来,因为这部分功能是相对稳定的,这样既保证了这部分的独立性,便于升级维护,不至于影响业务领域的功能实现,同时将业务功能,业务规则尽可能放在业务逻辑处理层。这样在以后如果修改业务逻辑,不至于需... 阅读全文
领域驱动设计之入门级教程(上)
2010-08-03 19:51 by Virus-BeautyCode, 4937 阅读, 收藏, 编辑
摘要:
不知道本篇能否算作是入门级教程,因为大概构思了一下,里面有的是属于教程的东西,有的是相关的知识延伸,有的则什么都不是,就算是一点初级的认识吧,因为我也是接触不久。主要刚看完《领域驱动设计》,是一本不错的书。我看的是免费的pdf精简版,好像卖的话要$30,大家可以买来看看,应该是不错的。购买地址:http://www.lulu.com/product/paperback/domain-driven-... 阅读全文
测试驱动开发TDD系列(二)
2010-08-01 13:02 by Virus-BeautyCode, 2313 阅读, 收藏, 编辑
摘要:
引言 今天我们来做一个TDD的小例子。通过一个栈的实现来体验一下TDD的过程。在本系列的代码示例中,使用VS2010作为IDE工具,NUnit作为测试辅助工具。关于NUnit的使用,在园子中已经有很多的文章。可以搜索参考一下。推荐几篇不错的: NUnit详细使用方法 实践单元测试(3)-Using NUnit 正文1、简介 今天的任务就是实现一个栈,一个没有边界的栈。就是数据结构中的栈,... 阅读全文