Delphi 2009升级的原因

8
我已将问题设为“社区wiki”-它是主观的。
我升级到Delphi 2009是因为它支持unicode。我发现匿名方法是一种非常有趣和有用的语言特性,但我不能说相同的话适用于泛型。在升级到Delphi 2009之前,泛型似乎对我很重要,但我从未使用过,也许永远不会使用。至于Delphi 2010,我不需要属性,也不喜欢扩展RTTI的整个想法-这就是为什么Delphi 2009对我来说更好的原因。有时我会遇到Delphi 2009 IDE中的某些烦人的错误,但它们并不关键,我可以忍受它们。我没有计划为Mac或Linux开发软件。当然,有时我会需要64位支持,所以我考虑升级到Delphi 2012(XE2)。
是否还有其他原因可以迫使我从Delphi 2009升级?

Embarcadero为这个问题专门提供了一些营销材料。http://blogs.embarcadero.com/davidi/2013/12/02/43032 - Bruce McGee
7个回答

9

嗯,你似乎已经全都想好了。如果你对RTTI或触摸不感兴趣(似乎没有人太关心),那么最大的区别可能是改进的泛型。如果你还没有使用它们,你真的应该使用。泛型是一种功能,直到你开始使用它们,你才会看到它们的用途,但然后你就会发现到处都有可以使用它们的地方。它们使许多事情变得简单得多……当它们工作时。不幸的是,D2009中的泛型支持有点问题,但是在2010年他们修复了这个问题。

此外,即使你自己不使用RTTI,也有很多开发工作正在使用它。例如DeHL,它提供了大量有用的容器和其他类,仅支持D2010。

总的来说,从D2009升级到D2010是值得的。如果你对跨平台没有兴趣,你可能想跳过D2011,但我不会跳过D2010。


1
泛型对我们来说效果更好,但我们仍然发现在Delphi 2010中它们存在一些故障。疯狂的是,这正是我们在2009年和2010年最为期待的,但我们发现我们仍然不得不从生产代码中删除它们,因为在使用它们时会出现随机崩溃或更糟糕的无法解释的编译器错误。 - Zartog
1
+1 - "然后你开始看到到处都可以用它们的东西"。起初我对它们并不感兴趣,但在XE中开始使用它们后,我成为了一个粉丝 - 虽然没有做任何特别复杂的事情,但它们仍然简化和改进了很多代码。 - Vector

4
Embarcadero wiki列出了大部分的改进内容。Delphi 2010主要是对已有功能进行优化,如果没有其他需要,我建议升级以修复错误。跨平台和64位支持可能会带来一些不便,所以如果您想等待稳定版本,可以选择最稳定的版本。
调试器和IDE也有许多微调,可以提高您的生产力。虽然每个微调都不算太重要,但整体上它们是一个不错的改进。

1

一旦您开始在2009年使用泛型,您会很快发现一个巨大的、非常重要的疏忽: TList<T>缺少ExchangeExtract方法。这对于TList<T>本身来说不是什么大问题,但如果您的列表将拥有对象,那么这将成为TObjectList<T>的主要问题。


但是在D2010中有Exchange和Extract... - Mason Wheeler
1
我想我应该提到这是从D2009升级的原因。 :-) - afrazier

0

我不知道有没有这个功能。;) 在他们发布x64编译器之前,我会等待更新。


时机已经成熟。Mac和iOS支持也已经加入。http://embarcadero.com/products/delphi - Bruce McGee

0

嗯,我认为我会对此有些批评...

保持与Delphi版本的最新状态的原因并不完全是技术上的。我担心的是:如果没有人购买Delphi,因为旧版本在技术上已足够满足他们的需求,那么Embarcadero就没有业务了,然后Delphi就会消亡。

当然,问题在于商业模式:Embarcadero应该降低价格,让每个人都能购买Delphi版本,即使是旧的Delphi x.0恐龙,即使是被困在Turbo Delphi 2006中的爱好者,甚至是正在使用Free Pascal的小企业;这样他们就可以以更广泛的范围(他们可以轻松地针对其他平台进行更多收入)和更长期的方式来融资投资。

当你违背常识时,它是有代价的。这适用于不购买Delphi以支持Embarcadero产品开发的Delphi社区成员,也适用于Embarcadero,他们正在失去一部分具有坚实营销力量的市场。


0

好吧,我這裡幾乎是在翻譯RRUZ的答案,因為這正是我想回答的內容 :)(希望他不會生氣)但我會添加一些評論...

查看這份白皮書:Andreano Lanusse撰寫的遷移到Delphi XE的原因-自從Delphi 7以來你可能錯過了什麼

Delphi 2010

  • Windows 7,多点触控和手势支持,Direct-2D;我目前只发现 Direct-2D 在特定情况下有用...
  • IDE Insight,源代码格式化程序,搜索任务栏
  • 后台编译
  • 增强型运行时类型信息(RTTI);像你一样,我也没有发现 RTTI 对我有用
  • 线程中的断点,冻结/解冻线程
  • DataSnap – 支持 HTTP 协议;如果您的应用程序不使用 HTTP 协议,则此功能无用

Delphi XE

  • DataSnap – 支持 HTTPS、JavaScript、REST
  • Subversion 集成;您可以通过 JVCL 部分实现此功能...
  • 正则表达式库;这是一个有用的东西。我已经想要它好几年了...
  • AQTime、CodeSite、Beyond Compare、Final Builder;这是一系列有用的应用程序,但我不确定您到底得到了什么
  • 云服务和云部署;

让我们等待新版本的公告,看看我们可以添加到这个列表中的内容。 :)

我必须要补充的一件事是,这个月Embarcadero推出了一个不错的升级优惠,即使你是一个老IDE用户。即使你计划稍后升级,也许你应该看一看,因为之后你将无法获得升级的折扣价格...


0

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