05 2013 档案
摘要:我们做软件开发的人,经常听到的一个词“业务逻辑”,经典的三层架构:表示层、业务逻辑层、数据访问层。这里面还专门有个业务逻辑层,表示层和数据访问层我们能够清楚的知道其职责(表示层负责界面展示及用户交互,数据访问层负责数据的存放和取出)。我们可能会迷惑,对于数据操作集中的业务,多数的业务逻辑层就是对数据访问层的封装,业务逻基层具体负责什么?本文主要讲下业务逻辑以及领域驱动中对于业务逻辑的处理到底什么是业务逻辑呢。在了解业务逻辑前先来了解下业务业务百度百科给出的解释:“业务”更白话一些来说,就是各行业中需要处理的事务,但通常偏向指销售的事务,因为任何公司单位最终仍然是以销售产品、销售服务、销售技术等
阅读全文
摘要:本文的主要讲的是领域驱动设计中,领域模型(实体,聚合,值对象)间的关系,实际上更为准确的应该是面向对象中的类间的关系。一、对象间的关系:1、依赖:唯物辨证法对事物间的联系做了如下论述:联系是指一切事物之间和事物内部各个要素之间的相互影响、相互制约和相互作用。联系是事物本身所固有的客观现象。世界上没有独立存在的事物,每一种事物都是和其他事物相联系而存在的,这是一切事物的客观本性。同样的道理,软件系统中的每个类,都要和其他的类发生某种联系,才得以存在。我们用依赖来描述2个类之间的联系。在系统中,如果一个类发生变化会引起另一个类发生变化则称这两个类之间存在(广义的)依赖关系。类间的依赖关系可以是结构
阅读全文
摘要:领域驱动设计中存在3种对象 DataTransformObject、ViewModel、DomainModelDataTransformObject(DTO) :DTO是表现层与application层传递的对象,此对象不包含行为,只是包含属性。此类传递到application后会通过automapper等类似的工具转化为DomainModel,因为DomainModel包含重要的业务逻辑,上层是不能之间访问到DomainModel。ViewModel:存在于表现层,如表现层使用asp.net mvc 此时的model 就是ViewModel,负责联系view和controller,一是vie
阅读全文
摘要:转载自:http://www.cnblogs.com/xiaomi7732/archive/2011/07/30/2120626.html当使用WCF + Entity Framework时要小心,否则,很容易掉入各种陷阱。这里介绍两个在序列化时容易遇到的、会导致服务停止的陷阱。一、试图序列化Entity Proxy类而导致服务停止。二、序列化时出现死循环导致服务停止;无论掉入哪一个陷阱,在客户端都会看到这样的对话框(点击看大图):大致意思是会说:服务不在线或者客户端配置有问题或者Proxy类有问题。而如果跟着Error Details里的第一行Google,会找到许多文章关于调整数据缓存大小
阅读全文
摘要:以前的设计首先我们回顾下以前我们设计系统的做法。在过去,我们的应用程序架构一直以数据为中心。我们的核心是围绕数据库展开的,首先我们会建立数据库,建立一系列的数据表,数据库表之间的主外键关系表述整个系统中的对象之间的关系。数据表中的一行数据来表述一个对象。然后我们会依次建立数据访问层、业务逻辑层、表现层。如下图所示注:此图来源 http://www.cnblogs.com/daxnet/archive/2010/07/07/1772584.html注意图中打虚线的“基础结构层”,从实践的表现上来看,这部分内容可能就是一些帮助类,比如 SQLHelper之类的,也可能是一些工具类,比如TextUt
阅读全文
浙公网安备 33010602011771号