#JetBrainsIDEテクニック – Java 17までの主な言語機能とリファクタリング #jbtips


待望のLTSバージョンであるJava 17が2021年9月にリリースされました。

Java 8から、またはJava 11と比較してJava 17では生産性、可読性を高める数多くの新機能が搭載されています。
このビデオではJava 17で利用できる新しい言語機能と、IntelliJ IDEAで適用できるリファクタリング機能をご紹介いたします。

ビデオ内で使っているコードはGitHubでもご確認いただけます。

項目毎にコミットを分けてありますので、差分をご覧いただくと新しい文法でいかにすっきりと書けるかを実感していただけるかと存じます。
JEP 361: Switch Expressions
JEP 378: Text Blocks
JEP 394: Pattern Matching for instanceof
JEP 395: Records

対応IDE: IntelliJ IDEA

#JetBrainsIDEテクニック – 外部ブラウザでプレビュー・リロード #jbtips

JetBrains IDEは2021.2から外部ブラウザでプレビュー中のHTMLをリロードできるようになりました。

エディタ右上に表示されるブラウザアイコンをクリックすると外部ブラウザでプレビューができます。
Cmd + SまたはCtrl + Sでhtmlを保存するとブラウザで表示中のHTMLは自動的にリロードされます。

対応IDE: IntelliJ IDEA、PyCharm、Rider、GoLand、PhpStorm、RubyMine、CLion、AppCode、WebStorm

#JetBrainsIDEテクニック – HTMLのプレビュー #jbtips

JetBrains IDEは2021.1から待望のIDE内HTMLプレビューが行えるようになりました。

やり方は簡単で、エディタ右上に表示されるIDEアイコンをクリックするだけです。
編集中、リアルタイムにレンダリングが行われます。

対応IDE: IntelliJ IDEA、PyCharm、Rider、GoLand、PhpStorm、RubyMine、CLion、AppCode、WebStorm

#JetBrainsIDEテクニック – エディタウインドウの効率的な分割 #jbtips

エディタウィンドウは左右や上下に分割して同じファイルでも異なるファイルでも同時に見ることができます。

プロジェクトツールウィンドウでファイルを開く際、Shift + Enterを押すと分割して右側に開いたり、タブをドラッグ&ドロップして上下左右任意の位置に分割箇所を移動することも可能です。

重要なテクニックですので、ツールウインドウ/エディタレイアウトの管理と共に是非習得してください。

対応IDE: IntelliJ IDEA、PyCharm、Rider、GoLand、PhpStorm、RubyMine、CLion、AppCode、DataGrip、WebStorm

#JetBrainsIDEテクニック – Postfix Completionのカスタマイズ #jbtips

Postfix CompletionはJetBrains IDEで生産性を上げる上で最も重要なテクニックのうちの1つです。
さらにPostfix Completionはご自分で新しいものを定義することもできます。

創造性を発揮して開発をより早く、より正確に、より楽しいものにしましょう!
動画で紹介している .last の他に、Javaでは以下のようなカスタムPostfix Completionを定義するのがオススメです。

キー Applicable
expression types
パターン
last java.util.List $EXPR$.get($EXPR$.size()-1)$END$
last array $EXPR$[$EXPR$.length-1]
ae non void assertEquals($END$,$EXPR$);
at boolean assertTrue($EXPR$);
af boolean assertFalse($EXPR$);

言語によってはまだカスタムPostfix Completionを定義できないものもございます。
以下に、各言語のYouTrackの課題をリンクいたしました。必要な方は是非ログインして投票してください。
Ruby: Ability to add custom Ruby postfix completion
Kotlin: Support custom postfix completion
Scala: Editable Postfix Code Completion for Scala

対応IDE: IntelliJ IDEA、PyCharm、Rider、RustRover、GoLand、PhpStorm、RubyMine、CLion、DataGrip、WebStorm

オンラインセミナー「無料で使えるJetBrains Space」 動画公開 #jbtips

先日開催いたしましたオンラインセミナー、「無料で使えるJetBrains Space」の動画を公開いたしました。

JetBrains Spaceはチーム開発向けのクラウドサービスで、プライベートGitリポジトリやDockerリポジトリが無料で作れるだけでなくチャットや課題、コードレビューなどの機能も充実しております。
このセミナーではJetBrains SpaceとIntelliJ IDEAを連携させて、Gitリポジトリの作成からプロジェクトファイルのコミット、コードレビューといった基本的な開発の流れ行う様子をご紹介しております。

JetBrainsの新しいチーム向けサービス、Spaceを是非お試しください。

#JetBrainsIDEテクニック – リネームリファクタリング #jbtips

JetBrains IDEはIDEがサポートしているあらゆるファイルでリネームリファクタリングを行えます。
シンボルは宣言している箇所から、利用している箇所から、どちらからでもリネームが可能です。複数のファイルにまたがって利用されているシンボル名もまとめてリネーム可能なので修正漏れがありまえん。

Mac Win/Linux
リネーム
Rename
Shift + F6

対応IDE: IntelliJ IDEA、PyCharm、Rider、GoLand、PhpStorm、RubyMine、CLion、AppCode、DataGrip、WebStorm

#JetBrainsIDEテクニック – コードフォーマット

JetBrains IDEはコーディング中は自動的にフォーマットを行ってくれますが、編集を重ねるに従って崩れてくることがあります。
必要に応じてコードの構造を理解しやすい形にフォーマットしましょう。
また、コミット時にフォーマットするようにしておけばコーディング中にフォーマットを気にする必要がなくなります。

Mac Win/Linux
コードフォーマット
Reformat Code
Opt + Cmd + L Ctrl + Alt + L
細かい設定をしてフォーマット…
Reformat File…
Shift + Opt + Cmd + L Ctrl + Alt + Shift + L

対応IDE: IntelliJ IDEA、PyCharm、Rider、GoLand、PhpStorm、RubyMine、CLion、AppCode、DataGrip、WebStorm