Web开发人员.NET或Java的学习途径


10

我想知道Windows托管了多少个现实世界的Web应用程序服务器?

我将学习C#和ASP.NET,并希望将自己从嵌入式开发人员转换为Web应用程序开发人员。

我的朋友告诉我,基于Linux的服务器要比Windows服务器更多。他还提到Java技能栈在Web应用程序领域比.NET有用得多。

我对Java和C#的体验很难理解。我是一位经验丰富的C ++开发人员。

有人可以给我一些建议吗?

非常感谢


@home-为什么这种在本论坛上关闭问题的狂热?这对程序员来说是一个关于编程的问题,它有可能在不诉诸火焰战争的情况下就利弊给出非常具体的答案。
詹姆斯·安德森

Answers:


14

与@John Fisher(+1)相比,我是Java专家。

我总是嫉妒 Windows / .Net世界,因为一切似乎都更加集成化,至少对于那些不熟悉所有细节和陷阱的人而言。

Java的地方比较混乱,因此它在JCP之外产生了许多相当创新的想法(例如hadoop,Spring等),从而推广了正式的JavaSE和JavaEE标准。由于JCP是由许多不同的(商业)组织推动的,因此有时会远远落后(例如Java中的lambda函数),因为在所有不同参与者之间找到协议只需要时间。

双方都有很多利弊。但是,从技术角度来看,究竟是Java还是.Net都没有关系,因为Web开发更多地是在考虑可伸缩性和总体复杂性,例如涉及1万名并发用户访问您的系统。

从软件体系结构的角度来看,.Net和Java(EE +框架)非常相似,它们都提供了API以解决所有常见问题(例如MVC,Rest,JSON,持久性,消息传递-仅举几例)面对当今世界。

总结一下-看看这两个概念并选择一个。这不是一生的决定。


2
+1您是对的,这不是一生的决定。实际上,我的人生目标是学习尽可能多的不同编程语言和环境。恕我直言,它使我对编程的理解与语言无关。我几乎建议人们应该两者都学习。
詹姆斯·科里

1
@James Khoury:明智的话,我已经将3-4年的课程“学习.Net”放在了我的议程上-问题是找到一个位置,我想这对我们所有人都是一个挑战。我只是从“过分的”企业框架中退出,转而进入功能世界-我几年前在大学里学到的东西,但从未应用于现实世界中。
回家

+1不是一辈子的决定。
Badar 2012年

12

我不确定服务器的数量真的很重要。什么事情是:你可以用{X}完成目标可靠,快速,和便宜就够了吗?

就.NET而言,很少会收到对该问题的“否”答案。(我不是Java语言的人,所以在那里没有太多帮助。)

Linux与Windows服务器也不是完全无关。您可以使用Mono开发.NET Web应用程序以在Linux服务器上运行。


1
+1对于“ Linux vs Windows不太相关”。
詹姆斯·科里

8

我已经在Java中广泛地工作了,在.NET中工作了一点,我绝对可以肯定地说.NET是一个更好的工作环境。

它具有更加一致和集成的编程环境,并且“ .NET”框架很完整。Java更像是一个寻宝游戏,那里有好的库和框​​架,但是您需要积极地搜索和评估实际项目所需的几乎所有内容,只是正确设置开发环境可能需要几天的时间。

* nix服务器比Windows服务器多(它们的租用价格便宜),但它们中没有很多托管J2EE服务器-因此服务器数量无关紧要。.ASP与PHP相比更是如此。

支持Java而非.NET的主要原因是,许多《财富》 500强公司已经在2大J2EE平台之一上进行了标准化:IBM的Webshpere或Oracle的Weblogic。除此之外,公认的大型利基Java作为Web应用程序平台似乎已不受欢迎。


4

这些天的争论更多是php vs asp.net比asp.net vs jsp。这些天我看不到许多jsp / tomcat解决方案。无论如何,为什么不同时学习asp.net和jsp?它们是相似的想法,我认为jsp为理解asp.net奠定了一个良好的框架。我同意@John的观点,linux vs Windows确实无关紧要。.NET在linux和apache中运行良好。如果您知道JAVA,则可能要花几周的时间编写一些JSP代码,然后过渡到asp.net和c#。看看您喜欢哪一个,然后从那里去。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.