Eclipse基金会

昨天Eclipse基金会庆祝其成立十周年。2004年2月的新闻稿宣布该非盈利组织的正式成立,由包括开发者、消费者和插件提供商在内的各独立团体组成的董事会,为Eclipse的长期发展负责。

基金会成立时,有19个项目和50个董事会成员,其开源平台已经历三年的发展。为了避免来自IBM(2001年发布Eclipse 1.0后成立了Eclipse协会)的影响,新成立的基金会旨在协调平台参与者一起推动Eclipse生态系统的建设和标准化。十年后今天,基金会有247个项目和205个成员,体现了协同治理模式的成功。

当时,Sun公司对Eclipse成为中立供应商表示祝贺,并表示Sun和Eclipse都希望看到Java更广阔的前景。Sun正努力开创共享工具平台,投资了NetBeans。他们引用JavaTools initiative(自2004年以来页面未再更新)和Sun Java Studio Creator是他们能摆上桌面的有价值的工具。然而,当时Sun并没有兴趣将NetBeans重新构建到Eclipse平台之上,并指出:

转换到Eclipse平台将会限制创新技术如Sun Java Studio Creator(项目代码Rave)的开发,同时还需要重新构建我们现有的所有工具。任何要求Sun放弃NetBeans开源平台的接入标准,都与可选择性、多样性和薄弱的Eclipse基础产生直接冲突。如果这些条件改变,我们将会很高兴重新考虑(Eclipse基金会成员)。现在值得考虑的是,为了促进Java平台的成长,大家应如何与Eclipse合作,特别是与最近成立的多合作伙伴javatools.org社区合作。

当Eclipse基金会成立时,Sun确实有一些合理的担忧:Eclipse基金会是否会公正,IBM是否会继续主导Eclipse项目,基金会是否会购买知识产权而不是依赖捐助。

Mike Milinkovich最近约十年一直担任Eclipse的董事,他回顾了这十年来的经历以及他们如何处理上述担忧:

  • 让我吃惊的第一件事是这10年的巨大变化。如果你读了Sun的公开信,它绝对有点像是时间胶囊。当然,Sun公司早已被Oracle收购。尽管NetBeans仍然继续繁荣,我已很少想起Sun Java Studio Creator或者Java Tools Community。(该页面最后更新日期是2004年1月15日,这已经说明了一切)
  • Sun提出的问题之一是关于执行董事(5个月后由我担任)和基金会本身是否能够保持真正的独立。这方面我觉得基金会能得很高的分数。对于Eclipse我们是完全中立的供应商,我们所做的每个决定都会确保遵循该原则。至于我本人,我回答整个董事会、社区,我认为基金的独立性是至关重要的。我认为Borland和BEA在2005的EclipseCon签约成为战略成员是Eclipse基金会历史上的一个转折点。直接竞争对手的加入,证明了基金会在治理和独立性方面得到了非常明确的认可。
  • 为了提高Java的互操作性,Eclipse加入JCP已经很多年,我为JCP执行委员会也工作了6年。我不能说我们已经修复了JCP的所有缺陷,但我们一直在努力。
  • 还记得Swing vs. SWT大讨论吗?尽管这是讨论组中长期的精彩话题,但现在回想起来,整件事似乎有些夸张了。特别是认为Swing将只会被维护,很快就是JavaFX的天下。开发界面方面也从原来追求的与桌面保持高度一致到能够自定义应用软件的外观主题。

尽管很多开发人员仍将其与同名的Java开发环境混为一谈,Eclipse已经不再是特定语言的IDE。实际上,Eclipse基金会已经发展其它语言(JavaScript和Vert.X现在是Eclipse项目)和相关工具(Vert.X托管在GitHub)。焦点已经从桌面终端应用转移到web,Orion提供了一款知名的基于web的开发工具。

事实上,下一个互联网的主要增长领域不会是编程语言或工具。Eclipse基金会已经开始聚焦物联网(IoT),遵照Wayne Gretzky的建议“滑冰到冰球将去的地方,而不是它去过的地方。”

查看英文原文:Eclipse Foundation Celebrates 10th Anniversary


感谢张龙对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

【ArchSummit北京2015】全球架构师峰会精彩升级!手淘从无到有如何建设起了如今的Hybrid App框架?携程如何通过工程解耦及开发框架优化轻松应对业务和新技术的快速发展?苏宁如何应对风险识别系统建设的技术挑战?爱奇艺在面对其视频转码对IaaS平台弹性计算的高要求又是如何应对呢?精彩内容与您邀约。即刻报名立享八折优惠。

转载于:https://www.cnblogs.com/viewcozy/p/4904879.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/272822.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.Net架构必备工具列表

原文N多年前微软官网曾发了.Net下必备的十种工具,N多年过去了,世异时移,很多东西都已经变化了,那个列表也似乎陈旧了。而且,该文也只是对十种工具独立的介绍,显得有些罗列的感觉,是不是每个工具…

java scanner接收数组_java – 使用scanner将文件中的整数读入数组

