Live Object(活性对象)
来源:互联网 发布:自学小提琴 知乎 编辑:程序博客网 时间:2024/04/29 18:29
Live Object(活性对象)有两种,一种Reference(参照对象),一种Composite(合成对象),后者实际上是由前者作为原语来构成的,所以弄明白Reference,就可以自己构建Composite的活性对象。
而Reference objects又有三种:
1. Predefined,实际上也是Library 库对象。它们以.Net 库的方式实现,他们的代码要么是内置到活性对象的运行库中了,或者从网上下载下来都可以。
2. Repository,仓库对象。这种对象的定义被内置到其他对象例如Repositories和Folders里面。所以如果要实例化这些对象,需要先和他们的“仓库”进行沟通。
3. Parameter,参数对象。这种对象被用作定义Composite对象时传递的参数,
抛开参数对象不谈,前两种都是比较容易了解和使用的,它们都必须有一个唯一的ID,并以XML的attribute "id"来表示。Predefined objects的ID格式:
namespaceid`namespaceversion:componentid`componentversion
注意:高亮的 "`" (back-apostrophe)和 ":" (colon)是分割符。"libraryid"(namespaceid)和 "componentid" 是128-bit十六进制数,分别用于标识对象定义的命名空间和被指定的组件ID。而"namespaceversion" 和 "componentversion" 则由64-bit十进制数来编码。
这里的"namespace",典型代表就是.NET library,但是一个namespace也可能跨越多个library。我们假设,在一些全局性的目录中,为了防止冲突,一些namespace的号 码应该被预留,尽管目前简单地使用类似VS里面随机产生的GUIDID也是足够应付的。在一个特定的namespace里面,component id可以是任何值。我们假设namespace和component的版本是向后兼容的。
ID命名中的四个部分都可以是空值,也就是“0”,其中Namespace "0" 被保留为运行时(runtime)。因此,一个“0`0:C69D58A635524737981E4C8AB9279EDD`0”的ID可以被简写 成"C69D58A635524737981E4C8AB9279EDD",这代表着一个在任意版本的活性对象运行时中定义的任意版本的组件,其名字为 “C69D58A635524737981E4C8AB9279EDD”。其实在命名时,也可以忽略关于namespace版本信息的指定,这样一个 如"X:Y"的ID可以被翻译为"活性对象运行时中版本高于Y的组件X", "X:Y`Z" 则代表"namesapce X下版本高于Z的组件Y"。
- Live Object(活性对象)
- 模拟自主运行的对象(live object)
- 活性(Liveness)
- java并发(四、活性)
- Java并发编程-活性(五)
- Java并发(二)——活性
- PowerShell 对象(Object)
- 对象(object)
- 预测蛋白活性口袋的在线网页 (POCASA)
- 样式对象(Style Object)
- [JavaScript]Object(对象)学习
- 锁对象(lock object)
- Oracle 对象类型(Object)
- 变量对象(Variable object)
- 创建对象(Create Object)
- js创建对象(object)
- 对象图(Object Diagram)
- Javascript 对象(object)合并
- 智能开发框架 JEECG 作者张代浩专访
- textview最多显示3行点击事件展开显示全部
- log4j2 JdbcAppender 官网配置
- C++ primer-练习5.11
- cAdvisor0.24.1+InfluxDB0.13+Grafana4.0.2搭建Docker1.12.3 Swarm集群性能监控平台
- Live Object(活性对象)
- DataStage问题汇总
- 因使用过期地图,百度地图和谷歌地图惨遭吐槽
- 你的商业模式靠得住么?不妨从这7个角度去检视下
- php GD 增加 jpeg支持~
- js使用cookie
- 更好的 SQL 模式的 10 条规则
- 常用SQL查询语句
- R语言-linux下devtools包、SparkR包安装