我是咨询公司的.Net专家,他们使用许多不同的语言和框架,有许多不同风格的开发人员。因为每个人都在努力推动他们与我们不同的客户在提议的技术方面达成自己的议程,我不断发现自己与他们的经典论点都是关于“为什么”.Net可能是一个更好的技术解决方案满足客户要求。
通常在这里,辩论归结为表现问题。通常,这里争论的领域包括成本,可维护性和性能。我很难讨论成本问题,因为一般来说开源技术通常更便宜,虽然并且通常可以在总体拥有成本方面为.Net提供一个好词(似乎很容易让人们相信如果应用程序架构经过精心设计,.Net应用程序的可维护性成本相对较低),如果客户理解并且对微软许可相关的成本无动于衷,我们实际上只会推送.Net。在可维护性方面,就像我之前提到的那样,其他开发人员在这里意识到,在精心设计应用程序时,它可以产生多大的差异。我有大约8年的.Net解决方案编程经验,我非常有信心能够向客户提供.Net提供的所有功能和工具集,使应用程序具有长期,易维护的生命周期。
再次,它通常归结为对性能的争论。到目前为止,我已经为已经使用Microsoft开发技术开发应用程序的公司工作过,所以当我在过去与其他人讨论过性能时,我从来没有像以前那样做过说服表现。我的其他同事总是吹嘘他们去的那些不同的网站,显示开源Web应用程序的性能提高。这就是说,我想从这里的每个人那里了解到,你通常会去哪里获取有关.Net网络应用程序如何执行其他技术的信息?
提前感谢您的建议,
-Matt
答案 0 :(得分:0)
我很欣赏细节,但我必须说我最后忘记了你的问题。 =)
无论如何,这在过去一直是我的想法。什么技术是最好的,总是存在冲突。我们都知道你会找到狂热者,所以很难清除事实。从专业角度来说,我看到围栏两侧都有成功/灾难。
对你而言,因为你对.NET有既得利益。我会展示成功的故事,例如...(插入你想要的任何大牌网站)Facebook,SO等。我也会发现在.NET方面出现问题并查明原因的故事。就像你说的那样,实施起来往往很差。我不知道我在ASP.NET网站上看到过多少DailyWTF故事表现不佳,但可以追溯到1)设计不佳2)实施3)编码。
一旦你有一个可靠的展示案例来证明这项技术的合理性,你当然可以谈谈你过去的经历。你需要使自己有资格避免与你的故事相同的陷阱。
答案 1 :(得分:0)
.NET在C / C ++方面的性能下降。一般来说,它将在基准性能方面赢得Python,Ruby和PHP。静态类型倾向于转换为更快的本机代码。 (有一些例外,例如Python的手动调整set()性能比.NET中的HashSets快)
差异可能归结为apache与IIS(以及它们各自的缓存配置),数据库架构等等。可能被滥用或误解的功能(ViewStates和大型GridView,或者使用大量隐藏的WebControl,例如)
答案 2 :(得分:0)
根据您正在构建的应用程序类型,我发现性能很少成为问题。所有技术都可以表现得很好。
在辩论.net与java / ruby / python等时,我通常会尝试指出.net的其他好处。
有一次,我的老板问我为什么.net而不是其他人?他想知道,因为他可以廉价获得PHP程序员。作为报告的一部分,我们用4种不同的语言编写了一个简单的Web应用程序,到目前为止.net应用程序运行速度最快。之后我们在.net后面巩固了。这就是.net是新的,所以我们都没有真正了解它。我们来自ASP,PHP,Coldfusion和Java背景。
答案 3 :(得分:0)
如果您正在寻找.Net表演故事,您可以收听this dot net rocks show