Eclipse Theia:Eclipse桌面的继承者?

2022 年 4 月 28 日 CSDN


整理 | 章雨铭        责编 | 屠敏
出品 | CSDN(ID:CSDNnews)

Eclipse是一个基于Java的、开放源码的、可扩展的应用开发平台,它为编程人员提供了一流的Java集成开发环境(Integrated Development Environment,IDE)。转眼, Eclipse 已经有20多个年头了。然而,互联网的发展日新月异,下一代桌面产品和应用程序现在正在使用Web技术构建。在许多情况下,需要支持具有相同功能的桌面和 Web 部署。许多Eclipse平台采用者找到了新的平台——Theia,来更好地迁移其现有的工具、IDE和应用程序。那么,Eclipse Theia会成为Eclipse的下一代吗?

 

Eclipse Theia是什么?


Eclipse Theia 是Eclipse 基金会打造的云端及桌面IDE框架,是一个灵活的平台,用于开发用于任何目的的工具。通过其扩展和插件API,它与JSON Schema、EMF、JSON Forms、EMF.cloud、Sprotty和GSLP等技术很好地集成在一起。

 

Eclipse Theia vs Eclipse桌面

Eclipse Theia会成为Eclipse桌面的下一代吗?这两者有什么相似之处又各有哪些优势吗?关于这个问题EclipseSource的领导人之一Jonas Helming在近期的一篇博客中做出了解答。

话不多说,先来看一下对比的最终结果,进而我们在下文中一一比对。

工作台

Eclipse桌面提供了的工作台由高级窗口布局组成,包括视图、编辑器、菜单、工具栏和透视。此外,它可以管理首选项、全局选择和其他许多功能。

Eclipse Theia支持几乎所有这些功能,唯一一点是不支持透视功能。但是,由于Theia当前已经存储并恢复了窗口布局,如果需要的话,添加此布局也很简单。Eclipse Theia可能还缺少一些其他东西,但是在实际操作中并不会有很大的影响。

和Eclipse桌面相比,Theia中有的功能更好,例如,Theia工作台是完全可设计且可更改主题的。

总的来说,Eclipse桌面具有更多功能,而Theia具有更好的样式选项和更简单的工作台API,在这一方面,两者似乎不相上下。

 


模块性

Eclipse出色的模块化是其取得成功的重要因素。3.0版本中引入OSGi改进了Eclipse的模块化,而Eclipse Theia也延续了Eclipse的这一优点,它甚至还支持两个模块:Theia扩展和VS Code扩展。这一回合,Eclipse桌面和Eclipse Theia也打成了平手。

灵活性和适应性

由于其扩展API,Eclipse桌面很灵活且具有适应性。然而Theia在这方面似乎更胜一筹,因为它在所有领域(包括核心)中都采用依赖注入,用户可以轻松地适应和替换几乎所有东西。Eclipse Theia会赢得更多喜欢自定义的用户的喜爱。

用户界面框架支持

尽管SWT已经有些年头了,但是它仍然是一项伟大的技术。利用JFace和EMF Forms等技术,用户仍然可以非常高效地开发桌面UI。然而,现在绝大多数的UI都是基于Web的,因此,在网络UI框架方面的技术发展已经超过了桌面。这使SWT在早期获得成功的原生外观黯然失色了。 

而这一局Eclipse Theia显然成为了赢家,使用Theia,用户可以从浏览器UI框架的巨大生态系统中挑选,而且,还可以灵活的改变基于Web的UI的主题和风格。 

语言支持

在语言支持方面,可以通过包含相应的模块非常轻松地使用编程语言是Eclipse桌面和Eclipse Theia的一大优点。

Eclipse桌面对流行的编程语言(如 Java、C/C++ 和 Python)具有世界一流的支持。

Eclipse Theia支持语言服务器协议 (LSP), 用户能够使用任何语言服务器,甚至是 Eclipse 生态系统之外的语言服务器。 

