강의

멘토링

커뮤니티

NEW
Programming

/

Web Development

[Java実務プロジェクト上級編] Spring Core + H2ベースのフードトラックキオスクシステム制作

実務感覚を身につけたい入門開発者のためのJava深化プロジェクト講義! Spring Core、JdbcClient、H2 DBで構成されたコンソールベースのキオスク注文システムを一緒に作っていきます。

10名 が受講中です。

  • Kevin
Java
Spring Boot
DDD
h2db
spring-framework

こんなことが学べます

  • 要求事項を分析し、機能単位で整理して構造化する方法

  • 顧客/管理者観点のコンソールUIを分離してドメイン中心に機能を分ける方式

  • 複雑なアプリケーションをドメイン単位で設計する思考能力

  • ドメイン駆動設計の実践的適用

  • Spring Core環境でJdbcClientを使ってDBを連携する実習経験

  • 実際のサービスのように動作するコンソールベースの注文/販売システム実装能力

  • 基本的なCRUDを超えて状態変化とフローを制御するロジック構成能力

  • クラスとrecordの役割区分

  • equals()を利用したオブジェクトの同等性/同一性比較の実際の活用

  • テンプレート/コールバックパターンを利用した共通化技法

[Java実務プロジェクト応用編] Spring Core + H2ベースのフードトラックキオスクシステム制作

「JavaとSpring Coreを活用した注文システムプロジェクトで実務実装力を身につけましょう!」


この講義は、コンソールベースのフードトラックキオスクアプリケーションを直接実装してみる実戦型プロジェクト講義です。
Javaの基礎を身につけた入門者や、Springを少し勉強したものの実際のアプリケーション実装には自信がない方のために準備しました。
1部で学んだ基礎プロジェクトの経験をもとに、今回はSpring Core、JdbcClient、H2データベースを活用してより複雑な注文システムを段階的に実装していきます。

この講義では、このような現実的なフードトラックキオスクを通じた注文フローをJavaとSpring Coreで直接実装することができます。

⭐なぜ注文ドメインを知る必要があるのか?

「注文」ドメインは、コマース、配達アプリ、予約システム、キオスク、POSシステムなど
ほとんどの実務アプリケーションにおいて欠かすことのできない核心機能です。


単純に「商品をカートに入れて決済する」というレベルを超えて、以下のような複雑なビジネスロジックがこの中にすべて含まれています。

  • ユーザー/管理者観点のフロー分離

  • ショッピングカート → 決済 → 注文ステータス変更 → 配送/注文処理完了

  • 注文の修正、キャンセル、返品などの状態遷移処理

  • 決済連携とレスポンスフロー管理

  • 注文履歴および統計処理

このような「注文フロー」を直接設計し実装した経験は
単純なCRUDではない「本物のアプリケーション」を作ることができる開発者として成長するための重要な足がかりとなります。


この講義を通じて「注文ドメインに関する基礎」をマスターしましょう。

Javaデベロッパーになるための皆さんに翼をつけてくれると確信しています。

🧱 講義の特徴

  • プロジェクトベースの実習中心:
    単純な模倣ではなく、与えられた要求事項に従って受講生がまず考えて実装してみる実習中心の構成です。

  • 事前学習 → 直接実装 → 実装説明方式で進行:
    講義で必要な技術があれば別途授業で概念を先に押さえ、
    受講生が先に実装した後、講師版のコードと説明で比較学習します。

  • 実務志向設計:
    要件分析から構造化、実装、テストまでの全過程を実務の流れに合わせて体験できるよう構成しました。

✨ 受講後の成長ポイント

  • Java + Spring Coreで構成されたドメイン中心の思考力向上によるアプリケーション実装経験の確保

  • 実装力・設計力向上によるバックエンド実務感覚の習得

  • Webアプリケーション開発のための基礎体力強化

  • 単純な文法ではなく実際のプログラムを作ることができるという自信の獲得

👀[ハイライト映像プレビュー] 設計から実装まで

🎬 「要件分析段階」ハイライト映像


🎬 「アプリケーション設計段階」ハイライト映像

🎬 「レイヤー別基本構造作り」ハイライト動画

🎬 「ゲストモードレイヤー別ロジック実装」ハイライト動画

🎬 「コードリファクタリング」ハイライト動画

🧰 使用技術スタック

  • Java 17+

  • Spring Framework Core

  • Spring JdbcClient

  • H2インメモリデータベース

  • JUnitテストフレームワーク

  • Domain-Driven Design (DDD) ベース設計

  • レイヤードアーキテクチャ構造

👨‍🏫 このような方におすすめします

  • Java文法は知っているが実戦プロジェクト実装には自信がない方

  • Spring Coreを学習したが、直接応用した経験が不足している方

  • コンソールベースで実際に動作するアプリケーションを作ってみたい方

  • Java バックエンド開発者として基礎をしっかりと固めたい方

  • 1部の講義を受講して、より複雑なシステム実装をやってみたい方

❤️ 講師の真心

この講義は単純な「コードの写経」から脱却し、アプリケーションを直接設計・実装しながら自分だけのアプリケーションを完成させる経験をお届けするために準備いたしました。

どんなに良い技術でも、自分自身で悩みながら活用できなければ「華やかな花火大会を呆然と眺めるだけで、感動的なその気持ちを外に表現できないこと」と同じだと思います。


コードを眺めているだけではなく、実務で皆さん自身が「コードを書ける人」になるための第一歩となるよう、最後まで支援いたします。

Java開発者になるという夢を諦めずに、最後まで最善を尽くして必ず開発者として入門できることをお祈りしています!

