はじめに:ToDoリストアプリはJava学習の登竜門
Javaを学び始めた初心者が最初に挑戦するアプリケーションとして定番なのが「ToDoリスト」です。このアプリは、シンプルながらもプログラミングに必要な考え方が詰まっていて、基礎から応用までを実践的に学べます。
この記事では、JavaでToDoリストアプリを開発する手順を、実際のコード例を交えながら丁寧に解説します。最終的には、あなたのポートフォリオに載せられるレベルのToDoリストアプリを完成させることが目標です。
ステップ1:開発環境を整えよう
- JDK:Java開発キット(JDK)をインストールします。Java 17以上推奨。
- IDE:IntelliJ IDEAやEclipseを使うと効率的。
- GitHub:コードを管理し公開するのに便利。
ステップ2:最も基本的なコンソール版ToDoリストを作る
import java.util.ArrayList;
import java.util.Scanner;
public class ToDoApp {
static ArrayList<String> tasks = new ArrayList<>();
public static void addTask(String task) {
tasks.add(task);
System.out.println("追加されました: " + task);
}
public static void viewTasks() {
if (tasks.isEmpty()) {
System.out.println("タスクはありません。");
} else {
System.out.println("タスク一覧:");
for (int i = 0; i < tasks.size(); i++) {
System.out.println((i + 1) + ": " + tasks.get(i));
}
}
}
public static void deleteTask(int index) {
if (index >= 0 && index < tasks.size()) {
String removed = tasks.remove(index);
System.out.println("削除されました: " + removed);
} else {
System.out.println("番号が正しくありません。");
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("\n1. タスク追加 2. 表示 3. 削除 4. 終了");
String input = scanner.nextLine();
switch (input) {
case "1":
System.out.print("追加するタスク: ");
String task = scanner.nextLine();
addTask(task);
break;
case "2":
viewTasks();
break;
case "3":
System.out.print("削除する番号: ");
int idx = Integer.parseInt(scanner.nextLine()) - 1;
deleteTask(idx);
break;
case "4":
System.out.println("終了します。");
scanner.close();
return;
default:
System.out.println("無効な入力です。");
}
}
}
}
ステップ3:GUIアプリを作ってみよう(JavaFX)
- JavaFXを使えば、ウィンドウやボタン付きのアプリも作れる。
- ListView、TextField、Buttonなどで見た目を整える。
ステップ4:データ保存機能の追加
FileWriterでテキストに保存。JDBCを使ってMySQLなどのDBに保存。- 永続化することで実用性アップ。
ステップ5:Webアプリとして完成させる(Spring Boot)
- Spring Boot + ThymeleafでWeb画面を作成。
- Spring MVCとJPAでMVC構成を体験。
- 簡易的なログイン機能やバリデーションも追加可能。
ステップ6:GitHubにアップして面接で使おう
- READMEに概要・技術・セットアップ方法を記載。
- スクリーンショットや機能のGIFがあると好印象。
- 「誰かのために書かれた」READMEにしよう。
ステップ7:機能を拡張してアプリを進化させよう
タスクの状態管理
public enum TaskStatus {
TODO, IN_PROGRESS, DONE
}
優先度・締切日を追加
private LocalDate dueDate;
private Priority priority;
ステップ8:テストコードで品質を保証
- JUnitを使ってメソッド単位で検証。
- モック(Mock)を使って外部依存を切り離す。
ステップ9:公開して誰でも使える形にしよう
- HerokuやRenderで無料デプロイ。
- 自分のVPSでも公開可能。
- LINE通知、Slack連携なども挑戦!
ステップ10:ポートフォリオとしての仕上げ
- 説明資料(PDF・スライド)も準備。
- プレゼン練習もしておく。
- 実行環境付きでGitHubに載せれば完璧。
応用編:発展アイデア
- Trello風カンバンアプリ
- チームで共有するプロジェクト管理
- モバイルアプリ連携(Flutterなど)
まとめ:ToDoアプリで学ぶJavaのすべて
ToDoアプリを作る過程は、Javaエンジニアとしての第一歩です。基本構文、設計、テスト、デプロイ、ポートフォリオ作成と、すべてのステップを経験できます。
➡ Javaを基礎から丁寧に学ぶなら「絶対にJavaプログラマーになりたい人へ。」がおすすめ。
➡ アプリのレビューを受けたい、転職も視野に入れている方は「サイゼントアカデミー」で学習を加速させましょう。


コメント