摇摆于强类型与弱类型之间的对象
来源:互联网 发布:手机课程表软件 编辑:程序博客网 时间:2024/04/30 05:07
对象本质上是一种命名技术,即将一组相关的数据和函数放在一起,起一个名字。从业务层面上看,我们需要识别出大量的概念,对应到建立的领域模型,我们就拥有不同的业务对象。这些业务对象的类型各不相同,可以区分出来。从中间件层面上看,需要从大量业务对象中抽象出共性,并以统一的方式进行处理。即在中间件层,所有业务对象的类型被弱化下来,实际上丧失了其各自的独特性,即在中间件层看来,这些不同业务对象的类型是相同的。在中间件层的做法,一般是使用reflection方法并结合少量全局性的接口。实际上是在结构层面上将对象作为Map来处理。这就象是应用科学与数学的关系。数学在抽象的层面上研究结构之间的关系,每一个具体学科对相同的数学定理赋予不同的诠释。
理论上,一个概念最好能够自适应的在不同的抽象层面上表现为不同的结构,但受限于当前的面向对象实现技术,实际采取的技术路线多半为建立唯一的强类型模型==>通过reflection得到弱类型结构。因为java class作为元数据能够承载的信息量有限,reflection方法可能并不能充分揭示对象的结构,所以一般还要额外补充xml说明文件等。 因为我个人主要的工作都作在中间件层,所以我的做法是尽量使用Map和List等抽象数据结构,结合元数据对象,在需要强类型的时候通过对象封装来转化为强类型。即从弱类型==>强类型。
例如:
class Work{
public static final String KEY_NAME = "name";
public static final String KEY_DESCRIPTION = "description";
Map work;
public String getName(){
return (String)work.get(KEY_NAME);
}
public String getDescription(){
return (String)work.get(KEY_DESCRIPTION);
}
public void setName(String name){
work.put(KEY_NAME,name);
}
...
public Map toMap(){
return work;
}
}
- 摇摆于强类型与弱类型之间的对象
- PHP弱类型与JAVA强类型之间的矛盾
- 强类型与弱类型
- 强类型与弱类型
- DataReader的弱类型与强类型的方法
- 关于强类型与弱类型的一点思考
- C# 4.0的强类型与弱类型
- 强类型语言与弱类型语言
- 弱类型语言与强语言类型
- 强类型DataSet与弱类型DataSet
- 强类型语言与弱类型语
- 弱类型语言与强语言类型
- 弱类型语言与强类型语言
- 强类型语言与弱类型语言
- 强类型语言与弱类型语言
- 强类型与弱类型 强引用与弱引用
- 语言的强类型和弱类型
- 强类型与静态类型
- 基于arm+uClinux的嵌入式系统的开发
- 网络调试windows中常用的命令
- 数据仓库建模
- 深入分析Oracle数据库日志文件
- 去掉win2000和winxp的硬盘默认共享
- 摇摆于强类型与弱类型之间的对象
- 如何将Vssget task加到Nant中
- 对动网论坛作搜索引擎优化
- 关于分布式
- 腾讯面经zz
- 广义的模型
- 人性化编程
- C# Note : 1
- ASP中利用OWC控件实现图表功能详解