スプリングブート、実務でうまく使いたいなら? 深い設計と開発を体験してください。
本講義は、Javaバックエンド開発の実践コースを開始する最初の講義です。スプリングブートとJPA実務完全征服ロードマップ をまず確認してください。 (リンク)
VIDEO
本当! Spring BootとJPAの活用
Spring Bootは、複雑で難しいSpringフレームワークを簡潔で使いやすくします。ここにJPAが提供する強力なORM技術を追加することで、高い生産性を維持しながら機敏にWebアプリケーションを開発することができます。このような点から、Java陣営ではSpring BootとJPAを活用してWebアプリケーションを開発すること が世界的な傾向です。
講義目標 スプリングブートとJPAを知っていても、実務でこれらの技術を活用してWebアプリケーションを設計し開発することは別の次元の問題です。通常、Webアプリケーションは次の開発プロセスを経ます。
一般的なWebアプリケーション開発プロセス 要件分析 ドメインとテーブルの設計 アーキテクチャの構成 コアビジネスロジックの開発 Web層の開発 テスト パフォーマンスの最適化 このレッスンでは、掲示板のような単純な例を超えて、実務の複雑な状況を再現できる難易度の高い例を使用します。そして、要件分析から設計、開発、テスト、パフォーマンスの最適化まで、これらすべてのプロセスを順番に進めます。この作業に近い例として、Webアプリケーションを最初から最後まで一緒に設計し開発して みると、この過程の中でSpring BootとJPAを活用する正しい方法を自然に習得できます。そして実務でこれらの技術をどのように活用すべきかを理解します。特に実務において重要な性能最適化案も段階的に学んで適用できます。
全体のレッスンは、Webアプリケーションを設計および開発する1編とAPIを開発し、パフォーマンスを最適化する2編で構成されています。本講義はそのうちの最初のものに該当する1編です。
2編API開発と性能最適化は別途の講義 で、下段[関連講義]にリンクをかけておきました。 学習コース 第1編 - Webアプリケーション開発実務に近い 複雑な例、最初から最後までコーディングで完成!
パート1は、メンバー、商品、注文ドメインを持つシンプルなWebアプリケーションを設計および開発します。 進行順は次のとおりです。
プロジェクト環境設定: プロジェクトを作成し、Spring BootとJPA、ビューテンプレートであるタイムリーフ、ロンボク、そしてデータベースが正常に動作するようにプロジェクト環境を設定します。ドメイン分析の設計: 要件を分析し、ドメインとテーブルを設計します。ドメインとテーブルの設計が完了したら、JPAを使用してエンティティクラスを作成し、エンティティクラスとテーブルをマッピングします。ドメイン開発: メンバー、商品、注文ドメインのコアビジネスロジックを開発し、テストケースを作成して検証します。 Web層の開発:設定 したドメインがWeb環境で動作するようにコントローラとビューテンプレート(タイムリーフ)を開発します。実際に動作する画面を確認できます。 第2編 - API開発とパフォーマンスの最適化 最近では、ビューテンプレートを使用して直接サーバーからHTMLを作成して応答するのではなく、APIにJSONデータを投稿して返すことがよくあります。 Spring BootとJPAを使用してAPIを開発する際の注意点と正しい設計方向を理解し、パフォーマンスまで考慮してAPIを完成することが今回の目標です。
パート2は、パート1で作成したドメインに基づいて外部で使用できるREST APIを開発しています。そして、段階的にルックアップ用APIのパフォーマンスを最適化します。このプロセスにより、実務上必要なJPAの照会クエリのチューニングに関連する部分を素早く解放します。
API開発の基本: 基本的には、登録、変更、照会用のREST APIを開発します。 API開発の高度化: 実務からJPAとして照会用APIを開発するときは、注意点と正しい設計方向をお知らせします。 JPA遅延ローディングの問題を解決し、段階的にさまざまなパフォーマンス最適化方法を説明します。 実務必須の最適化: Spring BootとJPAを使用するときに慎重に使用しないと、実務が障害につながる可能性があるものについて説明します。 学習方法 この講義はほとんど練習 で行われています。そのため、最初から最後まで、自分が直接コーディング しながら講義に従わなければならない最も多くのものを得ることができます。
ちなみに、このレッスンではスプリングブートやJPA自体は詳しく説明しません。 これらのスキルをある程度知っている人がこれらのスキルを最大限に活用できるようにするため、実務でWebアプリケーションをうまく作成するのに 役立ちます。したがって、基本的には、スプリングやJPAの理解がある状態でこのレッスンを聞くことをお勧めします。しかし、SpringやJPAをまだよく知らなくても、最後まで従うことで、JavaでWebアプリケーションをどのように開発して完成するか全体的な感覚を捉えることができます。以後、本人が不足していると考える基盤技術を満たしていく方法で学習しても良いです。
関連講義 基本編 活用編 参考書 本はより深い内容を勉強したい人のために 参考書と考えてください。 (本がなくても講義のための別途資料が提供されます。)