这两个平台/生态系统中哪一个更适合编写Web应用程序/网站?
我对语言功能不感兴趣,而是对可用的工具感兴趣:Monorail,MVC.NET,NHibernate等。这些工具通常用于构建现代的,数据驱动的,支持AJAX的网站。
假设平台的选择取决于您。操作系统并不重要。
答案 0 :(得分:17)
都不是。这一切都取决于您的个人喜好和您的舒适。你可以用两者完成工作。
修改强>
为了更直接地解决您在编辑后引发的工具问题,您可以直接比较这样的事情:
+--------------------+------------+-----------+
| Tool \ Environment | .NET | Java |
+--------------------+------------+-----------+
| Web framework | .NET MVC | Struts |
| ORM Mapper | NHibernate | Hibernate |
| Unit testing | NUnit | JUnit |
+--------------------+------------+-----------+
...事实上,很多工具(NHibernate和NUnit都是例子)在.NET领域被移植和使用之前起源于Java世界。
答案 1 :(得分:13)
这取决于......你最精通哪一个?就是那个。
答案 2 :(得分:9)
您需要问问贵公司的最重要问题是:我们是否只将Windows用作未来的部署平台?
如果不是,那么.NET是不可能的:)
如果是,那么我们可以继续 - 我相信.NET在工具方面优于Java。
答案 3 :(得分:3)
我已广泛使用这两种情况,而且这些天我很难推荐一种方式(假设当然不考虑平台,许可成本和现有团队技能等因素)。
我要说的一点是,Java生态系统比.Net生态系统更大,更多样化(尽管差距正在迅速缩小)。许多.Net用户倾向于支持直接来自Microsoft的产品和框架,这似乎导致了.Net世界中更多的“标准化”。
我加入了Java项目,花了2-3个星期才开始提高工作效率。在一个案例中,构建系统(Maven),IDE(NetBeans),Web框架(Tapestry),O \ R层(我不记得以及从未使用过的东西)对我来说都是新手。从我所看到的你不太可能在.Net商店看到这个。
Java世界中的所有选项都可能非常混乱,并且可能使您的团队的新手难以加快速度。说到这一点,一旦做出(智能!!)决策并制定标准,Java开发就没有理由比.Net更高效或更低效率了。
答案 4 :(得分:2)
这取决于您托管的平台。我个人更喜欢.NET,但如果我有另一个环境,我会使用java(如果没有像PHP / Ruby这样的其他环境)
答案 5 :(得分:2)
我喜欢Java。我喜欢日食。
但是你总会发现.NET托管比java服务器便宜得多。
答案 6 :(得分:1)
如果你正在使用Windows,并且你已经开始使用这两个框架中的一个,那么不就没有理由使用.Net。
答案 7 :(得分:0)
对我来说,Visual Studio使它成为一个简单的选择:)
答案 8 :(得分:0)
我想看一下Groovy以及构建于它之上的web框架:Grails。它易于使用,简单,但如果必须,您可以使用完整的Java堆栈。
我不知道.NET,但我不会选择仅Java 解决方案,即 100+ webframeworks中的任何。 ..太多的样板代码,太多的抽象。如果你遇到麻烦并且真的必须知道幕后发生了什么,你可能会遇到麻烦......
答案 9 :(得分:0)
我认为这两种系统都有其优势。
您可以轻松捆绑Java Web应用程序并将其部署在众多应用服务器(Tomcat,Glassfish等)上。 Java拥有一个非常丰富,成熟的社区,其中包含许多出色的开发框架和功能丰富的IDE(NetBeans和Eclipse)。该技术是便携式的,因此您永远不必选择操作系统。最好的部分是,大部分都是免费的。 Java中的大多数框架也被设计为彼此“放置好”,因此您可以随意插入和播放不同的功能(ORM,AOP,IOP容器等)。对于.NET来说,这并不是特别正确,没有那么多的免费库/框架可以与该技术一起使用(对于Java框架的采用级别来说,肯定不是很多)。
作为一个优先选择,我更喜欢.NET,因为我认为开发环境稍微容易一些,而且文档非常一致(我觉得效率更高)。这并不是说Java没有良好的文档,它只是倾向于依赖于项目的命中或错过。在我看来,Visual Studio是最好的开发环境;它需要学习什么相当于一个非常复杂的网站框架。不幸的是,它需要花费一些钱,并且该技术相当于微软认为你应该承诺的最佳模式和实践(尽管它们倾向于从Java中大量借用,因此它通常最终会成功)。
我相信更多的人会对此有所说明。我希望,您也在编写一些业务应用程序的上下文中提出这个问题。如果这是针对您自己的个人网站,我建议您转向更便宜(托管),更轻松的技术,如Ruby或PHP。
答案 10 :(得分:0)
2选择java的原因: -