10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

基于 Web 的 IDE 会成为主流?

  • 2009-02-21
  • 本文字数:2086 字

    阅读完需:约 7 分钟

上周 Mozilla 发布了 Bespin ,这是一个基于 web 的编写代码的框架,而就在几天以后,Boris Bokowski 和 Simon Kaegi 使用 Eclipse 无显示插件实现了一个基于Eclipse 的Bespin 服务器。伴随着EclipseCon 上基于web 的Eclipse 工作台的演示,以及像 Heroku 这种既是基于 web 的 IDE 又是 RoR 应用托管环境的出现,似乎基于 web 的 IDE 很快就会成为主流了。

关于 Bespin ,Mozilla 的目标是能够推出一种开放的、可扩展的、基于 web 的用来编写代码的框架,能够提高开发者的开发效率,带来更加炫目的用户体验,并促进开放标准的广泛使用:

在与成百上千的开发者讨论的基础上,以及根据我们自己对于开发开放性网络的经验,我们得出了一整套提议的特性,以及一些优先级较高的目标:

  • 方便使用——编辑器的用户体验不能是咄咄逼人的,而应该带来简单直接的代码感受。
  • 实时协作——应该能很容易地与同事实时分享编码过程,并和一个甚至多个伙伴协作编码。
  • 集成命令行——像 vi 和 Emacs 这样的工具已经证明了编辑器中集成命令行的威力;Bespin 也需要一个命令行。
  • 可扩展并自托管——Bespin 的接口和功能应该高度可扩展,并且可以让用户很容易地通过 Ubiquity ——像命令或者插件 API 进行访问。
  • 速度极快——如果编辑器不能保证运行流畅,编辑大尺寸文件仍有很好的反应速度,那它只是个玩具。
  • 随处可访问——在任何地方,使用任何设备,通过任何现代标准兼容的浏览器,代码编辑器都应该运行自如。

Bespin 的目前版本是 0.1,它还是个最初的原型,包含对一些基本编辑特性的支持,比如语法高亮、大文件处理、撤销 / 重做、浏览器中预览文件以及导入导出工程等等。

如果想要得到更多 Bespin 的信息,你可以试试这个 demo ,或者查看源代码

就在 Bespin 发布的几天以后,Boris Bokowski 和 Simon Kaegi 使用 Eclipse 组件技术实现了一个基于 Eclipse 的 Bespin 服务器

我们看到了 Bespin,问自己,如果 Eclipse 也能在这个领域有所作为岂不更棒?如果我们能使用已经存在的 Eclipse 插件实现一个 Bespin 服务器岂不更酷?

然后,就在两天的开发完成后,基于 Eclipse 的 Bespin 服务器就诞生了!

Simon Kaegi 和我把自己锁在了一个屋子里,就这样开发出来了。现在,我们宣布开发结束,并把代码作为 e4 项目的一部分分享给任何感兴趣的人们。如果你想试试,请阅读这个 wiki 页

Eclipse IDE 你是知道的,是个基于 OSGi 的应用程序,完全由组件构成(也叫做插件或者 bundle)。这些组件中的大部分可以无显示地(headless)在服务器上运行,比如底层的资源模型、增量 Java 编译器等等。使用无显示组件,可以很容易地实现 Bespin 客户端 - 服务器 API。就跟 Mozilla 的 Bespin 服务器一样,我们的服务器支持文件和文件夹的浏览,以及编辑文件。除了这些,我们还实现了显示编译错误和警告,并能使用匿名 CVS 从 CVS 服务器上检出项目。

这个项目是 e4 社区项目中正在进行的一个工作,主要是为了构建下一代的Eclipse 平台,并提供一份实验性的Bespin客户端- 服务器API 的实现。

类似的项目还有 Heroku ,它是一个基于 web 的 IDE,并为 RoR 应用提供托管环境,它有如下特性

  • 即时部署
  • 在线编辑
  • 支持 Git
  • 容易协作
  • 完整支持堆栈
  • 弹性性能
  • Rails 控制台
  • 命令行协作
  • 其它

看来 Heroku 给 Eclipse 提交者 Elias Volanakis 留下了很深印象,他很想知道 Java 领域中是否有类似的东西

既然应用程序不得不运行在网络上,而且源码就是最后执行的代码(Ruby 是解释性的),那为什么不把 IDE 也放到网上呢?拥有了这些工具,在线的代码和运行时环境会让一些事情变得更加容易:

  • 立刻开始工作:可以从任何地点即时访问到源代码。不需要搭建 IDE。不需要搭建本地的 RoR 环境。不需要检出什么代码。你的数据就在那呢。
  • 即时协作:创建一个开发者帐号。把登录页面的链接发给开发人员。马上开始协作。(我希望它以后能支持协作编辑)。
  • 应用部署非常简单。不再需要寻找并配置一个合适的服务器。
  • “托管一切”会带来一种“源码和托管”的混合物。想象一下,你可以找到一个很棒的 web 应用,只需要点击一下“部署并运行在我的帐户上”,就可以对它进行测试了。

