• 垂直管理
  • 网格化管理
  • 属地管理
  • 横向管理
  • 面向接口编程
  • 面向对象编程(OOP)
  • 设计模式(GOF、MVC、SOA)
  • 依赖注入(DI/IoC)
  • 面向方面编程(AOP)
  • 领域驱动开发(DDD)
  • 测试驱动开发(TDD)
  • 对象关系映射(ORM)
  • Spring.NET
  • NHibernate
  • ASP.NET MVC

契约层(Contract):定义本模块要实现的功能即服务接口(IService),以及实现这些功能所关心的数据即值对象(VO,Value Object),也就是数据传输对象(DTO,Data Transfer Object),本层是对逻辑的抽象表达,主要完成对服务接口和值对象的声明。

领域层(Domain):实现本模块契约层定义的服务接口(IService),是对逻辑的具体实现,本层强依赖于契约层,主要包括服务(Service)、管理(Manager)、域对象(DO,Domain Object)、数据验证对象(DVO,Data Validation Object)等类,Service调用Manager和DO,实现契约层服务接口的功能,是较为粗粒度的;Manager是对Service行为的子步骤化,是细粒度的;DO是对领域实体的客观表达,相对于值对象,它更接近现实、更稳定、更具层次感;DVO实现对VO的属性值有效性的验证。

构建层(Builder):实现服务对象的创建逻辑,本层强依赖于契约层和领域层,不是必需的,可引入IOC,进而嵌入AOP功能。

控制层(Controllers):实现用户界面和数据的流转逻辑控制,本层强依赖于契约层和构建层。

界面层(UI):实现对数据的展现,本层强依赖于契约层、控制层或构建层。

[0] (VDP)垂直开发模式的更多相关文章

  1. SVN多分支开发模式V1.0.1

    1目的 规范开发模式过程,指导项目研发.质控测试.DevOps的相关活动. 2适用范围 本规范的作用范围是为互联网软件产品相关项目开发模式的管理过程. (1)   对项目团队中研发人员在开发模式过程中 ...

  2. 华为云ModelArts 2.0全面升级,革新传统AI开发模式

    [中国,上海,9月20日] 在HUAWEI CONNECT 2019期间,华为云EI服务产品部总经理贾永利宣布--华为云AI重装升级,并重磅发布一站式AI开发管理平台ModelArts 2.0. 现场 ...

  3. 企业应用开发模式 ERP项目中应用到的技术和工具

    一.基础技术选型 C# .NET 3.5/4.0  这两个版本的.NET已经相当方便(Linq, Lambda,Parallel),语法简洁,配合WCF和WF两项技术,可以满足快速开发,维护方便的目标 ...

  4. webpack+react+es6开发模式

    一.前言 实习了两个月,把在公司用到的前端开发模式做个简单的整理.公司里前端开发模式webpack+react+redux+es6,这里去掉了redux. webpack, react, redux等 ...

  5. 一种开发模式:ajax + ashx + UserControl

    一.ajax+ashx模式的缺点     在web开发过程中,为了提高网站的用户体验,或多或少都会用到ajax技术,甚至有的网站全部采用ajax来实现,大量使用ajax在增强用户体验的同时会带来一些负 ...

  6. java web学习总结(二十九) -------------------JavaBean的两种开发模式

    SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. 一.JSP+JavaBean开发模式 1 ...

  7. ASP.Net的两种开发模式

    一.ASP.Net的两种开发模式 1.1 ASP.Net WebForm的开发模式 (1)处理流程 在传统的WebForm模式下,我们请求一个例如http://www.aspnetmvc.com/bl ...

  8. Extjs MVC开发模式详解

    Extjs MVC开发模式详解   在JS的开发过程中,大规模的JS脚本难以组织和维护,这一直是困扰前端开发人员的头等问题.Extjs为了解决这种问题,在Extjs 4.x版本中引入了MVC开发模式, ...

  9. React jQuery公用组件开发模式及实现

    目前较为流行的react确实有很多优点,例如虚拟dom,单向数据流状态机的思想.还有可复用组件化的思想等等.加上搭配jsx语法和es6,适应之后开发确实快捷很多,值得大家去一试.其实组件化的思想一直在 ...

随机推荐

  1. 使用 Composer 安装 Laravel 框架

    前言: 1. Composer 安装 Laravel 有两种方式: 第一种是通过 Composer 的 create-project 命令安装 Laravel 框架, 第二种是先通过 Composer ...

  2. 【Spark2.0源码学习】-5.Worker启动

         Worker作为Endpoint的具体实例,下面我们介绍一下Worker启动以及OnStart指令后的额外工作   一.脚本概览      下面是一个举例: /opt/jdk1..0_79/ ...

  3. 多个php版本的composer使用

    由于系统环境变量之前同事安装的laravel是5.1...php默认的环境变量是: 不想破话原有环境变量,因为现在新的项目是laravel5.4...所以在用默认composer require安装时 ...

  4. C#控制台程序使用Log4net日志组件

    1.Log4net一般都不陌生,但是在配置上不同类型的项目又不相同的地方比如C#控制台程序和C# MVCWeb项目,拿控制台项目为例   项目源码在文章底部 2.首先创建一个控制台程序,引入Log4n ...

  5. 用java实现大文件分割、排序、合并

    import java.io.BufferedReader;   import java.io.BufferedWriter;   import java.io.FileNotFoundExcepti ...

  6. 【NLP】3000篇搜狐新闻语料数据预处理器的python实现

    3000篇搜狐新闻语料数据预处理器的python实现 白宁超 2017年5月5日17:20:04 摘要: 关于自然语言处理模型训练亦或是数据挖掘.文本处理等等,均离不开数据清洗,数据预处理的工作.这里 ...

  7. mysql的下载地址+Download WinMD5

    http://dev.mysql.com/downloads/mysql http://www.nullriver.com/products

  8. sscanf( )函数初体验

    解析字符串,将%格式的内容,存储到后面的参数中 %% - 返回一个百分号 % %c - ASCII 值对应的字符 %d - 包含正负号的十进制数(负数.0.正数) %e - 使用小写的科学计数法(例如 ...

  9. PHP自定义函数

    啊哈

  10. html学习笔记 - meta link

    <!DOCTYPE html> <html lang="en"> <head> <!-- 编码格式 --> <meta cha ...