您是否正在使用Scala开发您的企业级应用程序?
编辑:同意,企业这个词没有很好的定义。通过问这个问题,我的意思是问你是否在真正的项目中使用Scala,这些项目不仅仅是用来玩的。将Scala用于个人项目,而不仅仅是它的创建者,属于“真正的项目”类别。
发布于 2009-04-06 02:16:35
问题中使用的“企业”一词显然缺乏需求。一个人的‘企业’应用程序,不是另一个人的吗? SAP正在使用Scala/Lift,这样‘企业’就足够了吗?
归根结底,您可以访问Java平台提供的所有“企业”内容。
很抱歉,我看起来有点像个笨蛋,但这些问题都很糟糕,而且没有明确的答案。更重要的是,有些人可能已经编写了许多你可能认为是“企业”的应用程序,但他们并不是这样做的,因此从来没有这样说过。
编辑
此外,推特喜欢Scala:http://www.slideshare.net/al3x/twitter-3s-scala和一个关于他们经历的采访:http://www.artima.com/scalazine/articles/twitter_on_scala.html
发布于 2009-04-12 17:42:59
用于真实项目的Scala?是的,完全正确。
首先,因为所有Java仍然可用,所以应用程序可以使用我们现有的通用库。这些库是在过去10年中用Java构建的,它们对于访问公司内的其他系统非常重要。
其次,企业应用程序最关键的一点是适应性。变得过于僵化是导致大多数企业应用程序衰败并最终消亡的原因。有两个问题导致了这种僵化,Scala帮助避免了这两个问题。其中一个问题就是代码量太大。Java比C或C++工作得更好,但实现应用程序仍然需要比Scala多得多的代码行。
使用Java,解决代码大小问题需要更高层次的结构:框架、库、可定制的工厂等。这就是为什么我们部署Java EE应用程序(通常是基于Spring的),它们的"lib“目录中有20到50个JAR文件。这种结构本身是完成应用程序所必需的,但它也会在概念复杂性方面产生自己的问题。
Scala不能幸免于概念复杂性的过载,但Scala中的常见编程风格倾向于更小、更具体的程序,而不是用于构建DSL的框架的库。
当然,如果您确实需要用于构建DSL的框架的库,那么能够回调到Java就派上了用场。
发布于 2009-04-06 12:39:19
这可能是你问题的答案(或者不是),但我刚刚了解到推特正在使用Scala进行所有的后端处理(RoR留在界面上)。
https://stackoverflow.com/questions/713629
复制相似问题