SICS编程指南 2 第一印象(2)程序结构

SICS的整体风格是我比较满意的一处:严格按照JAVA的包依赖关系设计,体系清晰。

本来想发一些截图的,但是上传图片的速度实在太慢,所以这里就偷懒了,仅文字描述一下吧!

SICS的包定义为:

0)wherever.sysframe:这个是程序的根包,其中wherever是我为自己的所有JAVA程序设定的根;

1)wherever.sysframe.running:系统运行段控制,建立了基于状态迁移的运行控制规范。因为定义高度概括(仅三言两语),而且非常抽象,所以应用系统(包括SICS的框架自身)都不会直接使用它们;

2)wherever.sysframe.concept:公用概念,定义了系统对象的基本规则,包括对象关系,配置语义,对象管理;

3)wherever.sysframe.system:系统体系,定义了SICS的核心规则,包括系统结构规范,资源共享规范,应用间协作规范,访问控制规范;

4)wherever.sysframe.realism:系统基础,它为基于SICS的应用开发提供了一些基本支持,也仅用于SICS自身及相关服务的开发,不对外公开;

5)wherever.sysframe.provider:主要定义了各种对象的存储规则,以适应不同的发布要求,同时,这个包也允许(但是通常不需要)由开发人员直接使用;

6)wherever.sysframe.engine:系统的实际实现,对于开发人员来说,这个包几乎是完全不可见的。

7)wherever.sysframe.oprview:定义了一些常用的操作界面,允许二次开发,但是通常仅用于SICS及相关服务的界面开发,对一个实际外部应用来说也没什么必要性;

8)wherever.sysframe.manager:定义了SICS的管理界面,由SICS的作者负责维护,不提供二次开发。

9)wherever.sysframe.layers:综合我自己的程序设计经验,所定义的一套分层结构规则,它们基本上都是一些规范接口或者声明性质的接口,以建立外部应用的访问规则。SICS自身不直接使用这些规则。

10)wherever.sysframe.service:为基本的数据链路定义了一个规范性的实现规则,以避免系统整合所导致的接口冲突,在基于SICS的服务实现过程中通常需要遵守这个规则;

11)wherever.sysframe.toolbox:建立了一些通用对象,包括实现SICS的基本扩展(例如类装载器)和常用组件(例如SOCKET客户网关),等等。它们主要用于应用开发;对于SICS自身来说它不是必要的,

12)wherever.sysframe.bootup:用于启动SICS,它可以被直接使用,例如创建SICS实例以实现其嵌入(在其它外部系统中)运行模式。

此外,作为一个应用框架,考虑到应用开发的实际情况,为了避免外部应用在定义过程中可能出现的接口冲突,SICS还补充定义了一些建议性的规范接口,它们完全是为外部应用设计的,SICS完全不使用它们。这样的包包括:

13)wherever.sysframe.object:相对concept和system,这个从另一个角度定义了复杂对象的管理和部署规则,这个包 所涵盖的语义非常复杂,目前也仅有SICS的一个原生服务LightRpc可以直接支持这样的模型。所以我衷心祝愿大家永远不要碰到类似的应用体系!如果 有一天您碰到了,那么我也衷心祝贺你,因为这说明你已经是一个顶尖的程序员了!

14)wherever.sysframe.message:它定义了一个基于消息的系统通讯和处理模型。从系统语义的角度考虑,它和SICS几乎八竿子 也打不着!但是,这类应用的市场非常广大,从系统扩展性角度考虑,SICS不得不为这类应用做好准备:建立一个规范语义,考察SICS的框架模型是否可以 兼容这类模型!

这个就是SICS的整体结构,描述的比较简单,也略显零乱,所以再归纳一下吧:

1)作为应用系统开发人员,您只需要关心(2)、(3)、(9)、(12)就足够了,重点是(3);

2)如果您是系统底层开发人员,那么您需要关心(2)、(3)、(9)、(10),对(11)也要有基本的了解;

3)如果您是系统分析师,那么您可能还需要关心(5);对于(13)、(14)这两个建议规范,如果有兴趣您可以使用它们,但不是必需的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值