随笔分类 -  模式

也谈Dependency Injection(依赖注入),依赖关系转移而不是消除(未完成)
摘要:DI 是一种理念,DI Container是实现DI这种理念的一种方式。把对象间的关系(Object graphy)集中管理1.可以转移到方法名,字符串,xml中。2.并没有使编程变得更简单,只是把一部分变得更抽象,显得更强壮了而已。3.IOC容器管理了对象的依赖关系,因此要在程序运行前启动。因为没有具体依赖的程序什么都不是。几种依赖注入的方式: 阅读全文
posted @ 2012-03-16 14:11 一路转圈的雪人 阅读(236) 评论(0) 推荐(0) 编辑
再谈select, iocp, epoll,kqueue及各种I/O复用机制 (转)
摘要:原文链接首先,介绍几种常见的I/O模型及其区别,如下:blocking I/Ononblocking I/OI/O multiplexing (select and poll)signal driven I/O (SIGIO)asynchronous I/O (the POSIX aio_functions)blocking I/O 这个不用多解释吧,阻塞套接字。下图是它调用过程的图示: 重点解释下上图,下面例子都会讲到。首先application调用 recvfrom()转入kernel,注意kernel有2个过程,wait for data和copy data from kernel to 阅读全文
posted @ 2012-03-16 13:53 一路转圈的雪人 阅读(495) 评论(0) 推荐(0) 编辑
开篇:POEEA的读书感想
摘要:原来因为技术限制等原因,一直采用的是把所有逻辑都单独放在Service层的方式,这种方式最容易让人理解。不过随着开发的进展,service越来越大,也成为了一个问题,逻辑变得难以管理。我一直想解决这种问题,在学习设计模式的过程中,好像看到了点能解决问题的端倪,可在实战中,我的能力又不足以充分的使用各种设计模式。后来看到了POEAA这本书提到的领域模型,才明白了自己这种方式被叫做“贫血”模型,相对应的还有早就听说,但是不知道如何实现的“领域模型”。接下来我就打算把自己以前用贫血模型做的项目用领域模型重新做一遍,估计问题会不少,比如说是用数据库驱动还是用领域驱动呢?现实中大多数都是先设计好数据库在 阅读全文
posted @ 2011-01-29 09:55 一路转圈的雪人 阅读(628) 评论(0) 推荐(0) 编辑