模式分为三种,设计模式、体系结构模式与惯用法。
其中惯用法是一种语言紧密相关的模式,
例如:定界加锁模式其实是一种惯用法。
在C#项目开发过程中,很多情况下您已经使用了某些模式,但或许您并不知道自己所使用的这种解决方案是一种已经被总结归纳的模式。
工厂、策略、桥接、模板方法、代理等等23种GOF经典模式是属于设计模式,设计模式的粒度相对较小,基本上用于提高模块内部的可扩展性和可维护性需求
三层、MVC、IoC/DI等属于体系结构模式,粒度比设计模式大,它是从项目的整体角度去看项目的架构。设计需要合理性,架构同样追求合理性,这就是架构模式的用途。
C#的经典样例petshop中,采用三层思想构架了整个网站,这里的三层就是体系结构模式;而在数据库访问层,则采用工厂模式来泛化数据库操作,使得业务层不需要关心您现在的数据库是SQL server的,还是oracle的。这就是设计模式的使用。
PS:粒度是指数据仓库的数据单位中保存数据的细化或综合程度的级别。细化程度越高,粒度级就越小;相反,细化程度越低,粒度级就越大。