看看Eclipse主页上闪烁的图片吧,Callisto is coming in 1 day!于是有许多人开始欣喜若狂了,甚至高呼这种按时发布是敏捷开发的伟大成果。我不知道按时发布是否真的和敏捷开发有关,在这里我也不像讨论这个东西。我想说的是,为什么Callisto这个东西会让大家如此着迷?
让我们先来看看Callisto是用来做什么的。Callisto的主页上面说:“Callisto的目的是通过提供一个更透明的可估算的开发周期提高在Eclipse框架上层工作的开发者的生产力。通过一次性发布10个项目,除去版本兼容的不确定性,并使得在开发环境中使用多个插件变得更简单。”看了这段文字,我想大家都会问这样的问题:为什么版本兼容会有不确定性?为什么使用多个插件不简单?
凡是使用过Eclipse的朋友们都应该有过这样的经历,为了安装一个插件,把自己原有的Eclipse中的插件搞得面目全非。好一点的情况是,当你需要安装一个插件A的时候,它要求你安装插件B,于是你就要去下载B这个东东;更糟糕的情况是,插件A依赖于B的1.0版本,而插件C依赖与B的1.1版本,如果想要同时使用A和B,该怎么办呢?Callisto看上去就是要解决这些问题。但是我们必须考虑这样一个问题,为什么会有这种不兼容性妨碍我们对插件的使用?最根本的原因在于Eclipse和它的核心插件的设计有问题。这个问题就是,对于Eclipse平台来说,并没有一个通用的schema来定义和约束所有的事情。于是我们可以看到EMF和GEF之间的重叠与矛盾,更看到了GMF的出现,一个即和EMF重叠又和GEF重叠,而且不能直接与它们交互的怪胎。
Eclipse平台自身的问题是无法通过发布类似于Callisto这样的插件能解决的,唯一的解决方法就是重新规划整个Eclipse平台。你们也许会说这是不可能的。但是看看Eclipse的发展过程吧,从2.1版本一直到现在的3.2版本,在哪个版本中没出现很大的变化呢?哪两个版本有很好的兼容性呢?为3.0版本开发的插件,不能在3.1版本上正确运行,这是太司空见惯的事情了,以至于IBM WebSphere和Rational系列的那么多产品还在使用Eclipse3.0平台,可怜我的内存啊!Eclipse自身版本的兼容性给IBM自己都造成了如此大的问题,更何况我们呢?我更希望Eclipse可以彻底改头换面,反正它的API从来就没有稳定过。但是IBM会愿意这么做吗?当然不会!它的那么多产品还要靠这个吃饭呢!IBM是商人,不是慈善机构。
因此,使用Eclipse的朋友们,做好准备去面对这些丑陋的兼容性问题吧。让我们看看最糟糕的情况:插件A依赖于插件B的1.0版本,插件C依赖于插件B的1.1版本,插件B的1.0版本只能装在Eclipse3.0上,1.1版本只能装在Eclipse3.1上。除了骂娘,我们还能做什么?
分享到:
相关推荐
Callisto-Win8-1.3.1_
在Windows 8应用开发中,Callisto是一个非常受欢迎的第三方控件库,它为开发者提供了丰富的UI元素,以便创建具有Windows 8 Metro风格的Modern UI应用程序。Callisto库旨在简化开发过程,提供与Windows Store应用设计...
构建 Callisto: $ grunt 包括什么 Callisto/stylus :文件。 Callisto/dist/css : 编译 *.stylus 到 *.css Callisto/ ├── dist/ │ └── css/ │ └── callisto.css │ ├── stylus/ │ └── *.styl ...
Callisto是的开源Kubernetes本地实现。 建筑学 Callisto体系结构 组件 Nginx代理请求创建/删除与Callisto的会话。 所有其他请求都直接代理到浏览器窗格。 Callisto创建/删除浏览器窗格,监视窗格的状态,并通过...
支持我们给Callisto背后的组织“性健康创新”组织。 我们当前的问题列表可在此处 有关此存储库以及的文档。 最后,有一个实时的heroku测试应用程序,使您对Callisto的运行方式有一个了解 在我们的阅读有关此内容的更...
"Callisto Media Kit" 是一个专门针对媒体和艺术创作的专业工具包,它的设计目标是为用户提供高效、便捷的媒体资源管理和创作支持。虽然没有具体的标签信息,但我们可以从标题和描述中推测,这个工具包可能包含了...
Callisto 是一个基于网络的物业管理工具。 您可以使用 Callisto 做什么... 如果您是业主 - 管理租户 - 管理付款 - 生成报告 - 查看当前的物业状态并编辑信息 - 向所有租户发送通知 - 管理维护请求 如果您是租户 - ...
卡利斯托Callisto是Lua的超集,可直接转换为常规Lua。 Callisto支持以下平台: Lua 5.1、5.2和5.3 LuaJIT特征Bang变量object:bangBANG() object:bang!() (旧模式下的object:bangBANG()或object:bangInPlace() ) ...
该存储库专用于分析从CALLISTO光谱仪获得的太阳无线电脉冲数据,并应用电子密度模型来计算与CME相关的日冕冲击波的参数。 它主要用于II型无线电脉冲串。 主要语言是MATLAB。 这项工作的灵感来自Pietro Zucca的IDL...
Callisto CMS是基于AxKit构建的基于XML / XSL Web的内容管理系统。 它支持WYSIWYG XML内容编辑,将事务站点部署到多个目标Web服务器,多个用户,虚拟主机支持和其他功能。
Callisto是用于Windows Store XAML应用程序(也称为Metro风格的应用程序)的库。 Windows.UI.Xaml中的XAML框架很棒,但是具有一些控件和API中没有提供的某些功能。 Callisto在Windows的XAML UI框架之上提供了附加...
以太坊 以太坊协议的官方Golang实现。 自动构建可用于稳定版本和不稳定的master分支。 二进制归档文件发布在。 建立源 有关先决条件和详细的构建说明,请阅读Wiki上的“”。 构建geth需要Go(1.13版或更高版本)和...
Arktikos位于卡利斯托(Callisto)地区。现场演示先决条件您将需要安装 2.0.0或更高版本。跑步在resources / config文件夹中创建一个config.edn文件。 编辑mail.clj以查找您的配置文件。 要为该应用程序启动Web...
"最霸道的进程管理器-July v2.20-绿色版"是一款高效且功能强大的系统工具,专门用于管理和控制计算机中的进程。该版本为绿色版,意味着它无需安装即可直接运行,方便用户随时随地进行进程管理,不留下任何冗余的系统...
经典以太钱包 ClassicEtherWallet 是一个开源、javascript、客户端工具,用于操作以太坊经典钱包。 官方链接: : 来自 github 链接: : 目的 ClassicEtherWallet 的创建是因为许多用户在他们的计算机上设置...
Callisto A rep that stores my struggle. This is named in memory of Grencia in Cowboy Bebop. 1/6 3h 41min。把艺术从第二章推到了3.2左右。想起来我应该搞一个文档记录一下于是乎就有了这个。 1/7 3h 10min。为...
在Windows环境下,开发多线程程序时,通常我们会选择使用Microsoft Visual Studio(VS)作为集成开发环境。然而,对于跨平台的项目或者依赖POSIX线程API(pthread)的库,我们不能直接使用VS自带的多线程支持,因为...
卡利斯托 该项目是使用 Web框架编写的基于Web的基于文本的冒险游戏。 它利用Django的许多内置类和函数来创建具有数据持久性,用户身份验证,视图和许多其他功能的功能齐全的动态网站。 它还利用XMLHttpRequest API对...
3. **配置Callisto**:Callisto是Eclipse的一个扩展集,它提供了很多增强功能。对于EJB开发,可能需要安装Callisto中的某些组件,如JST Server Adapters或JST EJB。在Eclipse的"Help" > "Software Updates" > "Find ...