中程在线-重构-卓越程序员修炼之道(笔记2重构与设计和架构)
感触很多,先记下来
1.设计软件有两种形式
一种是设计得尽量简单,并且明显没有缺陷。
另一种是设计的尽量复杂,并且没有明显的缺陷。
----C.A.R. Hoare
2.不设计和过多的设计都不好,那么,什么才是适当的设计
没有重构,你就必须保证预先做出的设计正确无误,这个压力太大了。
因为压力,导致了“过多的设计”,而重构排除了这种压力,那么,还会“过多的设计”吗?一但不会,就是适当的设计。
3.有关架构
事物脚本模型
领域模型
表模型
----《企业应用架构模式》
4.数据库什么时候建立
思维的转变:传统的开发流程,DEV喜欢先设计DB,在去设计业务层。
数据库是实现细节,应该尽可能的推迟考虑数据库。
5.业务层,UI层,DAO层
业务层我们面向对象了,那么UI层,DAO层如果适应这一变化呢
UI层引入ViewModel
DAO层引入O-R mapping(由于对象数据库不成熟,所以目前只能采用这一技术)