代码之家  ›  专栏  ›  技术社区  ›  3Dave

ASP.NET编译模型的优点?

  •  1
  • 3Dave  · 技术社区  · 15 年前

    我正在和一个PHP开发人员合作,我们可以说,他对.NET不满意。他的抱怨包括必须为每个测试重新构建Web应用程序解决方案(尽管我指出,通常只有在.cs文件发生更改时才需要,而不是Interface.aspx文件),必须在解决方案中包含需要部署的每个文件等。

    我已经指出了编译模型的一些优点,包括rtti(反射)、源代码完整性(源代码没有部署到服务器上,让爱管闲事的IT人员无法动态修改)、性能差异(尽管他坚持认为这是无效的,因为现在“编译”了PHP),等等.NET还有哪些其他优点通过PHP?这可能会引发一场宗教辩论——拜托上帝,不——但我是.NET的粉丝,以至于我多年前提出的这些问题中的一些看起来很愚蠢,以至于我无法表达出有效的回答。

    他开发页面的方式似乎也有很大的不同。例如,声明一个类,该类表示一个页面的一部分,例如,三列布局中的一个特定列,而不是以更合乎逻辑的方式分解代码,并依赖.aspx来处理布局。我觉得奇怪的是,页面布局无论如何都会绑定到类结构,而不是ASPX页面背后的代码。

    评论?

    更新 顺便说一句,这是一个老问题,但我觉得有必要用以下几点来更新:

    1. 优化 这是一个大的。编译提供了在JIT期间执行一些不实际的优化的机会。

    2. O.K.W提到的文章是 显然是有偏见的,是那些在.NET中没有工作过的人创造的。 它几乎不值得阅读(尽管我读过)。它还指出 不正确的 .

    3. 几乎不可能让Mac人意识到Windows有它的位置。另一方面,我认识的大多数Windows公司的人都认为Mac非常适合做很多事情。大多数人甚至拥有一个。我们不使用它们开发网站或嵌入式系统是有原因的。(而且,是的,我们的业务涉及两个方面,非常密切。)

    4. 初恋变糟了…很好的类比。在不久的某个会议上,这可能会让我大吃一惊。

    5. 这场辩论毫无用处。我不妨试着说服英国人在正确的道路上行驶。还有澳大利亚。和香港。而且…你看这是怎么回事。

    干杯。

    3 回复  |  直到 15 年前
        1
  •  3
  •   womp    15 年前

    我每天都使用这两种语言,这两种语言都非常适合开发。如果不全神贯注、热情奔放,很难进入“编译与解释”的辩论,所以我不认为我会对此发表任何看法。但是,以下是我对.NET的一些偏好:

    • Visual Studio与Eclipse。

    • 没有@includes和真正的命名空间。我一直想知道我的类型,而不是依靠奇怪的黑客自动加载程序。

    • API可发现性。PHP有可怕的、不一致的API命名。

    • 编译时检查和代码分析

    • 高级调试人员和配置人员

    这与他们使用的模型没有任何关系,但它只是工具本身的属性。我不建议试图改变主意,甚至和他争论这个问题——他要么自己看到好处,要么自己看不到,但把好处推到他身上可能只会让事情拖得更久;)

        2
  •  2
  •   StriplingWarrior    15 年前

    据我所知(我自己对php没有太多的研究),php既强大又易于使用,而且非常适合小型、简单的项目,特别是在业务逻辑主要由在数据库和网页之间移动内容组成的情况下。ASP.NET更适合于更大、更业务逻辑密集型的应用程序,在这些应用程序中,编译时检查允许您更快地捕获错误。在编译时捕获一个错误与运行时捕获一个错误可以使修复所需的时间有一个数量级的差异。

    在我工作的地方,我们使用PHP构建模型来显示客户并让他们签署我们的想法,然后我们用像.NET或Java这样的编译语言编写实际产品,因为这是我们在未来十年或更长时间内需要维护的代码。

        3
  •  1
  •   Spencer Ruport    15 年前

    主要的问题是,如果有一个框架存在的话,几乎任何可以为.NET带来的优势都可以用PHP来实现。我相信有PHP MVC框架。

    不过,我将介绍ASP.NET的编译模型,了解所有代码背后都没有语法错误是非常有帮助的。PHP和ASP Classic没有这个功能。在一个400多页的网站上,很难确定哪些是功能性的,哪些不是功能性的。