版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、最新Applet Xul (组件) (小程序) - 教育部科学技术司 Applet / Xul (组件) 小程序图形库 openGL ? JAVA库?工具: JBuilder / Eclipse1. java application应用:java 集成环境大局部都是java swing 写的,比方jbuilder,va,forte,jdeveloper,eclipse,wsad,.还有一些大型的数据库系统的用户界面也是,比方oracle ,db2。一些java的安装程序,中间件,比方:intallanywhere, websphere.基于java的商业产品,比方有名的报表系统:styleRe
2、port,JReport(这个是国人产的,值得一体,很不错的,JFreeReport.swing虽说慢了点,但也是可移植的。它的界面我觉得不美观,但是自从我看了forte以后我就不怎么想的那是不会用才会用得不美观,到了我看了eclipse以后我更不这么想了,很不错的界面效果呵!而且它的linux下的GTK版本跟window下的感觉完全不同,也有自己的风格。Window 版本的eclipse界面做得很精致,速度也快。最先进的xml格式图形界面程序开发工具xul大家知道netscape程序,一个仅次于ie得浏览器,也有很多人知道mozilla,netscape得开放源代码版本。但很多人只是使用mo
3、zilla,不知道mozilla另一个重要得功能程序开发。在netscape开放源代码后三年mozilla得1。0版还没有问世,很多人嘲笑他的超慢得开发速度,实际上,mozilla酝酿出了一个超酷得新产品,可以看作是软件开发工具开展得另一个里程碑。现在基于浏览器得三层开发结构非常流行,微软得.net得思路就是基于这个结构得。另外,不考虑效劳器结构,就是基于网页得javascript小程序也对人很有吸引力,这些产品得思路都是以html为用户界面,但开发人员常常苦恼于html太简陋。而mazilla得xul解决了这个问题。xul是对html得扩展,完全兼容于html,xul基于xml格式对html
4、进行了扩展,实现了完整、强大得图形用户界面设计功能。可以设计出复杂得图形界面程序。实际上mazilla整个就是由xul设计得。xul用css来控制界面风格、用DTD来替代字符串,方便的实现本地化,用javascript来对用户界面的操作作出反响,提供根本的逻辑编程,javascript通过对象文档接口DOM来动态控制用户界面。同时javascript通过调用mozilla提供的丰富的底层API来实现强大的功能。mozilla提供了功能强大的API可以进行文件操作、网络操作、图形操作等各种操作,并且这种API是完全跨平台的。最后,mozilla用RDF格式来存储独立于界面的数据。总结:xul由于
5、兼容html,提供了最强大的用户界面的定制,DTD提供了最方便的本地化。xul、javascript、RDF提供了显示、逻辑、数据的别离。mozilla的底层API提供了跨平台的强大编程能力。GTK 和 Qt?GTK 和 Qt 这两大 framework 相信读者也有听说过吧! Gnome 和 KDE 便是用它们写成的了!大局部运行于 X-Windows 的程序都是使用它们作 Framework 的,那么又能不能直接把现成的 GTK (或 Qt) 的程序搬到 Windows 或其它 Platform 下使用呢? 唔. 当然是有这些 Project 正在进行啦! 但使用起来没有 wxWindow
6、s 这类 Framework 方便。(当然了,它们本来便是设计成 Crossplatform GUI Framework!) GTK 暂时有两个方案把自己 port 到 Windows 和 BeOS 去。关于Windows 的那个方案其实便是把 GIMP port 到去 Windows 使用的了! GTK 名叫 GIMP Tool Kit,要 port GIMP 到 Windows,当然要把 GTK 都 port 过去吧! o 但笔者试过把自己写的小程序 port 到去 Windows 还不是经常成功,用 Cygnus 更是不方便了。 而且该方案暂时只是由 Tor Lillqvist 在空闲时
7、篇写 ( 网页上他说此方案是因为 Linux 不支持他用的 Scanner,所以才要 port 到去 Windows 上用 o ),所以不是十分完整便是必然的了。 GTK+ For Windows 的 :/user.sgic.fi/tml/gimp/win32/ 而 GTK+ For BeOS 更是只处于 Alpha 阶段。由 Shawn T. Amundson 和 James Mitchell 负责。笔者也没有试用过,所以不能为大家作介绍了。 至于 Qt 听说在 Crossplatform 的porting 方面是比拟好的。因为 Qt 本身除了在 Linux ( 或其它 UNIX) 上用外,
8、还 support Windows 95/98/ME/NT4/2000 。(怎么说 Qt 也是商业产品,确是与别不同。) 而且比拟起 Gtk,Qt 也有更多的 Development Tools。例如最知名的 KDeveloper,或是 Qt Designer。相比之下 Gtk 最好的便是 Glade 了,而 Glade 并没有与 Code Editor 整合 (GIDE 又的功能暂时只是非常简单) 和 Zinc 一样, Qt 也有其 Embedded 版本,更声称可以把那程序放在一个 800kb - 3MB 的 Rom 中执行,还有一个名为 Qt/PalmTop 的系统,看上去很美丽呢! Q
9、t 正如大家所知道是有 Free Edition 的,所以 Qt , Qt/Embedded 和 Qt/PalmTop 都是可以免费下载的,最近 Qt 除了免费外还使用了 GPL License,实在是一众 KDE 使用者所期待的消息。 但可惜的是除了 Qt For Linux 外 Qt For Windows 并不是免费的,要不然可能 Qt 会是最好的 Crossplatform GUI Framework 了吧! (是笔者错了吗? 如果你有方法免费用到 Qt For Windows 的话请来信,笔者必定会于下期告知大家,呵呵) 笔者个人比拟喜欢 GTK 而讨厌 Qt,但无可否认在 Cros
10、splatform 方面 Qt 是做的比拟好。 OpenGL简介OpenGL是近几年开展起来的一个性能卓越的三维图形标准,它是在SGI等多家世界闻名的计算机公司的倡导下,以SGI的GL三维图形库为根底制定的一个通用共享的开放式三维图形标准。目前,包括Microsoft、SGI、IBM、DEC、SUN、HP等大公司都采用了OpenGL做为三维图形标准,许多软件厂商也纷纷以OpenGL为根底开发出自己的产品,其中比拟著名的产品包括动画制作软件Soft Image和3D Studio MAX、仿真软件Open Inventor、VR软件World Tool Kit、CAM软件ProEngineer、
11、GIS软ARC/INFO等等。值得一提的是,随着Microsoft公司在Windows NT和最新的Windows 95中提供了OpenGL标准及OpenGL三维图形加速卡的推出,OpenGL将在微机中有广泛地应用,同时也为广阔用户提供了在微机上使用以前只能在高性能图形工作站上运行的各种软件的时机。OpenGL特点及功能OpenGL实际上是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以它为根底开发的应用程序可以十分方便地在各种平台间移植;OpenGL可以与Visual C+紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性;OpenGL使用简便,效率高。它具有七
12、大功能:建模OpenGL图形库除了提供根本的点、线、多边形的绘制函数外,还提供了复杂的三维物体球、锥、多面体、茶壶等以及复杂曲线和曲面例如Bezier、Nurbs等曲线或曲面绘制函数。变换OpenGL图形库的变换包括根本变换和投影变换。根本变换有平移、旋转、变比镜像四种变换,投影变换有平行投影又称正射投影和透视投影两种变换。其变换方法与机器人运动学中的坐标变换方法完全一致,有利于减少算法的运行时间,提高三维图形的显示速度。颜色模式设置OpenGL颜色模式有两种,即RGBA模式和颜色索引Color Index。光照和材质设置OpenGL光有辐射光Emitted Light、环境光Ambient
13、Light、漫反射光Diffuse Light和镜面光Specular Light。材质是用光反射率来表示。场景Scene中物体最终反映到人眼的颜色是光的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成的颜色。纹理映射Texture Mapping利用OpenGL纹理映射功能可以十分逼真地表达物体外表细节。位图显示和图象增强图象功能除了根本的拷贝和像素读写外,还提供融合Blending、反走样Antialiasing和雾fog的特殊图象效果处理。以上三条可是被仿真物更具真实感,增强图形显示的效果。双缓存动画Double Buffering双缓存即前台缓存和后台缓存,简而言之,后台缓存计算场景、生成
14、画面,前台缓存显示后台缓存已画好的画面。此外,利用OpenGL还能实现深度暗示Depth Cue、运动模糊Motion Blur等特殊效果。从而实现了消隐算法。关于opengl进行开发常用的开发包介绍1 cglib 只是對Opengl進行簡單的封裝接近于Opengl的SDK適用于初學者2 glxTreem 對OpengL進行了比cgLib更深層次的封裝使用更簡單3 glScene 目前封裝最完整內容最丰富的一個Opengl開發包支持聲音視頻等4 其它的 dotlib等 這些開發包在 playicq 都有下載EclipseEclipse 是替代IBM Visual Age for Java以下简
15、称IVJ的下一代IDE开发环境,但它未来的目标不仅仅是成为专门开发Java程序的IDE环境,根据Eclipse的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。目前,Eclipse已经开始提供C语言开发的功能插件。更难能可贵的是,Eclipse是一个开放源代码的工程,任何人都可以下载Eclipse的源代码,并且在此根底上开发自己的功能插件。也就是说未来只要有人需要,就会有建立在Eclipse之上的COBOL,Perl,Python等语言的开发插件出现。同时可以通过开发新的插件扩展现有插件的功能,比方在现有的Java开发环境中参加Tomcat效劳器插件。可以无限扩展,
16、而且有着统一的外观,操作和系统资源管理,这也正是Eclipse的潜力所在。下面将分别对Eclipse的各种特性作简单介绍,包括:文件存放,开发环境,编译与运行,版本管理,使用插件。 1 文件存放 大多IVJ的初学者都对找不到Java源代码感到非常不适应,因为IVJ把所有的源代码都存储到一个reponsitory库文件中,想要得到文本格式的源代码必须用Export功能从reponsitory中导出源代码。使用了reponsitory的IVJ对源代码的管理功能几乎到达极致,正是这一点使得许多程序员对IVJ钟爱有加。而Eclipse将源代码以文本方式保存,却实现了IVJ对源代码管理的几乎全部功能,并
17、且还增加了一些新的功能,能到达这一点,不能不惊叹于Eclipse开发者的高超技巧。 安装Eclipse之后,在安装路径的下一层路径中会有一个workspace文件夹。每当在Eclipse中新生成一个工程,缺省情况下都会在workspace中产生和工程同名的文件夹以存放该工程所用到的全部文件。你可以用Windows资源管理器直接访问或维护这些文件。 将已有的文件参加到一个工程中目前有三种方式:第一种是象在IVJ中的一样,用IDE的File菜单中的Import功能将文件导入到工程中。这也是推荐的方式。第二种是从Windows的资源管理器中直接拖动文件到工程中。第三种就是直接将文件拷贝到工程文件夹中
18、,然后在Eclipse的资源浏览窗口中选择工程或文件夹并执行从本地刷新功能Refresh from locate。需要说明的一点是,工程文件夹可以放在计算机的任何位置,并且可以在Eclipse中用新建工程的方法将工程路径指定到已经存在的工程文件夹,然后在Eclipse中刷新即可。但要注意的是,任何工程文件夹建立或指定,目前都只能在Eclipse中用新建工程的方法来实现,即使是在缺省存储工程文件夹的workspace路径下新建立一个文件夹,在Eclipse环境中也是无法将它变成一个工程,也就是说,这个文件夹对Eclipse是不可视的。 2 Eclipse开发环境 和IVJ一样,Eclipse开发
19、环境被称为Workbench,它主要由三个局部组成:视图Perspective,编辑窗口Editor和观察窗口View。在下面的介绍中,希望读者能知道Java视图,Java包浏览窗口,资源视图,资源浏览窗口等区别其实最主要的也就是要区别视图和窗口,以免在进一步的阅读中产生混淆。图二是它们之间的关系结构略图: 图二在图二中,可以看出Workbench包含多个视图,而每个视图又包含不同的窗口。由于每个编辑窗口有很大的共性,而且缺省情况它们都在同一区域中显示,因此我们只在每个视图中标出一个编辑窗口,以绿色表示。观察窗口那么各不相同,这里以红色表示。 下面首先介绍编辑窗口。所有文件的显示和编辑都包含在
20、编辑窗口里。缺省情况下翻开的多个文件是以标签TagTable方式在同一个窗口中排列,可以用拖动方式将这些文件排列成各种布局。方法是拖动某一个文件的标签tag到编辑窗口的边框,当光标有相应的变化时再释放。 当文件被参加到工程中后,在资源浏览或Java包浏览窗口双击文件,Eclipse会试图翻开这个文件:其中Eclipse内嵌的编辑器能缺省翻开一些文件,如*.java,*.txt,*.class等等。如果是其它类型的文件,Eclipse会调用操作系统相应的缺省编辑器翻开,如word文档,PDF文件等。同时Eclipse也可以象IVJ一样用指定的编辑器翻开相应的文件。例如在Eclipse工程中双击H
21、TML文件时,可能希望是用Notepad翻开,而不是用系统缺省的IE浏览器翻开。实现的方法是翻开菜单栏中的WorkBenchPreferences对话框,之后在对话框中选择WorkBenchFile Editors,然后添加文件类型,如*.html,再为其指定编辑器即可。 在编辑窗口,还值得注意的是,习惯了IVJ的程序员在编辑Java程序的时候,更愿意以方法为独立的编辑单位即在编辑窗口中只显示单个的方法,而不是程序全部的源代码,这种方式也确实是非常合理的开发方式,不仅代码的显示更加简捷,还能辅助程序员编出封装性更好的类。在Eclipse在工具栏上提供了一个切换按钮,可以在显示全部代码和只显示所
22、选单元这里的单元指的是单个方法、变量、导入的包等之间切换可参考下面的图三。建议没 有使用过IVJ的程序员也尝试一下在只显示所选单元状态下进行代码开发。 其次要介绍的是观察窗口,它配合编辑窗口并提供了多种的相关信息和浏览方式。常用的观察窗口有资源浏览窗口Navigator,Java包浏览窗口(Packages),控制台Console,任务栏Task等等。 浏览窗口和Java浏览窗口是观察窗口核心局部。前者和Windows的浏览器差不多,能浏览工程文件夹中的所有文件,后者用来浏览工程中的Java包,包中的类,类中的变量和方法等信息。在Java浏览窗口中可以通过用鼠标右键的菜单中的Open Type
23、 Hierarchy翻开层次浏览窗口Hierarchy,这个窗口非常实用,它能非常清晰的查看类的层次结构。类中的编译出错信息可以在任务窗口中查到,同时它也可以成为名符其实的任务窗口:向其中添加新的任务描述信息,来跟踪工程的进度。控制台那么主要用来显示程序的输出信息。在调试程序的时候,会有更丰富的观察窗口来帮助程序员进行调试,如变量值观察窗口,断点窗口等等。 观察窗口是任何IDE开发环境的核心,用好观察窗口是也就是用好IDE开发环境。Eclipse提供了丰富的观察窗口,能真正用好这些窗口恐怕要得经过一段时间的磨练。 最后介绍视图。一个视图包括一个或多个编辑窗口和观察窗口。在开发环境的最左侧的快捷
24、栏中的上局部显示的就是当前所翻开的视图图标。视图是Eclipse的最灵活的局部,可以自定义每个视图中包含的观察窗口种类,也可以自定义一个新视图。这些功能都被包括在Perspective 菜单中。在Eclipse的Java开发环境中提供了几种缺省视图,如资源视图Resource Perspective,它也是第一次启动Eclipse时的缺省视图,Java视图Java Perspective,调试视图Debug Perspective,团队视图(Team Perspective)等等。每一种视图都对应不同种类的观察窗口。可以从菜单栏中的PerspectiveShow View看到该视图对应的观察窗
25、口。当然,每个视图的观察窗口都是可配置的,可以在菜单栏中的PerspectiveCustomize进行配置。多样化的视图不但可以帮助程序员以不同角度观察代码,也可以满足不同的编程习惯。 3 编译与运行 在IVJ中调试功能非常强大,多种跟踪方式,断点设置,变量值观察窗口等等。这些在Eclipse中都也有提供。在本文下面介绍插件的时候,会结合例子更加详细的介绍如何使用配置工程环境,如何运行和调试程序。 在Java视图中,工具栏中有两个按钮,分别用来进行调试和运行。并且可能由于安装的插件不同Eclipse会存在多种运行/调试程序的方式,为了确定当前工程用那一种方式运行,需要在工程的属性选项中的设置L
26、auncherRun/Debug选项。通常我们需要用的是JavaApplicantion方式。在这种方式下,如果当前位置是包含main()方法的Java程序,点击调试/运行按钮就会立即开始执行调试/运行功能。如果当前位置是在包或工程上,Eclipse会搜索出当前位置所包含的所有可执行程序,然后由程序员自己选择运行那一个。 在目前的Eclipse的Release和Stable版本中缺省安装了插件开发环境Plug-in Development Environment,即PDE,它本身也是一个插件,此时系统除了Java Applicantion 运行方式,可能还有另外两种方式:Run-time Wo
27、rkBench和Run-time WorkBench with Tracing,当用PDE开发插件的时候会用到这两种运行方式,在下面我们也有提到。 4 版本管理 可以把Eclipse的版本管理分为个人或称为本地和团队两种。 Eclipse提供了强大的个人版本管理机制,每一次被保存的更改都可以得到恢复。而且可以精确到每一个方法的版本恢复。操作也十分方便,在任何一个能看到所要操作文件的观察窗口中,例如资源浏览窗口,选中该文件,点击右鼠标键,选择Compare with或Replace with,如果是恢复已经被删除的方法那么可以选择Add from local history,之后相应的本地历史记
28、录就会显示出来,按照你的需求找到相应的版本就可以了。强大的个人版本管理功能为程序员提供了更多的信心:只管编下去,任何不小心的错误都可以恢复,在Eclipse下开发,是有懊悔药的! Eclipse缺省为版本管理工具CVS提供了接口,可以非常方便的连接到CVS效劳器上。通过CVS版本管理,Eclipse为团队开发提供良好的环境。要连接CVS效劳器需要先翻开团队视图Team Perspective,然后在Reponsitories观察窗口中点击鼠标右键并选择新建New,在翻开的对话框中可以填入要连接的CVS库所需要的信息,如CVS效劳器类型,目前Eclipse支持三种方式:pserver、extss
29、h和ext,还要填入用户名,主机名,密码,reponsitory地址等信息。 在Eclipse中使用CVS需要注意的是一些术语和功能的变化,CVS中的Branch这里被称为Stream,取消了CVS中check out、import和commit等功能,统统用鼠标右键菜单中的Team-Synchronized with Stream来替代。这些功能都通过图形界面完成,在每次操作中都会有当前文件和以前各个版本的比拟窗口,操作非常直观,易于掌握,因此这里也就不再做进一步介绍了。 5 使用插件 使用插件可以丰富Eclipse的功能。下面将介绍如何应用插件来嵌入Tomcat效劳器。这个插件并不是Ecl
30、ipse工程组开发的,而是一家叫sysdeo的公司开发,非常小巧,只有27.8K。你可以到 :/ sysdeo /eclipse/tomcatPlugin.html去免费下载。另外,这个插件只支持Tomat4.0以上的版本,可以在 得到Tomcat的最新版本。 要安装插件只需将下载的zip文件按原路径解压到你的Eclipse的安装路径plugins下面,然后重新启动Eclipse。启动后在菜单栏上选择PerspectiveCustomize,在翻开的对话框中选中OtherTomcat。之后马上会发现Eclipse有了两处变化:菜单栏中多了一个Tomcat选项,工具栏中多了两
31、个按钮,上面是大家可能非常熟悉的Tomcat小猫,如下列图三。除此之外,在菜单栏中选择:WorkbenchPreferences,翻开对话框后会发现这也多了一个Tomcat选项,在这里要求指定你的Tomcat安装根路径。之后还要检查一下在Preferences对话框中的JavaInstalled JRE所指定的JRE和启动Tomcat的JRE是否为同一个JRE,如果不是,可能会导致Tomat不能正常启动。如果以上检查没有问题,就可以用工具栏上的小猫直接起动Tomcat了。要注意的是,启动过程很慢,要耐心等到以下信息出现: Starting service Tomcat-StandaloneAp
32、ache Tomcat/Starting service Tomcat-ApacheApache Tomcat/之后就可以在外部浏览器如IE中输入 :/localhost:8080来测试Tomcat是否正常。 图三如果启动正常,可以进一步尝试在Eclipse中调试Servlet或JSP程序。下面我们将用Tomcat自带的Servlet例程HelloWorldExample.java来示范一下如何在Eclipse中调试Sevlet程序。 首先要在Java视图中新建一个Java工程,为了方便,可以直接将工程路径指定到HelloWorldExmaple程序所在路径,如图四: 图四之后按Next,进入Java Settings对话框,选择Libraries标签,并用Add External JARs按钮来指定Servlet.jar包的位置。这里直接用了Tomcat中的Servlet.jar包。如图五: 图五 最后,点击Finish完成工程的生成。在新生成工程中的default package可以找到HelloWorldExample.java,双击翻开文件,并可尝试给
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人行道铺装劳务分包合同范本
- 个人述职报告集锦15篇
- 冬至活动总结15篇
- 2024年中国便用笺纸市场调查研究报告
- 私人车库买卖合同
- 2024年柴油微乳化剂项目可行性研究报告
- 混凝土泵车租赁合同
- 工程施工合同交底记录
- 名人传读书笔记(15篇)
- 2024年少先队爵士鼓项目可行性研究报告
- 在建工程重大安全隐患局部停工整改令(格式)
- 《落花生》-完整版课件
- 2021年贵安新区产业发展控股集团有限公司招聘笔试试题及答案解析
- 安全文化培训 (注册安工再培训)课件
- 色粉-MSDS物质安全技术资料
- 骨科学研究生复试真题汇总版
- 石油化工钢结构工程施工及验收规范
- 辽海版六年级音乐上册第8单元《3. 演唱 姐妹们上场院》教学设计
- 形势任务教育宣讲材料第一讲——讲上情
- 物业安全员考核实施细则
- 中国地质大学(武汉)教育发展基金会筹备成立情况报告
评论
0/150
提交评论