大规模软件系统的产品周期
随着产品的不断发展,复杂度不断增加,生产率(Features数量)下降,质量(Bugs)不受控制,稳定性(Fluctuation)变差,架构变得腐化。
原则、模式、最佳实践和工具集
架构优化原则
1.单一职责
2.领域内聚
3.抽象接口隔离
4.重用
5.管理架构资产
模块解耦模式
1.模块重新划分
表现:
一个模块在领域中内聚性不强,...
分类:
其他好文 时间:
2014-09-23 23:55:05
阅读次数:
296
事务管理
Spring提供了编码式和声明式事务管理的支持。
编码式事务允许用户在代码中精确定义事务的边界,而声明式事务(基于AOP)用助于用户将操作与事务解耦。
选择编码式还是声明式在很大程度上是在细粒度控制和易用性之间权衡。
Spring并不直接管理事务,而是提供多种事务管理器,将它们事务管理职责委托给JTA或其他持久化机制所提供的平台相关的事务实现。每个事务管理器都会充当某...
分类:
编程语言 时间:
2014-09-23 13:47:34
阅读次数:
281
RPC分布式计算
目录(?)[+]
RPC 功能目标RPC 调用分类RPC 结构拆解RPC 组件职责RPC 实现分析
导出远程接口导入远程接口与客户端代理协议编解码传输服务执行调用
RPC 异常处理总结
《深入篇》我们主要围绕 RPC 的功能目标和实现考量去展开,一个基本的 RPC 框架应该提供什么功能,满足什么要求以及如何去实现它?
RPC 功能目标
R...
分类:
其他好文 时间:
2014-09-23 11:47:34
阅读次数:
363
org.springframework.beans.factory.BeanFactory是Spring IoC容器的实际代表者,IoC容器负责容纳此前所描述的bean,并对bean进行管理。在Spring中,BeanFactory是IoC容器的核心接口。 它的职责包括:实例化、定位、配置应用程序中...
分类:
移动开发 时间:
2014-09-23 02:18:13
阅读次数:
230
职责链模式(Chain of Responsibility)
是多个对象都有机会处理请求,从而避免请求的发送者和...
分类:
其他好文 时间:
2014-09-22 11:00:44
阅读次数:
205
1、基础规则视图的职责是向用户提供用户界面。视图位于View目录下:有普通的需要控制器渲染的视图,有局部视图,有布局视图等各种视图。2、视图渲染控制器默认情况下渲染与控制器同名的目录内的与Action同名的视图,也可以在Action中,通过return view(“视图名”)来指定需要渲染的其他视图...
分类:
Web程序 时间:
2014-09-21 21:46:41
阅读次数:
229
职责链模式中,对于某项事件,设置一个直接的处理者即可。如果直接处理者不能处理,则交给其上一级处理者,一直到该事件处理完毕为止。职责链模式好处在于,只需要设置事件的相关级别、属性,并只需要交给一个相关的处理者即可。Reschain.h内容 1 #ifndef Reschain_H_H 2 #defin...
分类:
其他好文 时间:
2014-09-20 17:49:39
阅读次数:
132
1> 单一职责原则
这是我们设计程序最常见的设计原则了,比如用户信息,分属性和行为,基础信息属归属性类,执行归行为类或接口,在实际项目中大多也就只有这个地方能用到。
2>里氏替换原则
尽量规避继承关系带来的负面重构影响
几个注意地方:
2.1》类中调用其他类时,尽可能使用其他类的接口或父类,这也是我们经常性的习惯。
2.2》如果子类不能完整实现父...
分类:
其他好文 时间:
2014-09-20 16:53:29
阅读次数:
148
定义:
简单来说,单一职责原则(SRP)就是对对一个类而言,应该仅有一个引起它变化的原因。
什么是职责?
在SRP中,职责 = a reason for change 。如果你能想到多于一个的动机去改变一个类,那么这个类就具有多于一个职责。
具体的例子可以看敏捷软件开发 p91 。
SRP是所有原则找那个最简单的之一,也是最难...
分类:
其他好文 时间:
2014-09-20 16:19:19
阅读次数:
159
原文:http://www.nowamagic.net/internet/internet_DutyOfSoftwareArchitect.php最近开始学习如何成为一名合格的架构师。首先参照别人的观点,在结合自己的实际经验,写出自己对如何成为一名架构师的理解,希望大家热心于与援手,能够指点一二。 ...
分类:
其他好文 时间:
2014-09-19 19:04:25
阅读次数:
125