从.NET开始 – ASP.NET,WPF,Silverlight或命令行C#?

如果有人开始使用.NET框架,那么最可行的模板是什么?可行性我指的是学习曲线最低,收益最高的那个.

从…开始:

>命令提示应用程序
在C#?
>使用ASP.NET的Web应用程序?
> XAML / C#中的Silverlight应用程序?
> WPF / Winforms桌面应用程序?

我不想过多地关注某个特定的域,而是要学习.NET Framework 4.0中的所有内容.以哪种顺序学习.NET会更好?

解决方法

控制台应用程序显然是起点:用户界面是一个巨大的森林,在你开发出在荒野中寻找小径的能力之前,尝试通过它是没有意义的.此外,没有什么可以学习做的控制台应用程序,这些应用程序不适用于您在C#中执行的所有操作.

之后的下一步是学习如何构建用户界面.我会对那些暗示你选择WinForms的人提出异议:是的,那里有很多关于如何使用它的信息,并且有很多工具,最简单的是它很容易理解.但是WinForms存在两个问题.

首先,WinForms很容易实现的很多东西实际上是非常糟糕的编程实践.在同一个类中混合业务和表示逻辑是WinForms编程中的常态,并且需要花费大量精力来打破这种习惯,特别是因为数据绑定 – 将数据模型与表示分离的关键工具 – 在WinForms,虽然它是WPF架构的核心. WPF还有很多东西需要学习 – 还有更多 – 但你最终会编写更好的程序.

其次,WinForms即将结束.你不会看到微软投入更多资源来改进它.他们完成了.这并不意味着它不会对未来有用 – 它是 – 但它现在在软件开发生态系统中的整体渗透程度与它将来一样大.

使用WPF的另一个原因是,你学习使用WPF的大部分内容也适用于Silverlight,它打开了一扇永远关闭WinForms的大门.

就ASP.NET而言,这是您在需要之前不想学习的东西.

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....