如果有人开始使用.NET框架,那么最可行的模板是什么?可行性我指的是学习曲线最低,收益最高的那个.
从…开始:@H_502_3@
>命令提示应用程序
在C#?
>使用ASP.NET的Web应用程序?
> XAML / C#中的Silverlight应用程序?
> WPF / Winforms桌面应用程序?@H_502_3@
我不想过多地关注某个特定的域,而是要学习.NET Framework 4.0中的所有内容.以哪种顺序学习.NET会更好?@H_502_3@
解决方法
控制台应用程序显然是起点:用户界面是一个巨大的森林,在你开发出在荒野中寻找小径的能力之前,尝试通过它是没有意义的.此外,没有什么可以学习做的控制台应用程序,这些应用程序不适用于您在C#中执行的所有操作.
之后的下一步是学习如何构建用户界面.我会对那些暗示你选择WinForms的人提出异议:是的,那里有很多关于如何使用它的信息,并且有很多工具,最简单的是它很容易理解.但是WinForms存在两个问题.@H_502_3@
首先,WinForms很容易实现的很多东西实际上是非常糟糕的编程实践.在同一个类中混合业务和表示逻辑是WinForms编程中的常态,并且需要花费大量精力来打破这种习惯,特别是因为数据绑定 – 将数据模型与表示分离的关键工具 – 在WinForms,虽然它是WPF架构的核心. WPF还有很多东西需要学习 – 还有更多 – 但你最终会编写更好的程序.@H_502_3@
其次,WinForms即将结束.你不会看到微软投入更多资源来改进它.他们完成了.这并不意味着它不会对未来有用 – 它是 – 但它现在在软件开发生态系统中的整体渗透程度与它将来一样大.@H_502_3@
使用WPF的另一个原因是,你学习使用WPF的大部分内容也适用于Silverlight,它打开了一扇永远关闭WinForms的大门.@H_502_3@
就ASP.NET而言,这是您在需要之前不想学习的东西.@H_502_3@