发信人: zms (小美), 信区: Java
标 题: Re: 冯大辉:小规模低性能低流量网站设计原则
发信站: 水木社区 (Mon Oct 10 11:55:08 2011), 站内
这个能说的很多,我总结了一下做到架构清晰的要点:
1. 必要的分层
就是大家都说的那种 表现层,dao,pojo,数据库,service,之类的层次
一定要分,要清晰
2. 不是为了分层而分层
就是不要走到极端,不管功能是啥,都死板的分那么多层
这是对1的补充
3. 做一个模块/功能 时,如果没有分层,那要考虑到:如果以后功能复杂了,再分层,也是比较容易的。
留下以后分层的余地
这是对2的补充
编码时要注意的:
1. 一个模块,一个类,要职责明晰
这个模块,这个类,干了什么事情,要一两句话能说清楚
不要出现这种情况: “这个类干了xx事情,也干了xx事情,在xx的情况下,它也能xx”
2. 模块框图 或者 类图(UML) 不要是一个网状的(或者尽量避免)
就是类的依赖关系不要是网状的; 是树状的为好 (倒立的树)
3. 编码时,一个类要尽量少依赖其他类(的个数)
或者说,和尽量少的类发生关系
这个类是指自己写的类,不是api里的
这其实是2的另一种说法
btw:说了这么些,不知有没有用。。
【 在 Lanlamer (金陵书生) 的大作中提到: 】
: 什么样的架构才是清晰的架构?这个有什么需要注意的?
标 题: Re: 冯大辉:小规模低性能低流量网站设计原则
发信站: 水木社区 (Mon Oct 10 11:55:08 2011), 站内
这个能说的很多,我总结了一下做到架构清晰的要点:
1. 必要的分层
就是大家都说的那种 表现层,dao,pojo,数据库,service,之类的层次
一定要分,要清晰
2. 不是为了分层而分层
就是不要走到极端,不管功能是啥,都死板的分那么多层
这是对1的补充
3. 做一个模块/功能 时,如果没有分层,那要考虑到:如果以后功能复杂了,再分层,也是比较容易的。
留下以后分层的余地
这是对2的补充
编码时要注意的:
1. 一个模块,一个类,要职责明晰
这个模块,这个类,干了什么事情,要一两句话能说清楚
不要出现这种情况: “这个类干了xx事情,也干了xx事情,在xx的情况下,它也能xx”
2. 模块框图 或者 类图(UML) 不要是一个网状的(或者尽量避免)
就是类的依赖关系不要是网状的; 是树状的为好 (倒立的树)
3. 编码时,一个类要尽量少依赖其他类(的个数)
或者说,和尽量少的类发生关系
这个类是指自己写的类,不是api里的
这其实是2的另一种说法
btw:说了这么些,不知有没有用。。
【 在 Lanlamer (金陵书生) 的大作中提到: 】
: 什么样的架构才是清晰的架构?这个有什么需要注意的?