代码之家  ›  专栏  ›  技术社区  ›  Matt

是否值得升级到C 4.0[副本]

  •  7
  • Matt  · 技术社区  · 14 年前

    可能重复:
    Why should I upgrade to c# 4.0?

    我们的项目目前都是C 3。如果我们对C 4提供的功能没有特定的要求,我们是否还有其他升级的原因?谢谢。

    编辑

    使用新的clr,而不仅仅是新的语言功能,似乎有更多的优势。

    5 回复  |  直到 11 年前
        1
  •  6
  •   Jesse C. Slicer    14 年前

    我个人认为,如果你的目标是同一个框架(2.0-3.5),那么在C 3和C 4之间没有很好的语言增强。

    但是,如果您也转到.NET4clr,我认为在运行时您可以利用各种好处。我最喜欢的功能是 parallel task library .

        2
  •  2
  •   David Hoerster    14 年前

    这取决于你想做什么。我不知道2.0(泛型)和3.0(Linq和Lambdas)有什么杀手级的语言特性。C 4更基于场景(参见下面的列表)。如果你想:

    • 利用WCF中的新功能(默认端点、改进的WCF REST支持等);
    • 使用EntityFramework4和它的新特性以及WCF数据服务,将您的EF模型公开为数据服务;
    • 利用一些多线程增强功能(例如,任务而不是使用线程);
    • codedui测试(更多是一个IDE的东西,而不是一个语言的东西);
    • 等。

    …也许我会的。(我的大多数项目都以某种方式使用WCF,因此我正在升级过程中。)

    我不会为了升级而升级。如果您有业务/技术原因,请进行升级。您必须权衡成本(在升级环境时减少编码时间)和好处(最新语言,正如一位评论者所说,开发人员更快乐)。

    另外,IDE很好(尽管我有时发现它有点不稳定)。正如W69RDY的评论所说,它是向后兼容的。您可能想让IDE尝试一下,但仍然停留在.NET 3.5上,只是为了尝试它的一些功能(如扩展管理器和架构比较器)。

        3
  •  1
  •   David    14 年前

    如果您的软件是相当静态和业务关键的,那么升级可能会给业务的生产正常运行时间带来风险。但是,如果您计划在未来继续开发业务软件,那么至少计划升级是朝着正确的方向迈出的一步。如果公司希望自己的代码继续向前发展,就没有理由将开发限制在旧版本上。未来的问题可能会有更容易和更具表现力的解决方案,使用更新的语言功能。

    关于保持开发人员对技术的最新了解,当然还有一些话要说。如果企业希望其技术保持静止,那么多年来寻找人才将变得越来越困难。

        4
  •  1
  •   Jimmy Hoffa    14 年前

    如果升级到C 4对您的系统来说不是一个巨大的痛苦,那么让您在新的运行时上进行项目是值得的,如果.NET 4像.NET 3.5那样在.NET 2上运行,我会说不要麻烦,但是在新的运行时上运行的好处是未来安全性在这种情况下,因为将来会有基于.NET 4运行时的.NET版本,这次升级可能更困难。

    我假设您在不需要它的时候询问它是否值得,因为对您来说升级不是非常困难,如果它在您的项目中会带来特殊的风险和困难,那么如果没有对.NET 4中的功能的足够业务需求,这是不明智的。

        5
  •  1
  •   Cubicle    14 年前

    如果您使用的是ASP.NET WebForms,那么它可能是值得的。看一看 this blog entry .

    web.config文件现在更干净了,CSS支持也得到了很大的增强。WebForms路由也是4.0下的核心功能。最重要的是,你终于完全控制了你的控制ID!

    在我看来,webforms仍然不如ASP.NET MVC好,但是它在4.0中得到了很大的需求。