インストール(macOS)
コミュニティ版 ideaIC-2017.3.3.dmg で試しています。
.dmg
ファイルを開く- アプリケーションをドラッグして、
/Applications/
にコピー。 - アプリケーションを開く
- Import IntelliJ IDEA settings from: と聞かれる
- 初回はDo not import settingsで問題ない
- プライバシーポリシーが表示されるので、中身を読んでAccept
- UIのテーマを選択
- どちらでもあとで変えられるので問題ないが、Darculaの方をよく見かける。
- あとで変える場合は、Preferences | Appearance & Behavior | Appearance
- キーマップの選択
- 初めて使う場合はデフォルトのAdapted for OS Xでいいかも。
- あとで変える場合は、Preferences | Keymap
- 起動スクリプトを作るかどうかを聞かれる
- 自分はCUIから起動できると嬉しいので、設定する。
- あとで作る場合は、Tools | Create Command-Line Launcher
- デフォルトプラグインの選択
- ビルドツール
- デフォルトのAnt, Maven, Gradleで問題なさそう。
- バージョンコントロール
- デフォルトではCVS, Git, GitHub, Mercurial, Subversion
- CVSとMercurialは使う予定はなさそうなのでオフ
- テストツール
- Swing
- 使う予定はなさそうなのでオフ
- Android
- 使う予定はなさそうなのでオフ
- その他のツール
- Bytecode Viewer
- Eclipse(移行ツールのことかな?)
- Java Stream Debugger
- Task Management
- Terminal
- YAML
- XSLT and XPath
- 分からないけど全てオン
- プラグイン開発
- 使う予定はなさそうなのでオフ
- ビルドツール
- Featured plugins(注目のプラグイン?)
- Scala
- 使う予定はないので入れない
- IdeaVim
- 面白そうだけど入れない
- IDE Features Trainer
- 最初なので入れてみる
- Scala
日本語化
IntelliJ や PhpStorm などの日本語化参照。
プラグイン
あとで入れてみる予定。
- CheckStyle
- FindBugs
- ミューテーションテスト
- PIT mutation testing Idea plugin :: JetBrains Plugin Repository
- 点数が低いのが気になりましたが、実質2件なので何とも言えませんね。
- PIT mutation testing Idea plugin :: JetBrains Plugin Repository
設定(Preferences / Setting)
プリファレンスのうち、現在のプロジェクトだけに影響するものは、マークが付きます2。 Welcome画面の場合は、デフォルト設定に影響します。
Appearance & Behavior
System Settings
- Reopen last project on startup: オフ
- デフォルトでは最後に使用したプロジェクトを起動するが、不要なケースが多いため。
Editor
General
Auto Import
- Exclude from Import and Completion(補完対象から除外)
- 必要ならクラス、パッケージを追加。
Color Scheme
General
- Errors and Warnings
- (検討中)以下のようにWarningとWeak warningを入れ替える。DarcuraテーマだとWarningが目立たず、Weak warningが目立ちすぎるので。。。
- Warning
- Error stripe mark: 756D56
- Effects: AEAE80, Underwaved
- Weak warning
- Background: 52503A
- Error stripe mark: BE9117
Code Style
- Scheme: Default IDE(IDEの設定として管理される)
- Formatter Control
- Enable formatter markers in comments: オン
Java
- Imports
- Class count to use import with ‘*’: 99
- ‘*‘でインポートすべきではないため。
- Names count to use static import with ‘*’: 1
- 逆にstaticの場合は常に’*‘を使うようにしている(いいんだっけ)
- Class count to use import with ‘*’: 99
Inspections
- General
- Duplicated Code
- Testsを’No highlighting, only fix’としている。
- テストコードは無理に重複を排除せず、シンプルにしたほうがいいため。
- Duplicated Code
- Internationalization
- Non-ASCII characters
- Testsを’No highlighting, only fix’としている。
- プロジェクトによるが、テストクラスのみ、日本語を許容している。
- Non-ASCII characters
- Java
- Declaration redundancy
- Actual method parameter is the same constant: Weak Warning
- パラメータが全て同じ定数の場合の警告。あえてそうしているケースもあるため、弱めた。
- Declaration access can be weaker: Weak Warning
- Testsを’No highlighting, only fix’としている。
- 公開APIとして作ったものが警告になってしまうため。
- Unused declaration
- Entry points
- Annotationsに以下のアノテーションを追加
mockit.Mock
(JMockit)
- Annotationsに以下のアノテーションを追加
- Entry points
- Actual method parameter is the same constant: Weak Warning
- Error handling
- Catch block may ignore exception
- 2番目のDo not warn when ‘catch’ block is not emptyをオフ
- catchの引数が使われないときに警告を出すため。
- 2番目のDo not warn when ‘catch’ block is not emptyをオフ
- Catch block may ignore exception
- Javadoc
- Declaration has Javadoc problems
- Testsを’No highlighting, only fix’としている。
- Class
- Scope: public
- publicクラスはJavadocが必須
- Scope: public
- Method
- Scope: public
- publicメソッドはJavadocが必須
- Scope: public
- Inner class
- Scope: public
- public内部クラスはJavadocが必須
- Scope: public
- Declaration has Javadoc problems
- Probable bugs
- ’equals()’ method which does not check class of parameter: オフ
- Apache Commons LangのEqualsBuilder#reflectionEquals()を使うと警告になるた>め。実際は良きに計らえしてくれるので問題ない。
- ValueObjectは別の方法で作成するため不要になるかも。
- @NotNull/@Nullable problems
- 自前で@NotNull/@Nullableアノテーションを定義しているときは、Configure annotationsで追加する。あるいはデフォルトを設定する。
- ’equals()’ method which does not check class of parameter: オフ
- toString() issues
- Class does not override ’toString()’ method: オン
- Declaration redundancy
File and Code Templates
Files -> Class
以下のように、final
を付ける。
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
public final class ${NAME} {
}
File Encodings
ファイルのエンコーディングが設定可能。
Version Control
Confirmation
- When file are created: Do not add
- 一部のファイルだけコミット対象にできるGitのメリットが失われるため。
Build, Execution, Deployment
Compiler
公式サイト
マニュアル
- Java
- ide: まだありません。
- jetbrains: まだありません。
- IntelliJ IDEA