这看起来对 Ruby 尤其合适,我正打算着测试一下

那么,它如何应用于 Java 的 web 应用呢?

这个领域中另外一个有趣的项目是 codepad,它是个在线编译器 / 解释器,也是个简单的协作工具

codepad.org 是个在线编译器 / 解释器,也是个简单的协作工具。它是可以为你执行代码的 pastebin 。你粘贴一段代码,codepad 运行它,然后返回给你一个简短的你可以用来分享的 URL。你可以把这个 URL 贴在聊天工具或者邮件中,以求获得帮助或者给别人演示。或者仅仅是因为你没有方便的解释器,而需要执行一下你的代码。它在许多手机上运行得也很好。

还有许多其他的具有不同成熟度和特性的基于 Web 的 IDE:

看到这么多崭新的项目,你怎么想?我们会很快看到基于 web 的 IDE 成为标准吗?

查看英文原文: Web-based IDEs to become mainstream

2009-02-21 06:336318
用户头像

发布了 127 篇内容, 共 47.8 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

“数智未来 因你而来”,鲲鹏&昇腾创新大赛2023湖北赛区决赛正式启动

彭飞

浅谈统一权限管理服务的设计与开发

百度Geek说

百度 数据中心 企业号 8 月 PK 榜 权限服务

CCF C³ 走进百度:大模型与可持续生态发展

飞桨PaddlePaddle

人工智能 百度飞桨 文心大模型 重磅活动

极狐GitLab 上新:跳过无需备份项目,节约数 10 至 1000 倍时间与磁盘空间

极狐GitLab

DevOps gitlab 磁盘空间 数据备份恢复 备份时间

小灯塔系列-中小企业数字化转型系列研究——知识管理测评报告

向量智库

可行性研究报告编制方案

金陵老街

SAM适配下游任务的探究:SAM Adapter

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 8 月 PK 榜

使用Logstash同步Mysql到Easysearch

极限实验室

MySQL Logstash ELK easysearch

相约天津!全国智能汽车竞赛百度创意组总决赛通知

飞桨PaddlePaddle

百度 paddle 百度飞桨 飞桨国赛 全国大学生智能汽车竞赛

极狐GitLab 企业级 CI/CD 规模化落地实践指南(一)

极狐GitLab

DevOps cicd runner template Component

分布式事务的华丽进化 | 京东物流技术团队

京东科技开发者

分布式事务 数据库事务 企业号 8 月 PK 榜 柔性分布式事务

SpringBoot3集成Redis

Java redis 架构 springboot SpringBoot3

火山引擎DataLeap的Data Catalog系统公有云实践

字节跳动数据平台

大数据 数据中台 企业号 8 月 PK 榜

MySQL 执行计划详解 | 京东物流技术团队

京东科技开发者

MySQL 数据库 explain关键字 企业号 8 月 PK 榜

分布式那些事儿-浅谈高并发分布式架构演进路径

HelloGeek

分布式 微服务

华为云API Explorer:自动化运维的得力助手

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 8 月 PK 榜

18. Python中的模块与包

茶桁

Python

从零开始学极狐GitLab|03 Runner 裸机部署

极狐GitLab

DevOps gitlab cicd SaaS DevSecOps

一文预览 | 8 月 16 日 NVIDIA 在 WAVE SUMMIT深度学习开发者大会 2023精彩亮点抢先看!

飞桨PaddlePaddle

人工智能 百度飞桨 WAVE SUMMIT

百度百舸平台的大模型训练最佳实践

Baidu AICLOUD

容错机制 大模型训练 异构计算 CheckPoint

如何精准预测天气?火山引擎ByteHouse与大地量子这么做

字节跳动数据平台

数据库 大数据 云原生 数仓 企业号 8 月 PK 榜

华为云GaussDB(for Influx)单机版上线,企业降本增效利器来了

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 8 月 PK 榜

实战:工作中对并发问题的处理 | 京东物流技术团队

京东科技开发者

数据库 并发 数据库锁 更新丢失 企业号 8 月 PK 榜

GeaFlow任务能力增强:通过API定制流图计算逻辑

TuGraphAnalytics

分布式计算 java编程 API 图计算 tugraph

聊聊JDK1.0到JDK20的那些事儿 | 京东云技术团队

京东科技开发者

Java jdk jdk8 jdk17 企业号 8 月 PK 榜

DTCC 2023即将启幕 明天见!

酷克数据HashData

读《芯片浪潮》,学习台积电张忠谋的管理之道

博文视点Broadview

基于Web的IDE会成为主流?_Java_Dio Synodinos_InfoQ精选文章