提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:鲍佳佳|2020-12-09 11:15:05.480|阅读 173 次
概述:intellij idea大多数发行版都侧重于编辑器功能,但该节的重点是并行编译和编译图表。我们还提供了一些编辑器工具。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
IntelliJ IDEA 2020.3提供了许多实用的功能,例如调试时的交互式提示,Git暂存支持,对Java 15记录和密封类的扩展支持等等。它简化了端点,框架和事件探查器的日常工作。通过基于机器学习技术的更好的代码完成,更直观和有用的新的“Welcome”屏幕以及更好的拼写和语法检查,整个UX得到了改进。简而言之,一切都更好!
大多数发行版都侧重于编辑器功能,但该节的重点是并行编译和编译图表。我们还提供了一些编辑器工具。
1.并行编译
2.编译图表
3.增强的软件包前缀
4. MUnit支持
5. Scala 3改进
6.还有更多!
并行编译
根据官方的Scala开发人员调查,在很大程度上,long compilation times Scala程序员日常工作流程中的主要难题。
尽管加速Scala编译器是一个有价值的目标,并且Scala编译速度在不断提高,但是最直接的解决方案是采用并行编译。此解决方案也是最有效的。通过使用N内核而不是内核,编译时间最多可以减少N几倍,而不是百分之几。
具有多核处理器,大量内存和固态驱动器的现代计算机无疑可以完成任务。因此,Scala编译服务器现在可以并行编译独立的模块:
我们已经调整了默认VM选项,以默认情况下最多支持4个编译线程,这可以显着加快编译速度。如果您的计算机具有许多CPU内核和大量RAM,请随时调整“Settings | Build | Compiler | Scala | Compile Server(可通过“编译服务器”图标上的“Configure”访问)以进一步缩短编译时间。
编译图
为了提高并行编译的效率,您可能需要优化项目模块的结构和Compile Server的VM选项。但是,如果没有明确的指导,此任务将变成猜测游戏。虽然您可以查看模块依赖关系图,但是很难说出如何根据编译线程数来调度这些模块。
此外,Scala文件的编译时间可以相差很大,因此很难仅根据源文件的数量就知道编译一个特定模块需要花费多长时间。最大VM堆大小也是如此:是太小还是太大?编译线程数如何影响RAM消耗?
为了帮助您完成此任务,我们在“Build”工具窗口中将“编译图表”添加为“Chart ”节点:
现在,您可以一目了然地判断何时有优化的潜力。这是典型的情况:
一个模块起到一个瓶颈的作用:如果很多模块都依赖于一个需要长时间编译的模块,可以考虑将该模块拆分成几个部分。如果你的项目只由一个或数量有限的大模块组成,这种方法特别适合。
除了使你的项目具有高度的可并行性之外,细粒度的模块还可以加快单线程编译速度(通过使编译器更容易解析引用),减少消耗的最大内存量(因为编译器不必一次性加载所有的源码),清理IDE的自动完成(因为在范围内没有超级flous类),以及解开项目类之间的依赖关系(参见最小功率规则)。
编译是线程绑定的:如果看到大多数时间所有线程都被占用,请尝试逐渐增加最大线程数。但是请记住实际的CPU核心/线程数-为OS和IDE保留一两个线程,以保持UI响应能力。
线程数过多:如果在编译过程中只需要最大线程数一次或两次,并且额外编译的模块相对较小,则增益仅适中,但您必须分配大部分时间未使用的额外RAM。在这种情况下,请考虑减少最大线程数。
堆大小不足:如果堆大小保持接近最大值,则VM可能会进行过多的垃圾回收。即使没有OutOfMemoryError,编译性能也可能不会达到最佳。考虑增加最大堆大小。
堆大小过多:您的操作系统可以更好地利用该内存,例如文件系统缓存,这实际上可以提高编译速度。
借助更快的编译速度和动态图表来吸引您的注意力,“编译”漫画现在已成为过去。
增强的软件包前缀
现在,Scala插件可以将IntelliJ IDEA的程序包前缀与Scala的链接程序包子句和相对导入结合在一起。尽管这些功能中的每一个都比较模糊,但是并没有以指数方式增加模糊度,而是提供了一个直观且内部一致的系统:
您不再需要忍受空目录链或一遍又一遍地重复相同的程序包前缀。现在,您可以保持目录和软件包的整洁。
MUnit支持
Scala插件已经支持JUnit,ScalaTest,uTest和Specs2。现在是时候我们将另一个条目添加到此列表了:
现在具有对MUnit的支持,具有所有通常的优点:
Scala 3改进
IntelliJ Scala插件已经为即将到来的Scala 3提供了相当长的支持,并且我们正在努力跟上所有新更新。最值得注意的是,Scala插件现在可以理解主要方法的新语法:
工程Hello Worlds从未如此简单!
由于Scala 3仍在开发中,并且API尚未稳定,因此我们实际上只能支持一个版本的Scala3。我们建议每晚使用Scala插件进行构建,以尽快获得“最新,最出色”的功能。在Settings | Languages | Scala | Updates | Channel选择Nightly builds(您可以随时以相同的方式还原到更稳定的版本)。
更多!此版本中还有许多其他功能,包括性能改进和错误修复。
IntelliJ IDEA现已更新至2020.3,因此可以查看IDEA的“新增功能页面,以了解与Scala也相关的平台功能。一定要签出Code With Me,这是一项用于协作开发和配对编程的服务,可让您与他人共享当前在IDE中打开的项目,并实时进行协作。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
IntelliJ在业界被公认为优秀的Java开发平台之一,在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面表现突出,并支持基于Android平台的程序开发。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