LSP能够让语言支持独立于任何工具构建。比如,用户可以在Theia、VS Code甚至Eclipse桌面中使用相同的语言服务器。此外,语言服务器可以用任何语言开发,通常是用它们支持的语言。例如,C/C++社区可以在 C 中实现语言支持,而不必担心 UI 技术。

总的来说,在这方面Eclipse桌面和Theia难分高下。对于在Eclipse桌面中具有本机支持的语言,特别是Java、C / C++或Python,Eclipse桌面可能仍然会获胜。但是,在支持语言的数量上,LSP更胜一筹。然而,与Eclipse桌面相比,Theia能更好地支持LSP。

 

图像

在这方面,Theia更加出色。借助GEF和GMF运行时,Eclipse 桌面成为图表编辑器的流行平台。

但是有了Eclipse GLSP(基于 Eclipse Sprotty),生态系统为基于现代Web 堆栈的图表编辑器提供了一个世界领先的框架。

GLSP(图形语言服务器平台)的工作方式与 LSP 类似,但适用于图表。因此,GLSP不仅限于Theia,而且可以在不同的工具平台和Web应用程序中使用。

另外,GLSP为Theia提供了一个专用的集成,可以很容易地将GLSP编辑器与Theia的许多原生功能连接起来。

以数据为中心的工具和建模

Eclipse桌面可以满足建模工具的任何要求,但是和图表一样,这个领域并不是早期基于Web工具的重点。然而,随着EMF.cloud和JSON Forms的出现,一个以Theia为中心的基于Web的数据中心工具的生态系统也发展了起来。EMF.cloud提供了一些新的组件,但它也允许你重新使用EMF生态系统中的一些现有技术,包括EMF本身。

虽然Eclipse桌面在这个领域仍然提供了更多的功能,但是这种情况可能不会维持太久,Theia可能在不久后超越Eclipse桌面。

可用扩展

Eclipse tool platform和所有的Eclipse IDE都可以用插件进行扩展。另外,Eclipse Marketplace提供了对大量工具功能的访问。

Eclipse Theia支持VS Code扩展,Eclipse基金会为这些扩展建立了一个名为Open VSX的Open Marketplace。

这两种Marketplace承载的扩展数量几乎完全相同,所以这一回合是明显的平局。

在网络/浏览器/云中运行

这个方面比拼的赢家无容置疑是Theia。

因为Eclipse Tool Platform是为桌面而不是浏览器构建的。当然,用户也可以使用远程应用程序平台 (RAP) 将 RCP 应用程序迁移到浏览器,但是还是存在一些限制,所以还不足以满足用户的需求。

而Eclipse Theia是基于Web堆栈设计的,用户可以用它来构建基于桌面的工具使用Electron)或在浏览器中运行它。

生态系统和维

因为这两个项目都是Eclipse开源项目,所以没有必要的比较开放治理、供应商中立性、许可证或透明流程。所以这一方面只比较其生态系统的多样性和稳定性。

在过去的20年,Eclipse桌面显然已经取得了辉煌的成绩,而且项目也变得更加多样化。

现在的Eclipse Theia比同龄的Eclipse 桌面更加多样化,所以在未来很有可能超过Eclipse 桌面,毕竟基于Web平台的大转变才刚刚开始。

另外值得注意的是,与Eclipse桌面相比,Theia的代码库要小得多。主要原因是Theia重用了许多标准库和技术(如HTML、CSS或LSP),这减少了平台的维护负担。

如果考虑未来的发展,基于Web的工具成为大趋势,那么Eclipse Theia有可能在未来几年获得更多的用户和贡献者。但是现在看来,这一方面依然可以算是平局。

开箱即用

Eclipse Tool Platform本身并不是一个可下载的IDE产品,但可以用来构建工具。然而,Eclipse生态系统从一开始就提供了基于该平台的优秀工具和IDE,最重要的是Java开发工具,但也有许多其他工具,例如用于C/C++、Python或建模。 

