为什么服务器端有.NET和Java?

Xin*_*nus 2 .net java evaluation

Java和.NET是两种旨在消除平台依赖性的语言.这是通过在代码和OS之间添加虚拟机/框架来实现的.

那么,在服务器端使用它有什么意义,因为所有网站都可以通过浏览器访问,而且这是独立于平台的?使用它们有什么特殊原因吗?

mon*_*ksy 9

.NET仅适用于Windows平台.Java是两者中唯一一个与平台无关的.

这些语言在服务器端具有强大的存在性,原因有很多:

  1. 许多处理问题子任务的库
  2. 两个框架都是以安全性为基础构建的
  3. 它们是托管语言,实现典型的软件攻击要困难得多.
  4. 他们被认为是成熟的技术,他们已经受到了相当多的滥用,并经受了考验.
  5. 他们有行业支持.
  6. 两者都是面向对象的
    1. 这意味着可以通过使用可重用组件或第三方组件来开发网站.
  7. 两种语言都允许非托管组件的"沙盒化"(Java:JNI .NET:Boxing)[允许包含遗留组件]

  • NET不仅适用于Windows平台.有几个第三方框架,例如其他平台的MONO (14认同)
  • .NET*在Windows平台上可用,*已标准化.然而,它在Windows上肯定是*最强*,因为微软为自己的平台首次推出它,并花费大量的时间,金钱和人力来保持它的最新和对自己的系统有效 (9认同)
  • 除了枚举之外,Java还有什么比.NET还要OO?我会说.NET在整个值类型拳击等方面有更好的故事,并允许您直接在值类型值上调用方法. (6认同)
  • Mono不是运行企业服务器应用程序的成熟平台.这是一个不错的实现,但它远不是用于Web系统的J2EE或PHP.你试过测试单声道和MS的.NET之间的兼容性吗? (4认同)
  • 这个答案不应该被拒绝投票.在Windows .NET框架平台中立之外给出的五个原因是可接受的,并且是无可争议的. (4认同)
  • @Svante:如果你在.NET中创建任何组件,你可以在桌面和Web应用程序的任何地方使用它,这是我认为史蒂文想要指出的 (2认同)
  • 哇......我印象深刻......我跟着Mono社区,控制器就是它的一根刺.[伴随着体面的IDE咳嗽] (2认同)
  • @steven声称.Net是面向对象的"好尝试",无论是火焰,无知,还是只是愚蠢.但它不是中立的. (2认同)

Mic*_*rdt 7

实际上他们的选择几乎完全相反:

  • Java的平台独立性意味着您不依赖于一个平台,因此在选择最具成本效益的平台或最可靠的平台时更灵活.即使您必须更改服务器平台,也可以保持应用程序正常运行,因为旧的应用程序平台不再受支持.
  • 之所以选择.NET,是因为如果你要将自己与自己的操作系统联系在一起,那么微软就是最大的选择,因此也是风险最小的选择 - 或者仅仅是因为公司通过像Exchange这样的网关药物进入"全微软商店"陷阱.一旦你在那里,.NET就是微软希望你使用和支持并集成所有当前工具的东西.