zoukankan      html  css  js  c++  java
  • 把数据源看成一个Service

    Rockford Lhotka在ServerSide.Net上发表了一篇文章《The Fallacy of the Data Layer》(博客园的朋友已经将此文翻译成了中文)。

    作者在这篇文章中表达了一种观点,即数据源与其说是整个Application中的一个Layer(Tier),不如把数据源当作Application之外的一个单独的Service。作者将Application这个词定义为:“an application is hereby defined as a set of code, objects, components, services, layers or tiers that exist within a trust boundary.”就是说,一个Application的内部是紧密联系的、互相信任的一组内容。Layer可以看作Application内部的一种层次。而数据源(通常是SqlServer之类的数据库)在真实世界中,并没有将它“完全包裹”在一个Application的里面,而是可以被其他Application(或者叫其他Service)访问的。

    其实作者的观点并非什么“惊世骇俗”,在很多情况下,我们早已经把Data Access Layer和Data Source 分来了,Data Source作为一个单独的“服务”存在于系统之外的某个地方,而且可以作为“插配件”一样更换和替代。我的个人观点更倾向于把Data Access Layer叫做Persistent Layer,持久层。在Application内部,我们看到的只是反映客观世界的Entity,对数据库“一无所知”,在需要保存Entity时,由持久层负责将Entity持久化,至于它是如何将它持久的,对于Domain Logic来说,没有意义。

    About VS2005:
    最近VS2005的各种测试版本开始满天飞,包括Yukon的各种测试版本,越来越“混乱”了(可怜我手头的Indigo组件还点名需要PD6版本...),在11月份的VS2005 CTP之后,12月份的CTP也快要出来了。如果想等稳定的版本,期待明年2月份的Beta2 Release吧!:)

    再附,To Office MVPs:
    OTEC(Office技术专家俱乐部)成员名单即将确定,请有意参加的Office MVPs发送邮件给我,并在邮件中附上相关信息(详见回复)。
  • 相关阅读:
    jmeter测试mysql数据库之JDBC请求
    接口测试浅谈
    python import xxx 与 from xxx import xx 模块引入的区别
    交互模式下测试python代码及变量的四则运算
    python入门之一python安装及程序运行
    zabbix命令之:zabbix_get命令
    snmpwalk工具使用
    zabbix基础知识
    Centos7.5 rpm安装zabbix_agent4.0.3
    mysql常用命令
  • 原文地址:https://www.cnblogs.com/kaneboy/p/2436817.html
Copyright © 2011-2022 走看看