Theia专注于成为一个优秀的平台,用户可以通过使用采用者提供的基于Theia的工具(如Eclipse Che、Arm Mbed Studio或新的Arduino IDE)来使用Theia。去年Theia Blueprint发布提供了一个基于Theia的模板工具,它可以作为一个现成的IDE使用,但是还并不成熟。所以这次算Eclipse扳回一局。


总结


虽然在各方面的比较中,很多方面看似都难分高下,但实际上,Theia在很多方面都已经追赶上Eclipse Tool Platform,结合未来发展的趋势,可以说Eclipse Theia是Eclipse Tool Platform的下一代。但这并不意味着,Eclipse IDE、Eclipse Tool Platform就会被弃用。

你认为Eclipse Theia是Eclipse Tool Platform的下一代吗?这两个中哪一个更深得你心?欢迎留言告诉我们。

参考资料:

  • https://eclipse-foundation.blog/2022/04/19/eclipse-theia-is-the-next-generation-of-eclipse/

  • https://eclipsesource.com/technology/eclipse-theia/

END

   
   
     
— 推荐阅读 —
    
    
      
☞腾讯音乐回应网易云音乐诉其不正当竞争;“月薪三千能买什么样的手机”上热搜 投票第一竟是苹果?《计算机世界》停工停业|极客头条
☞「语雀」2000万个代码块的背后?
☞Safari 重返 Windows 系统?

点这里↓↓↓记得关注标星哦~ 

一键三连 「分享」「点赞」「在看」

成就一亿技术人

登录查看更多
0

相关内容

海上信息战中的态势感知研究
专知会员服务
136+阅读 · 2022年5月18日
【干货书】Python参考手册,210页pdf
专知会员服务
63+阅读 · 2021年4月30日
【干货书】Linux命令行与shell脚本编程大全,第3版818页pdf
专知会员服务
61+阅读 · 2020年12月30日
【2020新书】Ruby 3 编程: 从小白到专家,598页pdf
专知会员服务
29+阅读 · 2020年12月17日
【干货书】'Mastering Go 第二版中文版',143页pdf
专知会员服务
47+阅读 · 2020年11月1日
【实用书】Python编程,140页pdf
专知会员服务
41+阅读 · 2020年8月20日
【2020新书】高级Python编程,620页pdf
专知会员服务
235+阅读 · 2020年7月31日
Java 18 新功能:默认字符集为 UTF-8
CSDN
0+阅读 · 2022年4月18日
Windows 11频繁更新,网友:越更越难用!
10 个用于 Linux 的开源轻量级 Web 浏览器
CSDN
0+阅读 · 2022年2月23日
尤雨溪:Vue 3 将成为新的默认版本
InfoQ
0+阅读 · 2022年1月25日
软件工程师年满 40 岁,下一步怎么走?
InfoQ
0+阅读 · 2021年11月29日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2008年12月31日
Arxiv
32+阅读 · 2021年3月8日
VIP会员
相关VIP内容
海上信息战中的态势感知研究
专知会员服务
136+阅读 · 2022年5月18日
【干货书】Python参考手册,210页pdf
专知会员服务
63+阅读 · 2021年4月30日
【干货书】Linux命令行与shell脚本编程大全,第3版818页pdf
专知会员服务
61+阅读 · 2020年12月30日
【2020新书】Ruby 3 编程: 从小白到专家,598页pdf
专知会员服务
29+阅读 · 2020年12月17日
【干货书】'Mastering Go 第二版中文版',143页pdf
专知会员服务
47+阅读 · 2020年11月1日
【实用书】Python编程,140页pdf
专知会员服务
41+阅读 · 2020年8月20日
【2020新书】高级Python编程,620页pdf
专知会员服务
235+阅读 · 2020年7月31日
相关基金
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2008年12月31日
Top
微信扫码咨询专知VIP会员