突破性编程.NET时代

时间:2010-05-23 10:48:57

标签: .net

我想知道在过去的5到10年中,您认为.NET技术/ C#语言改进是什么?我的意思是改变开发人员思维的技术。

例如DirectX使汇编程序在20世纪末几乎被放弃用于游戏编程,jQuery极大地简化了Ajax Web开发以及JavaScript代码的可重用性。

您对未来的.NET技术有何突破,现代.NET技术只是众所周知的方法的一种轻微演变?

您是否认为.NET 4.0并行扩展和其他改进是突破性的,或者我们已经达到了现代编程中没有任何激进的观点?

5 个答案:

答案 0 :(得分:2)

WPF与传统的Windows UI方案(再见Window Handles)和丰富的数据绑定相结合,绝对是我遇到的最大的游戏改变者。它比我从通过MFC编写简单的C ++接口转向使用C#和WinForms更加变化。这项技术彻底改变了我对用户界面开发的看法。

答案 1 :(得分:2)

在我看来,最好的事情是:

  • LINQ - 简直是最好的 - 显然,正如其他人所说的那样
  • ORM,例如LINQ to SQL,NHibernate或Entity Framework
    更成熟的甚至允许您只编写类而不关心数据库。 (特别是如果你让他们为你创建数据库。)
  • AJAX,jQuery及其周围的框架 - 显而易见的原因
  • 声明性用户界面(例如XAML或QML)
  • 促进良好架构的设计模式的出现,如MVC和MVVM

答案 2 :(得分:0)

Linq-to-SQL(以及其他使用表达式树的linq派生词)彻底改变了我希望编写数据库查询的方式。即使我仍然不时地编写那些非类型的纯文本SQL查询,大多数时候我不认为它是“自然的”,我希望我可以使用Linq来实现这个特定的场景。

编辑:另一件我不能再活的东西就是反思。虽然不是由.NET引入的,但我认为它成功地将其推向了顶峰。虽然您可以在不使用反射的情况下编写代码,但它通常会以某些性能为代价来简化某些场景。

话虽这么说,我目前正在用文本模板替换我的大多数反射代码,这些模板不是新的,但VS2010强调了它的存在。通过在编译代码之前检查代码,可以实现许多代码生成的可能性。 .NET中的元编程现在已经发挥了它的全部意义。它正在成为我的宝贵工具。

答案 3 :(得分:0)

具有讽刺意味的是,我认为Linq和ORM(NHibernate等)是过去5到10年间.NET世界最重要的两个新特性。我说“具有讽刺意味”,因为(警告:过度简化)Linq吸引了喜欢SQL的开发人员并希望他们的代码更像SQL,而ORM则适合那些讨厌SQL并且从不想在他们的生活中编写另一个查询的开发人员。

答案 4 :(得分:0)

Resharper正在改变我留下的一点点思绪。