0

在阅读了慢速编译器和 Martin Odersky 的回复后,我们非常担心使用 Scala 语言启动大规模的 ERP 产品(针对特定行业的大量资金)。

根据以下回复进行编辑:拆分为不同的模块是一种选择。但这就是在任何大型项目中应该做/计划的方式。这不能成为我们的解决方案。

Martin 本人承认(请参阅上面的链接)Java 编译器比 Scala 快 10 倍(大约两年前)。这对我们来说很可怕,我们不能在 Dev 的机器上构建(例如,当我们进行干净构建时)等待数小时。马丁明确表示,不要指望未来会出现任何奇迹。


我们唯一的选择是使用持续编译。我们预期的 IDE 是 IntelliJ Idea。

  1. 我不确定它将如何影响开发人员的机器/Ide 的性能?
  2. 另外当我点击保存时,它是否也会尝试编译我目前正忙于编写的代码文件?

一些指导真的很感激。

谢谢
Mk

4

1 回答 1

2

编译速度绝对不是 Scala 的优势之一,但是您可以通过将大型项目构建为具有树状依赖关系的一组较小项目(例如核心实用程序;仅依赖于这些实用程序的核心库)来潜在地限制它对您的影响; 依赖于核心和外部数据库库的数据库接口等)。然后在大多数开发周期中,您可以假装您正在处理一个较小的项目,并为相对罕见的事件保留较大的构建。

我最大的项目相当小(编译时间不到 5 分钟;40k LOC),但即便如此,我还是以这种方式对其进行了细分,这意味着我很少需要等待超过一分钟才能完成任何事情。它确实需要一些纪律来维护和一些重构(当我将常见的代码块从树的叶子中移动时,它可以快速重新编译,而不是复制它),但对我来说效果很好。

于 2013-08-24T12:01:42.597 回答