✅ 何か気になることはありますか?

Q. 1部の講義を受講していませんが、この講義だけ聞いても大丈夫でしょうか?

可能です。

ただし、この講義は1部よりも複雑な構造と技術が含まれているため
基礎的なコンソールアプリケーション実装フローと要件分析の経験がない場合は、1部受講後に進めることをお勧めします。

Q. JdbcClientは初めて聞くのですが、難しくないですか?
JdbcClientはSpring 6.1から新しく導入された機能で、既存のJdbcTemplateよりも簡潔で直感的です。

講義で使い方を一つ一つ丁寧に説明いたしますので、ご心配いただく必要はありません。

Q. コンソールプロジェクトですが、あまりにも単純すぎませんか?
単純なCRUDを超えて、注文状態管理、ユーザー/管理者の役割分離、統計機能など
実際のWebベースシステムでもそのまま活用可能な構造と設計を体験していただけます。

実装してみればお分かりになると思いますが、思っているほどそれほど単純ではありません。

Q. このプロジェクトをポートフォリオとして活用してもよろしいでしょうか?
もちろんです。

注文に関連するドメインはWebベースのサービスでよく見られるドメインであるため、この分野のドメインを理解することは重要だと思います。

不便なUIを持つコンソールベースの注文システムをこのように実装できるという事実は、逆に考えると「Javaの基礎をしっかりと身につけるために学習をきちんと行ったんだな」という印象を与えることができるため、良いポートフォリオになると思います。

💡受講前の参考事項

実習環境

  • オペレーティングシステムおよびバージョン(OS)

    • PC環境のOSであれば、どのOSでも構いません。

    • ただし、JDK 17以上がインストール可能である必要があり、IntelliJ IDEが実習を進めるのに支障がない程度のコンピューティングパワー(CPU、メモリなど)を備えることをお勧めします。

  • 使用ツール

    • JDK 17(最小仕様)

    • IntelliJ IDE

      • 講義で使用するIntelliJ IDEはUltimate版ですが、無料版であるCommunity版を使用していただいても全く問題ありません。

      • IntelliJ IDEでなくても、使い慣れたコードエディタツール(Visual Studio Codeなど)があれば、それを使用していただいても構いません。

    • Spring Boot 3.x以上

      • 講義ではSpring Boot 3.4.4バージョンを使用しており、Spring 3.xバージョンであれば講義を受講するのに問題ありません。

    • Gradle 7.3(最小仕様)以上

      • JDK 17に対応するGradleバージョンが7.3であるため、両者のバージョンを合わせておきました。

      • バージョンの互換性で問題が発生する場合は、Java Compatibilityを参考にして、できるだけバージョンを合わせていただければと思います。

    • JUnit 5(最小仕様)以上

注意事項

  • 講義で使用される学習資料およびコードをブログなど個人スペースで使用される場合は、講義タイトルおよび講師名を記載し、講義リンクを追加していただく必要があります。その他の無断配布は許可されませんので、ご了承ください。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Java文法は習得したが、実戦アプリケーションを作った経験がない方

  • Spring Coreの基本概念は知っているが、直接適用した経験が不足している方

  • 実務のように要求事項を分析し、設計から実装まで全体の流れを体験してみたい方

  • 単純なCRUDを超えて状態変化とドメイン流れを制御するロジックを学びたい方

  • 1部の講義を受講し、より複雑な構造と技術を学びたい方

  • Webアプリケーション開発前に、コンソールプロジェクトで基礎体力を身につけたい方

  • プロジェクトを実装しながら「このコードはなぜこのように書いたのだろう?」を考えてみたいジュニア開発者

前提知識、
必要でしょうか?

  • Java文法とOOP基本概念

  • Spring Core使用経験(Bean登録、DI等)

  • JDBC または SQL 基本概念

  • 簡単なコンソールプロジェクト実装経験

こんにちは
です。

6,339

受講生

235

受講レビュー

108

回答

4.8

講座評価

7

講座

- 주력 언어 또는 기술 : Java, Spring Framework, RxJava, Reactor, Spring WebFlux

- (주)코드스테이츠(https://www.codestates.com)에서 Senior Educational Software Engineer(Backend)로 활동
(From 2022.03 To 2024.01.31)

- 프리랜서 개발자 및 강사로 활동(From 2024.02)

- 저서

안녕하세요? Kevin이라고 합니다. ^^

인프런에서 이렇게 강사로서 여러분들을 만나게 되어서 너무 반갑습니다.

어떤 분야든 마찬가지겠지만 특히나 소프트웨어 개발자는 끊임없이 변화하는 트렌드에 뒤처지지 않도록 항상 자기 자신을 갈고 닦는것이 개발자로써 살아남는 유일한 방법이라고 생각하며 항상 배우는 자세로 즐겁게 소프트웨어 개발을 하고 있는 개발자 중 한 명입니다.

제가 가지고 있는 지식과 경험이 다른 분들에게 조금이나마 도움이 되기를 바라면서 인프런에서 강좌를 시작하였습니다.

앞으로 수강생분들에게 현실적으로 도움이 되는 다양한 강좌로 꾸준히 찾아뵙도록 하겠습니다. 감사합니다.

 

질문이나 의견은 언제든지 환영하니, 이메일(it.village.host@gmail.com)로 편하게 얘기해주세요.

 

カリキュラム

全体

45件 ∙ (10時間 35分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

まだ十分な評価を受けていない講座です。
みんなの役に立つ受講レビューを書いてください!

期間限定セール

¥35,750

35%

¥6,815

Kevinの他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

同じ分野の他の講座を見てみましょう!