为什么大部分代理研究和工作都是用Java完成的?有没有理由说开发人员似乎完全避开了.net框架,或者因为.net比Java更具商业性而没有在研究人员之间谈论它?
答案 0 :(得分:12)
关于为什么使用Java 的一个假设:研究人员主要在大学就业。研究人员通常没有代码 - 研究生生活在拉面上的学生为他们编码。大多数大学只是工厂java程序员的工厂。因此,大多数研究都是用Java完成的。
另一个关于.NET 未被使用的假设:忽略Mono片刻,.NET与微软的操作系统联系在一起。研究中心提供的工作环境很可能没有运行Microsoft操作系统/实用程序。
它肯定与商业可行性无关 - Java就像.NET一样“商业化”,因为它的价值。
答案 1 :(得分:5)
答案 2 :(得分:3)
.net(MS)需要投资操作系统和开发平台的许可证。 Java(Sun)和目标操作系统基本上是免费的(您支付费用),经过企业验证并且语言得到广泛传播。
基于代理的编程在扩展方案中很重要。扩展.net(MS)意味着投入很多!
答案 3 :(得分:1)
显而易见的答案是,对于你愿意投入时间的任何东西,Java都是免费的(就像在啤酒中一样)。除了硬件之外,您还可以运行Linux(或Open Solaris等),免费的JVM,大量的免费API - 它是文化的一部分,免费鼓励免费。
微软生态系统更像是一种付费环境。许多在Java世界中免费的工具仅用于Microsoft世界中的付费选项。
在研究领域,你有很多薪水不足的研究生,人力便宜得多,所以商业许可工具节省人力的表面上的好处并没有那么大的好处。除此之外,研究项目可能需要在广泛的机器上运行。当在商业环境中发生这种情况时,商业实体正在赚钱(例如,一家电子商务公司需要增加其集群中的机器数量 - 他们获得更多流量,更多销售,更多钱,以便他们可以花钱增加基础设施)。在研究中,商业软件的许可要求的增加并不一定是其基本经济学的合理性。
所有人都说,Java得到了偏好。一旦发生这种情况,这将成为每个人都在谈论的工具,并且效果会在.NET被挤出的地方滚雪球。
当然,你会发现上述所有例外情况,但关键在于它概述了趋势。