IntelliJ IDEAパーフェクトガイド
技術評論社
著者:横田一輝
はじめに
第1章 IntelliJ IDEAの概要
1-1 IntelliJ IDEAとは
IntelliJ IDEAは統合開発環境
統合開発環境(IDE)の歴史
IntelliJ IDEAとEclipse
IntelliJ IDEAで利用できるプログラム言語
Scalaとは
1-2 IntelliJ IDEAの特徴と主な機能
IntelliJ IDEAの特徴
IntelliJ IDEAが利用できるプラットフォーム
IntelliJ IDEAには無償版と有償版がある
COLUMN JetBrains社のIDE
IntelliJ IDEAの主な機能
1-3 システム開発とは
プログラミングの流れ
コンパイルとは
COLUMN 構文エラーと論理エラー
デバッグとは
ビルドとは
テスティングとは
リファクタリングとは
第2章 IntelliJ IDEAをはじめよう
2-1 IntelliJ IDEAのインストール
IntelliJ IDEAのインストール前に知っておくこと
IntelliJ IDEAの入手先
IntelliJ IDEAの旧バージョンを利用したい場合
IntelliJ IDEAのインストール
IntelliJ IDEAの初期設定
IntelliJ IDEAの初期画面
COLUMN IntelliJ IDEA以外のIDE
2-2 IntelliJ IDEAの日本語化
Pleiades日本語化プラグインとは
Pleiades日本語化プラグインの導入
2-3 IntelliJ IDEAの起動と終了
IntelliJ IDEAの起動
COLUMN 今日のヒント
IntelliJ IDEAの終了
2-4 IntelliJ IDEAの画面構成
IntelliJ IDEAの開発ワークフロー
IntelliJ IDEAの基本構成
IntelliJ IDEAの画像構成
COLUMN Eclipseの構成との比較
ツール ウィンドウの切り替え操作
COLUMN Eclipseのショートカットキーとの比較
第3章 IntelliJ IDEAの基本機能を理解する
3-1 IntelliJ IDEAの初期設定
起動後の画面設定
プロジェクトを開く場合の動作設定
エディター画面での設定
COLUMN コード補完中の文字の大文字と小文字の自動変換を無効にするについて
COLUMN UTF-8とは
プラグインのインストール
設定のインポートとエクスポート
JDK(Java SE Development Kit)をインストールする
3-2 IntelliJ IDEAをカスタマイズする
プラグインの設定画面を開く
COLUMN アップデートの通知について
プラグインをインストールする
COLUMN 「Scala」プラグインのインストール前と後について>
プラグインの有効/無効化
「マーケットプレース」を経由せずにプラグインを入手する
JetBrains 公式サイトからプラグインをダウンロードする
COLUMN 「Version History」の「Compatibility with」項目について
USBメモリなどから「プラグイン・ファイル」をインストールする
3-3 プロジェクトを作成する
プロジェクトの作成
Javaクラスを作成する
COLUMN パッケージとドメイン
プロジェクトを閉じる
プロジェクトを開く
複数のプロジェクトを開く
プロジェクトを移行する(エクスポート)
プロジェクトのインポート
COLUMN プロジェクトの種類について
既存のプロジェクトをテンプレートとして利用する
Scalaプロジェクトを作成する
Scalaのプログラムを作成して実行するまでの手順
第4章 コーディング機能
4-1 コード補完機能を使いこなす
コード補完機能の使い方
スマート補完
ステートメント補完
メインメソッドの自動定義
Javaクラスの自動インポート
ファイル内のJavaクラスをすべて自動インポートする
4-2 エディターでマクロを使用する
マクロを記録する
COLUMN マクロの記録は慎重に
マクロを再生する
マクロを編集する
マクロのアクションについて
COLUMN マクロが保存されているファイルの場所
マクロをショートカットキーに割り当てる
COLUMN マクロに割り当てたショートカットキーを解除する場合
4-3 スクラッチファイルを作成する
スクラッチファイルとは
Java用のスクラッチファイルを作成/実行する
Scala用のスクラッチファイルを作成する
4-4 エディターのカスタマイズ
エディターの表示設定
コードを折りたたむ
画面の切り替えと分割
ソースファイルを別のウィンドウで表示する
コードの比較
クラスやメソッドの構造を確認する
クラスやメソッドの階層や呼び出し関係を確認する
ナビゲートで目的のクラスやメソッドに移動する
第5章 デバッグ機能
5-1 ブレークポイントを設定する
ブレークポイントを使わないデバッグ
COLUMN 電球マークの修正案はあくまでエラー解決の候補
論理エラーを解消する
ブレークポイントを設定する
ブレークポイントを解除する
5-2 デバッグ作業でブレークポイントを使用する
ブレークポイントを使用したデバッグの手順
デバッグを停止する
デバッグ中に操作する
COLUMN デバッグとテスト
5-3 デバッグ操作の具体例
ブレークポイントを使ったデバッグ操作の具体例
COLUMN すべてのブレークポイントを除去する
ステップ・インを使ったデバッグ
ステップ・オーバーとステップ・アウト
強制的にステップ・インする
COLUMN ブレークポイントのマークの種類
5-4 高度なデバッグ操作
ブレークポイントの設定をカスタマイズする
変数の値を追跡する
「変数」ペインから変数の値を変更する
「監視式」ペインを活用する
COLUMN 変数の監視はスコープでのみ有効
第6章 リファクタリング
6-1 リファクタリングの目的
なぜリファクタリングが必要なのか
リファクタリングの目的
リファクタリングを実施すべきタイミング
COLUMN リファクタリング作業の注意点
6-2 サポートしているリファクタリング機能
リファクタリング機能がないと
IntelliJ IDEAがサポートしているリファクタリング機能
COLUMN 文字列の下に緑の波線
COLUMN JavaとScalaのリファクタリングメニューについて
6-3 リファクタリングを体験する
実践的なリファクタリングを行う
メソッドを外部クラスへ移動する
リファクタリングによるクラスの継承
第7章 IntelliJ IDEAのテスト手法
7-1 テスティングの目的
ソフトウェア開発におけるテスト
JUnitによるテストのメリット
JUnit の観点はホワイトボックステスト
ホワイトボックステストと網羅条件
7-2 JUnitによる基本テスト
元のソースプログラム
COLUMN Scalaプログラミングでのテスト
テストケースを作成する
assertEqualメソッドを使う
assertSame/assertNotSameメソッド
assertEquals/assertSameメソッドの違い
assertArrayEqualsメソッド
assertNull/assertNotNullメソッド
assertTrue/assertFalseメソッド
7-3 JUnitによるテスティングを体験する
JUnitとアノテーション
JUnit5 のアノテーションを検証する
アノテーションを追加する
条件分岐のJUnitテスト
複数の分岐条件を網羅する
COLUMN @Disabledでテストを無効にする
7-4 Specs2とScalaTestの基本
ScalaのテストではSBTを利用する
SBTプロジェクトを作成する
Specs2とは
Specs2を利用する
Specs2による基本的なテスティング
ScalaTestとは
ScalaTestによる基本的なテスティング
第8章 IntelliJ IDEAのビルドツール
8-1 ビルドとビルドツール
ビルドとは
Mavenとは
COLUMN Scalaのビルドツール
Mavenを利用する
COLUMN Mavenプロジェクトについて(補足)
ビルドファイルを編集する
8-2 Gradleの基本操作
Gradleの特徴
Gradleプロジェクトを作成する
Gradleの基本操作
Gradleのビルドファイルを編集してJARファイルを実行する
8-3 Gradleによるビルド体験
Gradleからプログラムをテストする
GradleでJavadocを作成する
Groovyでビルド処理を記述する
Groovyでその他のタスクを実行する
アクションリストを使う
8-4 ScalaのSBTによるビルド体験
SBTプロジェクトでビルド時の設定を行う
COLUMN Scalaのチュートリアル
第9章 チーム開発
9-1 チーム開発に必要な前提知識
グループとチームの違い
チーム開発とチームワーク
チーム開発で重要なバージョン管理
バージョン管理システム
ブランチ機能
9-2 Gitによるチーム開発
Gitとは
GitHubとは
GitHubを利用してみる
リポジトリーを作成する
プロジェクトをコミットする
コミットしたプロジェクトをGitHubへアップロードする
COLUMN イベントログでエラーがでたとき
COLUMN リポジトリーを任意のディレクトリーに作成する
GitHubのプロジェクトを共有する(プロジェクトのチェックアウト)
9-3 Gitの実践
GitHubのプロジェクトを共有する(バージョン管理)
COLUMN コミット時に警告が表示された
GitHubのプロジェクトを共有する(ブランチによるバージョン管理)
付録
macOSでIntelliJ IDEAを使う
索引