2007年7月18日

PetShop 4.0架构与技术分析(一)

摘要: 项目列表:从整体可以看出,Pet Shop 4的项目体系已经很庞大,考虑的方面也较3.0更全面复杂。 序号 项目名称 描述 1 BLL 业务逻辑层 2 CacheDependencyFactory 缓存依赖类的工厂类 3 WEB 表示层 4 DALFactory 数据层的抽象工厂 5 DBUtility 数据访问类组件 6 IBLLStrategy 同步/异步策略接口 7 ICacheDependency 缓存依赖类接口 8 IDAL 数据访问层接口定义 9 IMessaging 异时处理消息队列接口定义 10 IProfileDAL Profile的数据访问层接口定义 11 Membersh 阅读全文

posted @ 2007-07-18 23:45 JonyOang 阅读(172) 评论(0) 推荐(0)

petshop4.0 详解之八(PetShop表示层设计)

摘要: 代码中,InsertUser()方法就是负责用户的创建,而在之前则需要判断创建的用户是否已经存在。InsertUser()方法的定义如下:privatestaticboolInsertUser(OracleTransactiontransaction,intuserId,stringemail,stringpassword,intpassFormat,stringpassSalt,stringpassQuestion,stringpassAnswer,boolisApproved,DateTimedt){stringinsert="InsertINTOMEMBERSHIP(USERID,EMA 阅读全文

posted @ 2007-07-18 23:41 JonyOang 阅读(127) 评论(0) 推荐(0)

petshop4.0 详解之七(PetShop表示层设计)

摘要: 6.4 ASP.NET 2.0新特性由于PetShop 4.0是基于.NET Framework 2.0平台开发的电子商务系统,因而它在表示层也引入了许多ASP.NET 2.0的新特性,例如MemberShip、Profile、Master Page、登录控件等特性。接下来,我将结合PetShop 4.0的设计分别介绍它们的实现。6.4.1 Profile特性Profile提供的功能是针对用户的个性化服务。在ASP.NET 1.x版本时,我们可以利用Session、Cookie等方法来存储用户的状态信息。然而Session对象是具有生存期的,一旦生存期结束,该对象保留的值就会失效。Cookie 阅读全文

posted @ 2007-07-18 23:40 JonyOang 阅读(158) 评论(0) 推荐(0)

petshop4.0 详解之六(PetShop表示层设计)

摘要: 《解剖PetShop》系列之六六 PetShop之表示层设计表示层(Presentation Layer)的设计可以给系统客户最直接的体验和最十足的信心。正如人与人的相交相识一样,初次见面的感觉总是永难忘怀的。一件交付给客户使用的产品,如果在用户界面(User Interface,UI)上缺乏吸引人的特色,界面不友好,操作不够体贴,即使这件产品性能非常优异,架构设计合理,业务逻辑都满足了客户的需求,却仍然难以讨得客户的欢心。俗语云:“佛要金装,人要衣装”,特别是对于Web应用程序而言,Web网页就好比人的衣装,代表着整个系统的身份与脸面,是招徕“顾客”的最大卖点。“献丑不如藏拙”,作为艺术细胞 阅读全文

posted @ 2007-07-18 23:38 JonyOang 阅读(158) 评论(0) 推荐(0)

petshop4.0 详解之四(PetShop之ASP.NET缓存)

摘要: 四 PetShop之ASP.NET缓存如果对微型计算机硬件系统有足够的了解,那么我们对于Cache这个名词一定是耳熟能详的。在CPU以及主板的芯片中,都引入了这种名为高速缓冲存储器(Cache)的技术。因为Cache的存取速度比内存快,因而引入Cache能够有效的解决CPU与内存之间的速度不匹配问题。硬件系统可以利用Cache存储CPU访问概率高的那些数据,当CPU需要访问这些数据时,可以直接从Cache中读取,而不必访问存取速度相对较慢的内存,从而提高了CPU的工作效率。软件设计借鉴了硬件设计中引入缓存的机制以改善整个系统的性能,尤其是对于一个数据库驱动的Web应用程序而言,缓存的利用是不可 阅读全文

posted @ 2007-07-18 23:37 JonyOang 阅读(130) 评论(0) 推荐(0)

petshop4.0 详解之五(PetShop之业务逻辑层设计)

摘要: 五 PetShop之业务逻辑层设计业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应对的领域(Domain)逻辑有关,很多时候,我们也将业务逻辑层称为领域层。例如Martin Fowler在《Patterns of Enterprise Application Architecture》一书中,将整个架构分为三个主要的层:表示层、领域层和数据源层。作为领域驱动设计的先驱Eric Evans,对业务逻辑层作了更细致地划分,细分为应用层与领域层,通过分层进一步 阅读全文

posted @ 2007-07-18 23:37 JonyOang 阅读(118) 评论(0) 推荐(0)

petshop4.0 详解之三(PetShop数据访问层之消息处理)

摘要: 三、PetShop数据访问层之消息处理在进行系统设计时,除了对安全、事务等问题给与足够的重视外,性能也是一个不可避免的问题所在,尤其是一个B/S结构的软件系统,必须充分地考虑访问量、数据流量、服务器负荷的问题。解决性能的瓶颈,除了对硬件系统进行升级外,软件设计的合理性尤为重要。在前面我曾提到,分层式结构设计可能会在一定程度上影响数据访问的性能,然而与它给设计人员带来的好处相比,几乎可以忽略。要提供整个系统的性能,还可以从数据库的优化着手,例如连接池的使用、建立索引、优化查询策略等等,例如在PetShop中就利用了数据库的Cache,对于数据量较大的订单数据,则利用分库的方式为其单独建立了Ord 阅读全文

posted @ 2007-07-18 23:35 JonyOang 阅读(93) 评论(0) 推荐(0)

PetShop的系统架构设计

摘要: 前言:PetShop是一个范例,微软用它来展示.Net企业系统开发的能力。业界有许多.Net与J2EE之争,许多数据是从微软的PetShop和Sun的PetStore而来。这种争论不可避免带有浓厚的商业色彩,对于我们开发人员而言,没有必要过多关注。然而PetShop随着版本的不断更新,至现在基于.Net 2.0的PetShop4.0为止,整个设计逐渐变得成熟而优雅,却又很多可以借鉴之处。PetShop是一个小型的项目,系统架构与代码都比较简单,却也凸现了许多颇有价值的设计与开发理念。本系列试图对PetShop作一个全方位的解剖,依据的代码是PetShop4.0,可以从链接http://msdn 阅读全文

posted @ 2007-07-18 23:04 JonyOang 阅读(156) 评论(0) 推荐(0)

导航