我正在为学校做一份复习工作.赋值是编写一个类,它从标准输入读取一个包含几个整数的文件,这些整数将被放入一个数组中.从这里开始,需要编写方法来找出平均值,中位数,最大值,最小值和标准差.它读起来像这样:4556677889等等…所以,我假设我需要创建一个数组列表(因为长…

Asp.Net页面传值的方法简单总结【原创】

1、QueryString当页面上form按照get的方式向页面发送请求数据的时候,web server会将请求数据放入一个QEURY_STRING的环境变量中,然后通过QeueryString方法从这个变量中获取相应的参数。例如:发送参数页面Test1.aspx 按钮单击代码:…

关于archlinux下的ralink5370网卡

驱动此网卡要使用 rt2800usb,rt2800lib 这两个模块 顺便说一下对模块进行操作的命令: rmmod 模块名 //为移除模块 insmod 模块所在路径 //为添加模块 查看网卡是否能被驱动,可以使用命令:ifconfig -a 转载于:https://www.cnblogs.…

java xml 递归_Java递归遍历XML所有元素

import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.DocumentException;import org.dom4j.Element;import java.util.*;/*** Created by IntelliJ IDEA.* User: leizhimin* Date: 2008-4-14 14:02:12* Note: Java递归遍历XML所有元素*/public class …

【基础】C#异常处理的总结

一、异常处理的理解?异常处理是指程序在运行过程中,发生错误会导致程序退出,这种错误,就叫做异常。因此处理这种错误,就称为异常处理。二、异常处理如何操作?C# 异常处理时建立在四个关键词之上的&#xff…

Java Web 路径问题

可能在做文件上传或者 图片加载,资源加载 时候用到文件相对服务器地址 System.out.println(request.getRemoteUser()); //客户端用户System.out.println(request.getRemoteAddr()); //客户端IPSystem.out.println(request.getRemoteHost()); //客户端主机名Syst…

mysql 多字节编码漏洞_phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)

漏洞详情范围 phpMyAdmin 4.8.0和4.8.1原理 首先在index.php 50-63行代码$target_blacklist array (import.php, export.php);// If we have a valid target, lets load that script insteadif (! empty($_REQUEST[target])&& is_string($_REQUEST[target])&&…

.Net开发的两个小技巧

一、符号的妙用1、可以作为保留关键字的标识符C#规范当中,不允许使用保留关键字(class、bool等)当作普通的标识符来命名,这时候符号作用就体现出来了,可以通过符号前缀把这些保留关键字可以当作普通的字符使用。比如&a…

Codeforces Round #FF (Div. 1) A. DZY Loves Sequences

原题链接:http://codeforces.com/problemset/problem/446/A 题意:给一个长度为n的序列,最多可以修改一个位置的数,求最长连续上升子序列。 题解:当a[i1] > a[i-1]2的时候,可以通过改变a[i]的值来使前后两…

25句张小娴经典爱情语录,句句穿心!

1、女人在床上流的眼泪,比在任何一个地方多。男人在床上说的谎话,也比在任何一个地方多。2、承诺本来就是男人与女人的一场角力,有时皆大欢喜,大部份的情况却两败俱伤。3、爱情正是一个将一对陌生人变成情侣,又将一对情…

mysql 数据库事务处理_Mysql事务处理问题 - mysql数据库栏目 - 自学php

今天和同学讨论起数据库事务处理的问题,感觉讨论中明白了一些,有些知识看过了,但是没有实际使用还是不理解。事务处理就是将一系列操作当做一个原子操作,要么全部执行成功,如果执行失败则保留执行期的状态。通过提交和…

[LeetCode] Palindrome Linked List

Given a singly linked list, determine if it is a palindrome. 一开始想用栈,但是试来试去发现写不出来遂放弃,后来想想再不济可以转换成数组然后分别两头扫,但是这样就用了O(n) 的空间,再进一步,可不可以在链表里模…

【原创】Ajax的用法总结

一、什么是AjaxAjax英文全称为“ Asynchr JavsScript and XML”(异步的JavaScript和XML),是一种创建交互式网页的开发技术。二、Ajax技术的核心Ajax是一系列相关技术的融合,其核心包括XMLHttpRequest、JavsScript和DOM技术&#x…

gprs java_WISMO模块GPRS上网设置的过程

WISMO模块GPRS上网设置的过程一) AT指令设置部分(1) ATCGCLASS“B”置为“网络WISMO模块GPRS上网设置的过程一) AT指令设置部分(1) ATCGCLASS“B”置为“B”模式。(2) ATCGDCONT1,“IP”,“CMNET”设置APN。(3) ATCSQ 检查信号 若返回10—31&#xff0c…

loadrunner性能测试步骤

性能测试过程分为4个阶段:设计、构建、执行、分析/诊断/调节具体的工作流程如下图 设计  >  构建  >  执行   >  分析/诊断/调节 收集要求    设置测试环境 基准测试    诊断瓶颈 设计测试策略  记录测试脚本 性能测试     调…

Asp.Net生命周期的详解

一.Asp.Net页面生命周期的概念当我们在浏览器地址栏中输入网址,回车查看页面时,这时会向服务器端IIS)发送一个request请求,服务器就会判断发送过来的请求页面,当完全识别 TTP页面处理程序类后,A…

java chain_java 8中 predicate chain的使用

java 8中 predicate chain的使用简介Predicate是一个FunctionalInterface,代表的方法需要输入一个参数,返回boolean类型。通常用在stream的filter中,表示是否满足过滤条件。boolean test(T t);基本使用我们先看下在stream的filter中怎么使用P…

前段技术学习计划

资料: 著作权归作者所有。 商业转载请联系作者获得授权,非商业转载请注明出处。 作者:陈禹鲁 链接:http://www.zhihu.com/question/19809484/answer/35544452 来源:知乎 第一本,入门 《Head first HTML&…

指针的概念

在C语言中,内存单元的地址称为指针,专门用来存放地址的变量,有时对地址,指针和指针变量不区分,统称指针。(地址指针) 一般情况下,最前面的存储类型通常会省略 指针在说明的同时&…