`
guanhuaing
  • 浏览: 1196096 次
文章分类
社区版块
存档分类
最新评论

细说SCA V1.0规范(3) -- Domain与业务

 
阅读更多

从写第一篇"细说SCA V1.0规范(1) --component与实现"到现在已经有快6个月的时间了。这么长的时间间隔,最初构思的内容已经无法连贯的写出来。稳定的收入和充裕的时间是一对矛盾体,有多少人在两者之间不断的寻找着一种平衡。

在写每一篇博客的时候,总是不能把所有的想出来的内容都写出来,真的很遗憾。其实可以很多不同领域角度来看SCA,从数据结构的角度来看SCA,可以从软件开发模型的角度来看SCA,可以从软件生命周期来看SCA。在每个不同的角度,都可以看到SCA良好的适应性和实用性。言归正转,下面说说Domain与业务的部分。

首先,什么是Domain? Domain不就是域吗! 那么域又是什么含义呢? 上互连网有域名的概念,单位里有局域网的概念。这个Domain说白了就是作用的范围,有一个划分边界的含义。一个域就是一个范围,一个作用区域,在这个区域内包含的内容有一个共同的特性。在同一个领域中每个不同的域之间是有明显的分界和不同特性的内容。

对于SCA中的每个域是针对于一个业务功能进行划分的。每个域对应一定的业务范围,这个业务域可能是一个子系统,也可能是一个模块。比如,财务部门可能有一个财务系统,对应一个财务系统的域。而人力资源对应的是人才管理的域。每个域都对域内的业务提供功能。每个域通过一个URI进行标识。

在SCA构建模型时是从域开始的。一个域的URI标识和域模型可以是一对一,也可能是一对多的关系。一个URI必然对应一个Domain域且只能是一个。在v0.9规范中没有Domain域的概念,SCA还是可以run运行起来,所以Domain是一个逻辑上的层次。

Domain域,我理解为两层。一层是命名层,将URI与Domain域建立关联,并通过URI实现对Domain域模型的访问;另一层是一个Composite层,模型中的对象以Composite组件形式进行组织,但是这些组件是由存在内存中的对象组成的,而不是通过外部的文件解析生成的。这些在内存中的对象是通过SCA容器实现初始化、构造、解析等管理的。

<待续>

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics