开发/设计模式
Cloud_N
这个作者很懒,什么都没留下…
展开
-
浅析VO、DTO、DO、PO的概念、区别和用处
概念: VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。 DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。转载 2017-12-27 16:55:20 · 265 阅读 · 0 评论 -
浅谈TDD、BDD与ATDD软件开发 (敏捷开发模式)
这些知识之前就了解了一点,还没来得急总结,现在总结一下。1. 首先了解一下这三个开发模式都是什么意思:TDD:测试驱动开发(Test-Driven Development)测试驱动开发是敏捷开发中的一项核心实践和技术,也是一种设计方法论。TDD的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。TDD的基本思路就是通过测试来推动整个开发的进行,但测试驱动开发并不只...转载 2018-03-26 17:37:35 · 587 阅读 · 0 评论 -
Easy-mapper教程——模型转换工具
1 背景做Java开发都避免不了和各种Bean打交道,包括POJO、BO、VO、PO、DTO等,而Java的应用非常讲究分层的架构,因此就会存在对象在各个层次之间作为参数或者输出传递的过程,这里转换的工作往往非常繁琐。这里举个例子,做过Java的都会深有体会,下面代码的set/get看起来不那么优雅 ElementConf ef = new ElementConf();ef.setTplConf...转载 2018-03-27 10:49:45 · 1985 阅读 · 0 评论 -
alibaba代码规约中对于MVC数据模型的规范
分层领域模型规约:DO( Data Object):与数据库表结构一一对应,通过DAO层向上传输数据源对象。DTO( Data Transfer Object):数据传输对象,Service或Manager向外传输的对象。BO( Business Object):业务对象。 由Service层输出的封装业务逻辑的对象。AO( Application Object):应用对象。 在Web层与Serv...转载 2018-04-09 19:23:04 · 419 阅读 · 0 评论 -
jdk中的观察者模式和监听器模式
1.观察者模式如图,比较简单,直接看代码,Observer里有一个update方法,需要你手动实现当被观察者被修改时调用的业务逻辑。在调用update时可以传参进去。public interface Observer { /** * This method is called whenever the observed object is changed. An * a...原创 2018-07-15 20:49:57 · 2684 阅读 · 0 评论 -
doublecheck单例由于指令重排产生的问题
转自https://blog.csdn.net/anjxue/article/details/51038466在阅读之前,请先了解下线程并发涉及到的三个概念:原子性、可见性、有序性,可以看下这篇文章:http://www.cnblogs.com/dolphin0520/p/3920373.html我假设你已经看过几篇double check的文章,但还是一知半解。我们先看这种双重检...转载 2018-08-23 09:52:01 · 519 阅读 · 0 评论 -
两种 NIO 实现:Selector 与 Epoll
我想用这个话题小结下最近这一阶段的各种测试和开发。其实文章的内容主要还是想总结一下 NIO Socket ,以及两种不同操作系统实现 NIO 的方式, selector 和epoll 。问题应该从服务器端开始说起。我们都写过net包下的socket,用socket的accept方法来等待客户端的请求,请求来了则处理,没有则一直等待,然后反复循环。这样的方式,类似于重用进程,要说线程也可以,始终...转载 2018-09-09 20:16:19 · 284 阅读 · 0 评论