在阅读了slow compiler and Martin Odersky's response之后,我们非常担心使用Scala语言启动大规模的ERP产品(该产品是针对特定行业的大量资金支持的)。
编辑基于以下响应:分裂成不同的模块是一种选择。但是,在任何大型项目中,人们都应该这样做/规划。这不可能是我们的解决办法。
Martin本人承认(请参阅上面的链接) Java编译器比Scala快10倍(大约两年前)。这对我们来说很可怕,我们不能在Dev的机器上等待几个小时(例如,当我们做清洁的构建时)。马丁说得很清楚,别指望将来会有奇迹发生。
我们唯一的选择是使用连续编译。我们的目标是IntelliJ的想法。
一些指导是非常感谢的。
谢谢
Mk
发布于 2013-08-24 12:01:42
编译速度绝对不是Scala的优势之一,但您可以通过将一个大型项目构造为一组具有树状依赖关系的小项目(例如,核心实用程序;仅依赖于这些实用程序的核心库;依赖于核心和外部数据库库的数据库接口等)来限制它对您的影响。然后,在大多数开发周期中,您可以假装您正在处理一个较小的项目,并为相对罕见的事件保留更大的构建。
我最大的项目相当小(不到5分钟的编译时间;40k LOC),但即便如此,我还是以这种方式细分了它,这意味着我很少需要等待超过一分钟的时间才能完成任何事情。它确实需要一些规则来维护,也需要一些重构(当我将普通代码块从树的叶子(重新编译的速度很快)移到根(而不是复制)时),但对我来说效果很好。
https://stackoverflow.com/questions/18416338
复制相似问题