【段階別】未経験必見! 業務で求められるJavaの具体的なスキルと勉強法
目次
こんにちは。飯塚です。
今回は未経験からプログラマになりたい、もしくはなったばかりで「何から勉強したらいいのか分からない」「情報がたくさんありすぎて、結局何が必要なのか分からない」という悩みを抱えている方へ、業務で最低限身に着けておいてほしい技術とそれを学ぶための検索キーワードをまとめました。
目次
- レベル1:Javaのプログラムを書く環境準備/Hello Worldを出力
- レベル2:基本的な計算/文字列の操作/日時の操作
- レベル3:if文/for文/Exceptionの原因調査
- レベル4:主なコレクション(Array、List、Map)の操作
- レベル5:メソッドの呼び出し/デバッグ/正規表現
- レベル6:クラスの継承/Override/インターフェース
- まとめ
レベル1:Javaのプログラムを書く環境準備/Hello Worldを出力
| 観点 | 検索キーワード例 |
|---|---|
| Javaを開発する環境を準備できる | Java 環境構築 エディター windows10 |
| クラスファイルを作成できる | Java eclipse(※) クラス 作成 |
| mainメソッドを作成できる | Java mainメソッド サンプル |
| コンソールに文字を出力できる | Java コンソール 文字出力 |
| “Hello world”を出力するJavaのプログラムを作成できる | Java Hello World サンプル |
| IDE上でプログラムを実行できる | Java eclipse プログラム 実行 |
※eclipse・・・Javaのプログラムを書いてそのまま実行できる便利なエディター(IDE)の1つ。eclipseの代わりに自分が使っているIDEを検索キーワードに含める。
「Java」という言語名を含めて検索するのがポイントです。初心者はJavaScriptやPythonなど、全く別のプログラミング言語のサンプルを見て、書き方の違いに混乱して時間を無駄にしてしまうことが多いです。
レベル2:基本的な計算/文字列の操作/日時の操作
| 観点 | 検索キーワード例 |
|---|---|
| 基本的な型を宣言できる(int, double, long, String, Integer, Double, Long) | Java int 使い方 |
| 四則演算ができる | Java 計算 サンプル |
| 文字列の操作ができる (文字列結合、切り取り、置換) | Java 文字列結合 |
| 基本的な型変換(String, Integer, Double) | Java 型変換 String Integer |
| Date型、Calendar型を使うことができる | Java 日付 使い方 |
| Date型<=>String型の変換ができる | Java 型変換 Date String |
最初のうちは「サンプル」「使い方」をキーワードにして、ネットのソースをコピーしてまずはとにかく動かすのが速いです。算術演算子とか浮動小数点とか難しい単語が出てきますが、読み飛ばしてもプログラムは書けるようになります。
レベル3:if文/for文/Exceptionの原因調査
| 観点 | 検索キーワード例 |
|---|---|
| if文を使える | Java if文 サンプル |
| 基本的な値の比較ができる (StringとString、数値の大小、オブジェクト型を==で比較しない) | Java 文字列 比較 |
| for文を使える | Java for文 サンプル |
| for文の中でbreak, continueを使える | Java for文 break サンプル |
| よくあるExceptionの意味が分かる(NullPointerException, ArrayIndexOutOfBoundsExceptionなど) | Java NullPointerException とは |
| Exceptionが発生している行を突き止めることができる | Java スタックトレース エラー 読み方 |
| try catchを使える | Java try catch サンプル |
| try catch finallyを使える | Java try catch finally サンプル |
レベル4:主なコレクション(Array、List、Map)の操作
| 観点 | 検索キーワード例 |
|---|---|
| 配列の宣言、要素の追加、削除ができる | Java 配列 使い方 |
| Listの宣言、要素の追加、削除ができる | Java List 使い方 |
| コレクションのnullチェック、空チェックができる | Java 配列 空チェック |
| Mapの宣言、要素の追加、削除ができる | Java Map 使い方 |
| 配列<=>Listの型変換ができる | Java 配列 List 変換 |
| List=>Mapに変換できる | Java List Map 変換 |
| コレクション内の要素の重複を除外できる | Java List 重複 除外 |
| コレクション内の要素を並び替えできる | Java List ソート |
Javaのコレクションの操作で、ラムダやStreamといったキーワードが出てきますが、最初のうちは混乱するので触れないほうが賢明です。まずは地道にifやforを使って要素の追加や削除、詰め替えを覚えましょう。
レベル5:メソッドの呼び出し/デバッグ/正規表現
| 観点 | 検索キーワード例 |
|---|---|
| あるメソッドから同クラスのメソッドを呼び出して使うことができる | Java メソッド 使い方 |
| あるメソッドから別クラスの非staticメソッドを呼び出して使うことができる | Java 別クラス new メソッド 呼び出す |
| あるメソッドから別クラスのstaticメソッドを呼び出して使うことができる | Java 別クラス static メソッド 呼び出す |
| プログラムをデバッグ実行して、1行ずつ進めることができる | Java eclipse(※) デバッグ 方法 |
| 正規表現を使って置換ができる | Java 正規表現 改行 削除 |
| ファイルの読み込み、書込みができる | Java テキストファイル読み込み サンプル |
| DoubleとBigDecimalの精度の違いを理解して、使用できる | Java Double BigDecimal 精度 違い |
※eclipse・・・主要なIDEの1つ。デバッグの方法はIDEによって異なるので、自分が使っているIDE(VSCode, IntelliJなど)の名前に置き換えて検索する。
レベル6:クラスの継承/Override/インターフェース
| 観点 | 検索キーワード例 |
|---|---|
| カプセル化、Getter/Setterを使える | Java Getter Setter 使い方 |
| クラスの継承ができる | Java クラス 継承 |
| オーバーライドしてメソッドを拡張できる | Java オーバーライド 使い方 |
| 抽象クラスを利用して実装できる | Java 抽象クラス 使い方 |
| インターフェースを利用して実装できる | Java インターフェース 使い方 |
| 外部のライブラリ・APIを利用して開発できる | Java Apache POI 使い方 |
まとめ
いかがでしょうか。まずは習うより慣れよの精神で、1周目はひたすら書いて動かすのがおススメです。1つ1つを考えすぎると進まないので、じっくり悩むのは2周目以降が良いでしょう。
もう1つのポイントは「このキーワードで調べればわかるだろう」という感覚を磨くことです。実業務でも何も見ずに書けるようになる必要はないので、調べ方だけ覚えれば何とかなります。
アシスタントリーダー Iizuka 技術の入門・まとめ系を中心に書いてます。あとで読み返したいと感じていただける記事を目指しています。