原創|行業資訊|編輯:龔雪|2023-04-17 11:22:35.027|閱讀 123 次
概述:本文將教大家如何手動嘗試改善 IntelliJ IDEA 和 Scala 插件體驗,歡迎下載最新版IDE體驗~
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
IntelliJ IDEA,是java編程語言開發的集成環境。IntelliJ在業界被公認為最好的java開發工具,尤其在智能代碼助手、代碼自動提示、重構、JavaEE支持、各類版本工具(git、svn等)、JUnit、CVS整合、代碼分析、 創新的GUI設計等方面的功能可以說是超常的。
在普通筆記本電腦上,成熟IDE是最復雜的一種應用程序。JetBrains官方團隊收到有關 Scala 插件在某些情況下出現延遲或者總體上運行緩慢的反饋,有時技術團隊可以提供一些幫助,但另一些時候,比如您的代碼庫龐大復雜,或者機器較為陳舊時,同樣也無能為力。今天我們將為大家介紹如何手動嘗試改善IntelliJ IDEA 和 Scala 插件體驗,例如實現配置調整和保持良好的編碼習慣。
首先,來看 IntelliJ IDEA 中性能至關重要的兩個主要領域:
在這兩種情況下,我們都可以通過相似的方式提升性能,可以:
從資源開始,這里基本上意味著提供更多內存。但是首先建議是啟用內存指示器,您可以右鍵點擊 IntelliJ IDEA 的底部面板,然后在彈出菜單中點擊內存指示器。 它會告訴您IntelliJ IDEA實際使用了多少內存,讓您按需設置內存大小。
如今,普通筆記本電腦有 8 GB 或更多 RAM,通常足以讓 IntelliJ IDEA、其他應用程序和操作系統正常運行。
檢查 IntelliJ IDEA內存消耗后,通過打開 Help(幫助)菜單并選擇 Edit Custom VM Options(編輯自定義 VM 選項)來打開 idea.vmoptions 文件,將 -Xmx 設置更改為略大于內存指示器顯示的值。 請注意,超過一定值后,增加 -Xmx 將無法提升性能。 在這里,增加到 4 GB 有一些效果,之后額外的提升幾乎可以忽略不計。
對于 Scala 插件,如果您決定從 IntelliJ IDEA 中編譯應用,增加可用內存也可能加快編譯速度。 為此請轉到 Settings | Build, Execution and Deployment | Scala Compiler Server(設置 | 構建、執行和部署 | Scala 編譯器服務器),并修改 VM 選項。
CPU 方面,Scala 插件最重要的功能之一(也會使用大量 CPU)是它的一組檢查。 檢查是一種邏輯,可以檢查代碼,尋找特定類型的問題。 有些問題非常簡單,比如永遠不會被修改而可被替換為不可變值的 private 變量。 其他問題,如未使用的 public 字段,可能需要很長時間調查。
如果您感覺部分檢查沒有用處,將其禁用可能會提高高亮顯示速度??梢赞D到 Settings | Editor | Inspections(設置 | 編輯器 | 檢查),查看可用檢查列表,禁用不需要的檢查。 另外,瀏覽設置也是全面了解 Scala 插件功能的好方法。
接下來,我們將深入探究 Scala 插件眾多檢查中的 3 個。 每個檢查都只是插件邏輯的一小部分,對于不同用戶可能會產生不同的影響。
1. Type check can be replaced by pattern matching(類型檢查可被替換為模式匹配)
這個檢查會在一系列 if-else 語句中查找類型檢查和類型轉換,并建議將其替換為模式匹配。 請注意,即使是最復雜的檢查也有快速路徑來檢查是否不適用于給定代碼段(例如,當其中沒有 isInstanceOf 時)。 但是在某些情況下,您可能想要使用像這樣的代碼,如果您希望它保持這種狀態,可以考慮禁用檢查。
2. Scala 2 syntax can be replaced with Scala 3(Scala 2 語法可被替換為 Scala 3)
只有啟用編譯器選項 -Xsource:3 時,這個檢查才有效。 它會報告可被替換為 Scala 3 的 Scala 2 語法。 如果為兼容性使用 -Xsource:3,但不需要重寫代碼,則可以將其安全禁用。
3. Declaration access can be weaker(聲明訪問可以更弱)和 Unused declaration(未使用的聲明)檢查
對于代碼中的每個聲明,這兩個檢查都將嘗試檢查聲明的使用方式。 如果聲明為 public 或 protected,第一個將起作用,它將檢查聲明是否確實在自己的類、特征或對象的作用域之外使用。如果不是,檢查將提示可以將聲明設為 private,第二個適用于每個聲明 – 它會遍歷聲明的作用域并檢查它是否被使用。
Scala 讓我們能夠以簡潔的方式編寫復雜代碼,但這是有代價的:我們留給 IDE 的越多,它的性能就越差。 如上所示,在許多情況下,如果您執行嚴格的編碼做法,Scala 插件中的一些檢查可能是不必要的。 事實上,如果是要弄清楚聲明是否未被使用或者變量是否可以為值,Scala 插件檢查所做的與我們所做的并沒有太大不同。 我們會在作用域內檢查,嘗試找到疑似與此相關的其他元素,會查找子類、隱式轉換等。
如果審查者因您代碼的復雜性而苦惱,這可能表明代碼還有改進空間,使其更易分析。 同樣,如果您發現 IntelliJ IDEA 因為檢查代碼花費了太長時間而變慢,請考慮調整編碼做法:
您還可以轉到 Settings | Languages & Frameworks | Scala(設置 | 語言和框架 | Scala)中的 Performance(性能)選項卡,查看其中的控件,并考慮項目的性能是否會受到這些控件所處理問題的影響。 例如使用很多隱式形參時,弄清楚它們可能需要很長時間, 或者如果使用大文件,對于每個類和方法,在使用代碼示例的注釋中都有一個文檔條目,Scala 插件將嘗試正確高亮顯示它,您可以嘗試禁用這些功能以及其他一些功能。
到目前為止,我們談到的所有提示都可能在某些特殊情況下對您有所幫助。 通常如果機器足夠好,IntelliJ IDEA的性能應該還不錯。 只有當項目要求特別高時,這些提示才會有用。
但可能出于某種原因,您必須在舊的、性能較差的電腦上使用IntelliJ IDEA,這是還可以嘗試其他操作來改善體驗。轉到 Settings | Appearance & Behavior | Appearance(設置 | 外觀與行為 | 外觀),禁用抗鋸齒和平滑滾動。 字體將顯得不太光滑,滾動瀏覽文件內容時,也會感覺不太流暢,但這兩種功能都會對性能產生一些影響。 如果這還不夠,您可以打開 File(文件)菜單并啟用 Power Save Mode(省電模式)。 這將關閉 IntelliJ IDEA的許多功能,所以我建議只在沒有其他幫助的情況下才這樣做。
如果這對您來說過于極端,您可以從 JetBrains Marketplace 安裝 。 它可以讓您控制 Power Save Mode(省電模式)何時自動打開和關閉,讓您仍然可以在需要時使用 IntelliJ IDEA 的復雜功能。
另一種選擇是禁用類型感知注解器, 您可以點擊 IntelliJ IDEA 主窗口右下角的小 “[T]” 符號完成此操作。
它會阻止 Scala 插件檢查代碼中的類型。 注意,它不會禁用所有錯誤檢查,只禁用那些由于類型不多而導致錯誤的檢查,例如當您嘗試將 String 作為實參傳遞給接受 Int 的方法時。
Jetbrains技術交流群(QQ):786598704 歡迎一起進群討論
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網