Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
新绿地项目的Java或Scala?_Java_Scala - Fatal编程技术网

新绿地项目的Java或Scala?

新绿地项目的Java或Scala?,java,scala,Java,Scala,在我读了布洛赫的讨论之后 我开始思考“我是否必须切换到scala进行新的web开发”,或者java在所有情况下都是首选的。你的意见是什么 谢谢,我仍然是JavaSpring的忠实粉丝。有些人认为它可能有点重,但是,有了注释和自动连接,你可以很快地将Web应用组装起来。同样,使用Java,您可以访问大量的开源库,尤其是ApacheCommons 我不喜欢Scala/Lift的一个地方是视图和控制器之间的界限有点混淆。在JavaSpring中,视图和控制器之间有着明显的区别,特别是在使用Apache

在我读了布洛赫的讨论之后 我开始思考“我是否必须切换到scala进行新的web开发”,或者java在所有情况下都是首选的。你的意见是什么


谢谢,

我仍然是JavaSpring的忠实粉丝。有些人认为它可能有点重,但是,有了注释和自动连接,你可以很快地将Web应用组装起来。同样,使用Java,您可以访问大量的开源库,尤其是ApacheCommons

我不喜欢Scala/Lift的一个地方是视图和控制器之间的界限有点混淆。在JavaSpring中,视图和控制器之间有着明显的区别,特别是在使用ApacheVelocity之类的视图模板语言时


尽管如此,根据项目的大小,我认为Scala和Java之间没有太大的区别。两者都能帮你完成任务。如果你的项目有可能变得非常庞大,我会错误地选择Java,因为它是成熟的,而且有大量成熟的开源库可供使用。

这取决于您希望使用哪种web应用程序,尽管我会选择Java,因为它有大量的代码和API基础以及它的大型社区

我认为这取决于您的web应用程序和您的应用程序的规模人力资源。你有好的程序员能很快跟上新技术吗?您还需要关心项目的到期时间和预算


只有当新技术真正适合您的项目时,这才是尝试新技术的好时机。Java在社区中仍然占有很强的地位,您还可以找到许多支持和开源框架

如果您选择Java还是Scala,您可能应该选择Scala。Spring、Hibernete等可以很好地与Scala配合使用,所以如果您现在就可以使用它的话。在IntelliJ中,Scala工具在这一点上还不错。这不像是6个月到一年前

然而,我必须提醒你。。。对于严格意义上的web开发来说,Java是一个非常臃肿的平台。我做了9年的Java软件架构师,最近一直在做Scala,所以我对这些平台有偏见。即使如此,如果您只想制作一个在数据库上提供适度功能的应用程序,那么您应该只使用Grails,甚至Rails(尽管Grails可能更适合您的技能集)


除非您已经了解函数式编程,否则我不建议您使用Lift for Scala。

我认为,如果放弃在全新项目中使用Scala的机会,那将是一个巨大的错误。真正限制和严重惩罚Scala的是,他们让“逐渐添加一些Scala”到现有Java项目中成为一大难题。如果他们能在这方面努力一点就好了。。。当然,这可能比创建另一种针对JVM的编程语言更困难;)@巫师:怎么会这样?我认为逐渐添加一些Scala是非常容易的。庞大的用户群和丰富的API非常重要。您可以在Scala中使用几乎所有的Java代码,因此我不太清楚为什么这是一笔巨大的交易。您可以轻松使用Scala中的几乎所有Java库,因此,有这么多成熟的开源Java库并不是使用Java而不是Scala的真正原因。非常感谢Egervari,非常有用的信息。