加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

我能做什么对我的scala代码,所以它会编译更快?

发布时间:2020-12-16 09:48:06 所属栏目:安全 来源:网络整理
导读:我有一个大的scala代码库。 ( https://opensource.ncsa.illinois.edu/confluence/display/DFDL/Daffodil%3A+Open+Source+DFDL) 它就像70K行的scala代码。我们在scala 2.11.7 开发变得越来越困难,因为编译 – 编辑 – 编译 – 测试 – 调试周期对于小的更改
我有一个大的scala代码库。 ( https://opensource.ncsa.illinois.edu/confluence/display/DFDL/Daffodil%3A+Open+Source+DFDL)

它就像70K行的scala代码。我们在scala 2.11.7

开发变得越来越困难,因为编译 – 编辑 – 编译 – 测试 – 调试周期对于小的更改太长了。

增量重新编译时间可以是一分钟,这是没有优化打开。有时更长。这是没有编辑很多的更改文件。有时一个非常小的变化导致巨大的重新编译。

所以我的问题:我可以通过组织的代码,这将提高编译时间可以做什么?

例如,将代码分解成更小的文件?这会有帮助吗?

例如,更小的图书馆?

例如,避免使用暗示? (我们很少)

例如,避免使用性状? (我们有吨)

例如,避免大量进口? (我们有吨 – 包边界在这一点上相当混乱)

或者真的没有什么我能做到的吗?

我觉得这个很长的编译是不知何故由于一些巨大的重新编译,由于依赖,我正在想如何减少虚假的依赖….但这只是一个理论

我希望别人能够阐明一些我们可能做的事情,这将提高编译速度的增量变化。

解决方法

你触摸面向对象设计(过工程)的主要问题之一,在我看来,你必须扁平化你的类 – 对象 – trait hierachy和减少类之间的依赖。制动包到不同的jar文件,并将其用作“冻结”并专注于新代码的迷你库。

检查一些视频也来自Brian Will,谁做OO过度工程的案件

即https://www.youtube.com/watch?v=IRTfhkiAqPw(你可以拿好点)

我不同意他100%,但它是一个很好的案例,反对过度工程。

希望有帮助。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读