如今,C# 无疑是开始的地方。
- VB.NET 并不是一门糟糕的语言,但其语法与所有其他流行语言大相径庭,以至于技能不能很好地转移。
- Java 在能力和与其他语言交流的能力方面都非常有限。它还要求您在编程时使用许多“反模式”,因为它缺少属性、委托和真正的泛型等基本特性。
- Ruby、Python 或 PHP 等动态语言不像 Java 那样糟糕,但不会像 C# 那样帮助您学习许多基本的编程概念,而且它们对于初学者来说更难使用,因为它们没有 Intellisense 等。
- 像 ML、F# 和 Haskell 这样的函数式语言是真正的脑筋急转弯。它们是学习全面发展的好语言,但不适合胆小的人。
我会先在你当地的社区大学上 C# 课程,然后拿起一些关于它的书并阅读一段时间。这将使您熟悉该语言和 NET 框架。
一旦您掌握了语言本身并了解了如何使用 NET Framework 的某些部分,我将下载一些简单的 WPF(或 Silverlight)应用程序的源代码并探索它们以了解它们是如何工作的。WPF 将是比 ASP.NET 更好的选择,因为 ASP.NET 在处理 WPF 中根本不存在的回发、HTML 和 JavaScript 时引入了大量额外的复杂性。此外,未来基于浏览器的应用程序似乎将是富 Internet 应用程序 (RIA),所有这些应用程序都使用比 ASP.NET 更接近 WPF/Silverlight 的机制。我会在 Silverlight 之前从 WPF 开始,因为当你
只有在完成所有这些之后,我才会深入构建一个 n 层应用程序。在自己做一个之前,我会再看很多例子。选择简单的并模仿那些。你会发现很多都被过度设计了。