什么是学习Eclipse RCP的最佳方式?它是否只有我感觉到了不同?

3

我习惯于结构化编程(例如:C)、面向对象编程(例如:Java)、脚本编程(例如:Javascript)、Web开发(例如:HTML、JSP、Servlets、CSS)等。

现在,当我开始学习Eclipse RCP插件开发时,整个编程过程对我来说感觉很奇怪。Eclipse RCP开发的方式与我之前提到的其他编程语言非常不同,老实说我并不太喜欢这种感觉。

我是唯一有这种感觉的人吗?

你还有什么建议可以让我更好地适应Eclipse RCP吗?(如果可能的话)。

P.S.:我已经看过this线程了,关于教程的问题不用再提供了,只是想知道其他人是否像我一样有类似的开发背景!


我被委派协助开发一个RCP应用程序,当时我没有Java或Eclipse经验。我已经花了大约六周的时间以3/4的工作时间进行开发。问题是:任何人如何学习它?我有一本书(可能是错误的),我做了在线教程,虽然它开始变得清晰,但我还是不断地搜索如何做X或Y,或者向别人询问,并得到回复像 "右键单击Z,选择A,然后转到B选项卡并输入“foo”... 修改MANIFEST.MF...添加到classpath中,添加到buildpath中..." 我不知道自己做了什么。人们是如何学习这个的呢? - garyp
2个回答

7

这可能感觉不同,因为它严重基于OSGI

这涉及将您的应用程序拆分成组件,这些组件通常应具有一组职责,可以通过一组接口和类依赖项与应用程序的其余部分隔离开来。

仅通过手动识别这些依赖关系,对于设计良好高度内聚但松散耦合的应用程序而言可能相当简单,但对于您不熟悉的交错源代码而言则可能是一场噩梦。

因此,构建RCP应用程序涉及尊重whiteboard pattern,该模式是构建OSGi服务概念的基础,这可能与传统的OO开发非常不同。


1

构建RCP应用有两种主要的方法:
1.) 仅使用RCP平台特性——SWT/startup exe/自动更新。实际应用程序的业务功能将被隔离出来,尽可能远离RCP约定和库。
2.) 应用程序完全沉浸在RCP中。尽量重复使用RCP API。

我尝试了选项1。在这种情况下,体验与Java开发非常相似。您可能想尝试此选项。其优点是-
-- SWT很好地集成到RCP中。您不需要为让它工作而费力。我会推荐SWT而不是Swing,因为对于普通程序员来说,创建响应灵敏且本地感觉的SWT应用程序非常容易,而要创建像样的Swing应用程序则需要一个熟练的Swing专家
-- 对于客户端应用程序,自动更新的能力非常有用。Eclipse自动提供此功能。

RCP你仍需要学习的内容包括:
-- Eclipse类加载器的工作原理。这是为了确保您可以以正确的方式从jar文件中显式加载资源[注意:这并不简单]
-- 您需要将JVM与应用程序打包在一起。并使用相对命名约定在启动时调用JVM。


@jacob.arun 什么是学习“Eclipse类加载器如何工作”的最佳方法? :) - Samuel Lampa

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接