我们应该选择使用Scala来代替Java吗?

4
我们将启动一个新项目,涉及培训所有的.net开发人员学习Java(框架/生态系统等)。我们有很多用C#编写的代码,但由于需要全部改写成Java,这些代码都可能被浪费。我认为问题在于,在接下来的一年或两年中,我们将无法交付任何成果,因为我们将花费大部分时间重新制作之前的代码,但现在是用Java来实现。
由于我们的团队分布在世界各地的不同办公室,并且有很多Java开发人员(20至30名)和使用.NET的10名开发人员,因此我们希望让所有的开发人员使用相同的语言/平台,以便开始重用组件/模块。因此,我能理解管理层的观点。
昨天,我了解到Scala,并想知道是否最好使用它来与当前用C#编写的产品配合使用,这样我们至少可以在一年内获得一个可用的产品。同时,一年后,我们还将拥有可以在Java世界中使用的模块,而这时我们正在迁移产品的其他部分。
这样行得通吗?
JD

2
你是在问是否可以使用Scala来编译你的C#代码吗? - Philippe
3
叹息,如果人们能停止关闭他们不理解的问题... - Angel O'Sphere
1
@AngelO'Sphere 在我看来,这个问题应该属于程序员.SE,因为它不是具体的实现问题。我不知道为什么他们更喜欢关闭而不是移动它。 - mbx
1个回答

2

他们怎样表现出不太可能投入时间? - AndreasScheinert
1
Scala最适合那些熟悉函数式编程的人,例如那些具有强大数学背景的人。如果您具有面向对象、过程化的背景,仍然可以使用Scala,但需要付出相当大的努力才能获得其好处。 - Peter Lawrey
6
如果您在C#代码中大量使用了LINQ并熟悉底层的FP概念,那么Scala可能是更好的选择。如果不是这样,您永远不会发现缺乏抱怨Java具有更好的工具支持的人。 - Kevin Wright
7
有趣的文章,尽管我认为Pollak夸大了他的观点来证明自己的观点。此外,Pollak谈论说服一个团队从Java转换到Scala。 OP的情况不同:他谈论的是即将发生的变化,因此选择不是无所事事与学习Scala的相对优劣之间的选择:而是选择从C#转向一个更原始但相当相似的语言(Java)或转向一个更先进、更强大且整体更好的语言(Scala)。如果我是C#程序员,我肯定会认为学习Java是一种退步。 - Luigi Plinge
“学习新东西很难,所以我会坚持使用C[++|#]”——我认为这不是一个人应该采取的心态。 - Raphael
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接