仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 546|回复: 11
打印 上一主题 下一主题

[学习教程] 了解下JAVA的[Eclipse]GEF进门系列(8、利用EMF机关GEF的模子)

[复制链接]
金色的骷髅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:11:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
C#是盗用了Java的源代码,仿照开发的,原因是Java是开源的啊,盗了也白盗,还有一点,开发C#语言的团队是就是开发Java语言的团队,是微软重金挖过去的啊
GEF的计划没有对模子部分做任何限定,也就是说,我们能够恣意机关本人的模子,独一必要包管的就是模子具有某种动静机制,以便在产生变更时可以关照GEF(经由过程EditPart)。在之前的几个例子里,我们都是使用java.beans包中的PropertyChangeSupport和PropertyChangeListener来完成动静机制的,这里将先容一下怎样让GEF使用EMF机关的模型.
EMF利用本人界说的Ecore作为元模子,在这个元模子里界说了EPackage、EClassifier、EFeature等等观点,我们要界说的模子都是利用这些观点来界说的。同时由于ecore中的一切观点都能够用自己的观点轮回界说,以是ecore又是本人的元模子,也就是元元模子。关于ecore的具体观点,请参考EMF网站上的有关材料。
使用EMF为我们天生模子代码能够有多种体例,比方经由过程XMLSchema、带有正文的Java接口、Rose的mdl文件和.ecore文件等,EMF的代码天生器必要一个扩大名为.genmodel的文件供应信息,这个文件能够经由过程下面说的几种体例天生,我保举利用Omondo公司的EclipseUML插件来机关.ecore文件,该插件的收费版本能够从这里下载。(大概必要利用外洋代办署理才干会见omondo网站)

示例模子
为了勤俭篇幅和工夫,我就不具体形貌机关EMF项目标步骤了,这里次要把利用EMF与非EMF模子的区分做一个申明。是例子中利用的模子,个中Dimension和Point是两个内部java范例,因为EMF其实不懂得它们,以是界说为datatype范例。
利用两个Plugins
为了让模子与编纂器更好的分别,可让EMF模子独自位于一个Plugin中(名为SubjectModel),而让编纂器Plugin(SubjectEditor)依附于它。如许做的另外一个优点是,当修正模子后,假如你乐意,能够很简单的删除之前天生的代码,然后全体从头天生。
EditPart中的修正
在之前我们的EditPart是完成java.beans.PropertyChangeListener接口的,当模子改用EMF完成后,EditPart应改成完成org.eclipse.emf.common.notify.Adapter接口,由于EMF的每一个模子对象都是Notifier,它保护了一个Adapter列表,能够把Adapter作为监听器到场到模子的这个列表中。
完成Adapter接口时必要完成getTarget()和setTarget()办法,target代表收回动静的那个模子对象。我的完成体例是在EditPart里保护一个Notifier范例的target变量,这两个方法分离前往和设置该变量便可。
还要完成isAdapterForType()办法,该办法前往一个布尔值,暗示这个Adapter是不是应响应指定范例的动静,我的完成一概为"returntype.equals(getModel().getClass());"。
<p>
轮性能微软曾做过一个例子,就是同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。呵呵,这说明了什么,.net的全方位比java好。但是有的人说.net不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net,只是推出了跨语言的.net,
小女巫 该用户已被删除
12#
发表于 2015-3-22 04:08:59 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
再现理想 该用户已被删除
11#
发表于 2015-3-15 20:30:22 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
活着的死人 该用户已被删除
10#
发表于 2015-3-8 04:02:34 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
只想知道 该用户已被删除
9#
发表于 2015-2-25 20:52:47 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
山那边是海 该用户已被删除
8#
发表于 2015-2-8 16:39:02 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
若天明 该用户已被删除
7#
发表于 2015-2-6 15:49:03 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
因胸联盟 该用户已被删除
6#
发表于 2015-2-4 21:55:40 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
精灵巫婆 该用户已被删除
5#
发表于 2015-2-2 14:53:54 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
不帅 该用户已被删除
地板
发表于 2015-1-25 18:11:21 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
蒙在股里 该用户已被删除
板凳
发表于 2015-1-22 05:39:41 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
admin 该用户已被删除
沙发
发表于 2015-1-20 16:22:09 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 03:57

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表