PetShop是一个范例,微软用它来展示.Net企业系统开发的能力。PetShop是一个小型的项目,系统架构与代码都比较简单,却也凸显出许多颇有价值的设计与开发理念。 在软件体系架构设计中,分层式结构是最常见的,也是最重要的一种结构。微软推荐的分层式结构一般为三层,从下至上分别为:数据访问层、业务逻辑层、表示层。
数据访问层:负责数据库的访问。简单地说就是实现对数据表的Select,Insert,Update,Delete的操作。
业务逻辑层:系统核心,与系统的业务有关。以PetShop为例,业务逻辑层的相关设计,均和网上宠物店特有的逻辑有关。例如查询宠物、下订单、添加宠物到购物车等等。如果涉及到数据库的访问,则调用数据访问层。
表示层:是系统的UI部分,负责使用者与整个系统的交互。在这一层中,理想的状态时不应该包括系统的业务逻辑。表示层中的逻辑代码,仅与界面元素有关。在PetShop中,是利用.net来设计的,因此包含了许多Web控件和相关逻辑。
分层式结构优势:
1.开发人员可以只关注整个结构中的其中某一层。
2.可以很容易地用新的实现来替换原有层次的实现。
3.可以降低层与层之间的依赖。
4.有利于标准化。
5.利于各层逻辑的复用。
缺陷:
1.降低了系统性能。很多业务必须通过中间层来访问数据库。
2.有时会导致级联的修改。这种修改尤其体现在自上而下的方向。
如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。
PetShop4.0下载地址