我现在是Delphiholic很长一段时间了,最近我也在考虑学习一些C#,但是我有点“害怕未知”,我做了一些简单的应用程序作为试驾C#和我不得不承认我喜欢它,但是我并不喜欢IDE ...这里说的是如果其他人沿着这条道路回答我会很感激的问题:
作为Delphi开发人员,Delphi语言的“主要基本”变化是什么(基本上我指的是基本 - 实用函数,流等),我习惯于将“System,Classes,Windows”添加到使用不是“使用System.XXX.YYY.ZZZ”,我正试图在我的脑海中实现从Delphi到C#的部分平等,直到我能看到Delphi与C#携手并进的......等等......
我希望这个问题非常清楚,如果没有,请不要发誓我发誓,我会尽力澄清: - )
答案 0 :(得分:22)
我大量用于软件开发。
.NET中服务器应用程序(Web应用程序,Web服务,Windows服务)的开发速度要高得多。
Delphi中业务应用程序(纯Windows用户界面)的开发速度要高得多。
开发性感应用程序在两种环境中都是一种痛苦。
你应该知道一些事情:
- 的Jeroen
答案 1 :(得分:12)
“主要的基本”变化是.NET的库是面向对象的。例如,代替在System,SysUtils,StringUtils等之间传播的全局字符串函数,它们只是String类上的静态方法。它们不是全局路径操作函数,而是Path类或File类的静态方法。您可以创建StreamReader(如果文件较小,则只调用静态File.ReadAllLines或ReadAllText,而不是TextFile / AssignFile / Rewrite。大多数事情都是相当容易被发现的。有一些东西缺失;例如,.NET中没有IncludeTrailingPathDelimiter方法(虽然你通常不需要它 - Path.Combine更好)。
我会提出跳过WinForms的建议。如果你使用过Delphi VCL,那么WinForms会很熟悉而又令人沮丧,令人抓狂。他们从VCL中获取了基本的想法,但从来没有费心给它带来丝毫的深度,甚至是可用性。没有TAction / TActionList的等价物,Dock属性(相当于Delphi的Align)喜欢隐藏对方后面的控件,直到你搞砸了“Bring to Front”/“Send to Back”,工具提示需要你表单上的额外组件,只有极少数的控制,这只是我的头脑。花点时间学习WPF;它拥有VCL的所有丰富性以及更多,并且你可以花更少的时间在墙上撞击它。
IDE需要一些时间来习惯,但我喜欢它比Delphi好得多。你必须学习一组不同的击键,但这没什么大不了的。 IDE响应更快(在“后台”编译期间没有锁定)。它也有一些kick-ass附加组件 - 在你使用ReSharper一段时间后,你不会错过Delphi IDE。