首先(在这个问题被投票之前):我是一名开发人员,使用面向Win32的Delphi开发99,99%的程序(在Delphi 7中开发仍然非常缓慢地迁移到Delphi 2010)。
当Delphi 2006或2007(不记得目前是哪个版本)问世时,我购买了RAD Studio版本,以便能够使用Delphi.net和VCL.net开始开发.net应用程序。
我玩了很短的时间,但最后,由于工作负载只是使用Delphi 7作为开发平台。
当Delphi 2010发布时,我决定再给.net一次,并且(愚蠢地)再次购买Studio License,认为包含PRISM是以前的Delphi.net(将在Delphi IDE中开发)
现在我已经安装了PRISM(以及Visual Studio 8 IDE - 恐怖片),我只是想知道PRISM是否是Delphi.Net的新版本(可能不是)。如果我可以在Prism下使用我的一些Win32代码。
某些回复后的更新:我保持问题开放,因为当答案尚未被选中时,您会得到更多答案。
我确实想念Delphi IDE。它既有品味又需要开发两种不同的IDE(键盘快捷键不同 - 我不想放弃Delphi,谢谢))这不是我花费我开发时间的想法。
答案 0 :(得分:12)
Prism是Delphi .Net的替代品 - 它由RemObjects开发,其原始名称为Oxygene和Chrome(http://www.remobjects.com/)。
因为它比.Net网段中的Delphi .Net要成熟得多,所以它现在包含在Delphi RAD Studio而不是Delphi .Net中。
您将无法使用所有W32代码,但语法非常相似,大多数算法可能无需任何更改即可使用。
有关Delphi W32和Delphi Prism的详细比较,请参阅http://prismwiki.codegear.com/en/Win32_Delphi_vs._Delphi_Prism。
答案 1 :(得分:8)
没有。 Delphi.NET专门设计为与Win32 Delphi代码向后兼容。棱镜不是。它不是由Borland / CodeGear团队开发的,不包括VCL支持,并且有一些轻微的语言差异。最好将它想象为Object Pascal的新方言而不是Delphi.NET。
答案 2 :(得分:8)
主要区别在于Delphi.Net主要是RTL / VCL到.Net 的端口,以及Object Pascal改编为.Net语言。
它必须包含一个带有特殊Delphi.Net表单设计器的完整IDE。
目标是帮助将VCL Forms应用程序移动到.Net并进行最少的更改,或创建新的应用程序,而无需重新学习IDE和库。
Delphi Prism也是Object Pascal对.Net世界的改编,但更强调成为一种完全成熟的.Net语言(甚至比C#更多),并且更少担心与Delphi兼容。
它只是在Visual Studio中托管的语言,并且确实使用了IDE提供的任何设计器。
因此,最终纯粹的Pascal代码将非常相似,并且易于移植,但丰富的GUI应用程序将需要更多的重写/重新设计。
答案 3 :(得分:5)
是和否。
Oxygene(FKA Delphi Prism)取代了Delphi for .NET,但它不是它的新版本。
他们有不同的设计理念,并不是100%兼容。正如弗朗索瓦指出的那样,Prism不包括VCL.Net。相反,它完全专注于支持.NET GUI框架:WPF,Silverlight,Prism,WinForms,ASP.NET等。
Delphi for .NET完全是关于迁移和向后兼容性的。 Delphi Prism就是一个全功能的.NET开发语言和“向前兼容性”。
您可以创建纯粹的业务逻辑,因为Delphi本机和Delphi Prism之间的代码兼容,但所有GUI和IO代码(任何使用VCL或RTL的代码)都将是专用的。
答案 4 :(得分:4)
不,Prism已被标记为Delphi,使其更受欢迎,如Delphi PHP。
它不像Delphi.NET,VCL一样,甚至是兼容的语言(它使用method
代替procedure
和许多其他偏差。)
所以你可以看看你是否喜欢它,但是从我看到它,使用Delphi将不会有太多的帮助,现有的代码库也没有。