了解下JAVA的一种基于EMF模子的在GEF中判别创立毗连线无效性的办法
但是对于JAVA技术类的学习,我觉得大课堂反而会影响自身独立思考的过程,因为上课的时候,老师讲课的速度很快为了不遗漏要点,通常会仔细的听,简介:分离今朝对照受接待的EMF(EclipseModelingFramework)和GEF(GraphicalEditingFramework)手艺,提出了一种在图形化开辟中创立毗连线时广泛合用的考证办法.最初给出了一个创立毗连线时静态Schema考证的例子,并依据Schema的界说列出创立毗连线的真值表。针对该真值表的每项举行考证,包管不切合Schema界说划定规矩的模子对应的图形之间不克不及创立毗连线,下降了Schema考证和修正的庞大性。
一种基于EMF模子的在GEF中判别创立毗连线无效性的办法
在Java中举行图形化工具的开辟传统的办法是间接利用AWT大概Swing,这类办法在处置图形化开发的细节上(图形的创立/删除、缩小/减少、拖放和打消等)一样平常对照庞大;图形化计划和背景模子的对应干系都必要开辟者本人界说,没有一致的尺度,如许很难举行保护;AWT大概Swing开辟的图形界面跟Windows界面的作风纷歧致,让一向利用Windows的用户很难承受。EMF和GEF手艺作为Eclipse工程的一部分,分离用来举行模子的代码天生和图形化工具的开辟。个中GEF简化了对图形的处置,开发职员不用把次要精神放在图形的处置上;供应了一个基于MVC(Model-View-Controller)布局的图形化开辟框架,无效地保持了图形和模子之间的对应干系;基于SWT,图形的作风跟Windows的一样。因而,接纳GEF举行图形化开辟能够进步开辟效力的同时包管了可扩大性。
EMF和GEF先容
EMF
EMF是一套Java的框架,能够用于创立基于布局化模子的工具和其他的使用程序。关于引进的面向对象的模子,EMF能够匡助你疾速地将你的模子转换为高效、准确和简单定制的Java代码。EMF利用的模子界说的尺度格局是XMI(XMLMetadataInterchange),有四种体例能够将你本人创立的模子转换为XMI格局:
利用文本或XML编纂器间接创立XMI文档;
将利用RationalRose等建模工具创立的模子导出,天生XMI文档;
利用带有模子特性正文的Java接口;
利用XMLSchema来形貌模子的格局。
GEF
GEF能够便利开辟者从一个现成的模子来创立一个功效丰厚的图形化编纂器,供应了一个基础框架来构建多种使用,好比说:形态图、GUI编纂器、类图编纂器和形态机等。GEF包括了两个插件:org.eclipse.draw2d和org.eclipse.gef。个中org.eclipse.draw2d为显现的图形供应了结构和形貌的工具集;org.eclipse.gef利用了MVC的架构,供应了把持器(好比:EditPart)来操纵各个模子和视图。
GEF事情道理
GEF接纳的是MVC架构,其架构图如所示。GEF一样平常和EMF分离利用,EMF卖力天生模子。MVC的各个部分都是树状布局的,而且是逐一对应干系。个中EditPart充任把持器的脚色,内里可使用各种EditPolicy,而EditPolicy的详细完成偶然必要挪用Command工具集类;而经由过程draw2d绘制的图形充任视图的脚色。详细的事情流程为:
EditPartFactory会针对每一个模子创立一个对应的EditPart;
在每一个EditPart外部会创立与模子对应的视图,即显现的图形;
当模子的属性改动后,会关照EditPart它的属性变更情形;
EditPart会依据模子属性的变更更新视图的显现;
<p>
手机用到的是用j2me所编出来的小程序。 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 是一种使用者不需花费很多时间学习的语言 你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。 任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言 是一种使用者不需花费很多时间学习的语言 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展 是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言 任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
页:
[1]