강의

멘토링

커뮤니티

BEST
Programming

/

Back-end

トビーのスプリングブート - 理解と原理

スプリングブートの重要な機能を直接作成しながら、スプリングブートの動作原理を理解し、これを通じてスプリングブートをよく学習して使用する方法を学ぶ講義です。スプリングブートが使用するスプリングフレームワークのさまざまな使用法を学ぶことができます。

  • tobyilee
토비의스프링
Spring Boot
Spring
spring-jdbc

学習した受講者のレビュー

受講後に得られること

  • スプリングブートの動作原理

  • Spring Bootが提供する技術と構成を特定して活用する方法

  • Spring Frameworkの核心技術と活用法

  • 独自のスプリングブートモジュールを作成する方法

私の手でフレームワークを作成しながら
スプリングブートの根本を確実に! 🌱

トビーのスプリングブート

Spring Bootのコア機能と動作原理

Spring Bootは、Springアプリケーションを迅速かつ快適に開発するのに役立つツールです。非常に迅速かつ便利にSpringアプリケーションの開発を始めることができるので、魔法のように見えないところで多くの部分を処理してくれます。

Spring Bootは、Springフレームワークを使用するアプリケーションを作成するために使用する事実上の標準になりました。しかし、その利便性の後ろに隠れた動作原理を知らないと、さまざまな限界と障壁に出会うことになります。アプリケーションが成長し、より多くのスキルを適用し、状況に合わせて適用するには、Spring BootがSpring開発をどのようにサポートしているかを知る必要があります。

もしかしたら、こんな悩みましたか? 🤔

スプリングブートでAPIサーバーやバックエンドサービスを開発していますが、スプリングをちゃんと知って使っているのかわかりません。

コミュニティや検索で知ったヒントを適用したところ、スプリングブートで作ったシステム機能が変わって困惑しています。

スプリングフレームワークだけで開発してスプリングブートに移ってきましたが、私が知っていたスプリングの活用方法が無用物になったようです

スプリングとスプリングブートは何が違うのか、スプリングブートが一体何なのか分かりません。

スプリングブートに新しい技術を追加したり、使い方を変えたいのですが、どうするのが合うのか悩みます。

スプリングブートのように自動的に適用できる独自の技術や機能モジュールを作ってみたいです。

このレッスンでは、スプリングブートを効果的に学習して活用するために必要なスプリングブートの重要な動作原理を学びます。あなたは以下の3つのステップでスプリングブートを正しく理解し活用することができます。

1) スプリングブートの動作原理を理解する

スプリングブートの動作原理を知ると、スプリングブートの多くの技術に適用される一貫した方法がわかり、新しい技術パーツを導入する際に素早く学習し、正確に応用できるようになります。毎回検索に依存して、断片的な解決策を見つける手間をかけなくてもいいです。スプリングブートにさまざまな技術が適用された一貫した方法とアプリケーションを習得することで、問題を正確に分析して解決策を見つけることができます。

2)私の手でスプリングブートを作る

Spring Bootの動作原理を知るための最善の方法は、Spring Bootを直接作成することです。 Spring Bootは、Springフレームワークの使い方を学ぶための優れた例でもあります。自分で作ってみながら、スプリングブートの誕生の背景と追求する目標、そしてスプリングフレームワークがどのように利用されて作られたのかなどを考えてみることができます。シンプルだが、コアを詰め込んだコードで直接作成する過程で、スプリングとバックエンドのJava開発の様々な知識を得ることができます。スプリングブートの作成方法を習得したら、独自のスプリングブートモジュールを作成したり、スプリング技術を応用した便利なツールも作成できます。

3) スプリングブートがスプリングフレームワークを利用する方法を理解する

スプリングブートの動作原理を理解すると、スプリングブートがスプリングフレームワークをどのように活用するかがわかります。また、スプリングブートの各種機能についてさらに詳しく見て把握することができます。

  • Spring Frameworkの活用法をアプリケーション開発に直接応用できます。
  • スプリングブートのように、スプリングフレームワークをうまく扱うことができます。
  • Spring Bootスタイルで私が作ったコードをモジュール化して便利に再利用することもできます。

こんな方におすすめですよ🙋

スプリングブートを実務で使用している方

スプリングとスプリングブートをよりよく知って活用したい方

スプリングからスプリングブートへの切り替えを心配している方

Spring Bootをより効果的に学びたい人

スプリンググル(Guru)、トビさんと一緒にいます! 🤗

  • Java言語の基礎知識と、Spring BootでHello Worldレベルのサーバーを作成した経験だけであれば十分に始めることができます。
  • 開発段階ごとに登場するJava Web開発技術、スプリングフレームワークの核心原理、スプリング技術の使い方などを詳しく説明します。
  • スプリングブートのコア動作原理が含まれたコードを直接作成しながら、スプリングブートの構成を分析し、正確に使用できるようにお手伝いします。
  • 私はSpringフレームワークをよりよく知ります。

学習内容📚

1. スプリングブートを見る

スプリングブートが作成された理由、特徴、目標を調べます。スプリングブートがコンテナレスとは何を言うのか、自己主張が強いということは、何が意味するのかを説明し、スプリングブートを理解しなければならない理由を説明します。混乱しやすいコンテナという概念も詳しく扱います。

2. スタンドアロン型アプリケーション

スプリングブートの特徴の1つであるスタンドアロンアプリケーションは、どのように可能かを直接スタンドアロンサーブレットアプリケーション、スタンドアロンスプリングアプリケーションを作成しながら説明します。これにより、Spring Webテクノロジがどのように作成されたか、その過程でSpringコンテナがどのように使用されるかがわかります。

3. Dependency Injection

スプリングするとDIを外せません。 DIの概念とSpringがどのようにDIをサポートするか、テストにどのように適用されるかを調べます。作成しているコードにDIを適用できるようにSpringコンテナを使用します。 DIを使用したデコレータとプロキシの適用についても説明します。






4. 自動構成ベースのアプリケーション

Springの設定情報の種類を調べて、Spring Bootでこれをどのように扱うかについて説明します。 Spring Bootが導入した自動設定(auto configuration)と開発者が作成するユーザ設定(user configuration)について説明します。 Spring Bootで開発したアプリケーションの構造を理解できるようになります。スプリングブートの自動構成がスプリングのさまざまな技術を利用してどのように作られたかを実際の開発を通じて確認することができます。スプリングブートが活用する様々なスプリングアノテーション活用法も習得されます。

5. 条件付き自動構成

Springの@Conditional条件付きBean登録技術をSpring Bootが自動設定にどのように活用しているかを見てください。さまざまな条件を変えることで、アプリケーション構成情報が異なることを直接体験できます。 Spring Bootに直接空の設定を置いたときに自動設定にどのような影響を与えるかを学びます。




6. 外部設定を活用する自動構成

スプリングブートの便利な自動構成は、開発をあまりにも硬く、一方的な方法で制限するわけではありません。 Spring Bootが提供するスキルを簡単かつ柔軟にカスタマイズするための外部設定の活用法を直接実装します。 SpringのEnvironment抽象化とプロパティソースの適用優先順位、置換子の使い方についても学びます。 application.propertiesにリストされている多数のプロパティが、自動設定Beanにどのように関連付けられているか、どのユニットにグループ化されているのかがわかります。

7. Spring JDBC自動構成の開発

Spring JDBCテクノロジの自動構成を直接設計して実装します。これにより、Spring Bootに適用された自動構成の構造を特定するための戦略を学ぶことができます。スプリングブートのようにいくつかの選択肢を置いて設計する方法、そして条件に応じて適切な機能が自動構成を通じて適用されることを実際のコードを作成しながら体験できます。



8. Spring Boot 詳細を見る

これまで自分で作成したSpring Bootに似たコードをSpring Bootに切り替えても、アプリケーションコードが同じように動作することを確認します。これで、Spring Bootで開発するとき、その下で何が起こるのかが頭の中に描かれるようになります。スプリングブートが提供する膨大な自動構成に置かず、次々と分析する方法を学びます。そして、Spring Boot CoreとSpring Web、JDBCに登場する自動設定コードを分析します。


受講前の注意事項📢

練習環境

  • オペレーティングシステムとバージョン(OS) :Windows、Mac、LinuxなどのJavaテクノロジを使用できるデスクトップオペレーティングシステムが必要です。
  • 使用ツール: JDK 11バージョンをインストールしてJavaプロジェクトを開発、実行できる開発環境であるIDEが必要です。
    • 講義では、IntelliJ IDEA Ultimateバージョンを使用します。
    • 無料で利用できる IntelliJ IDEA Community バージョンや STS (SpringSource Tool Suite) を使用することもできます。

学習資料

  • FitHubからサンプルコードを受け取ることができます。各レッスンステップごとにコミットされているので、好きな部分をチェックアウトして見ることができます。
  • 講義に使用するスライドを130ページ分のスライドをPDFファイルにダウンロードできます。
  • 各授業で説明する内容の簡単な説明や参考資料などをまとめた講義ノートをセクションごとにPDF形式で提供します。これは引き続き更新できます。

選手の知識と注意

  • Java言語で書かれたコードを理解するのに十分な言語知識が必要です。 Java5のアノテーションや、匿名クラス、Java8のラムダ式とストリームの使い方をよく理解してください。
  • 全体の流れが気になったら、一例に従わずに映像をすべて視聴してもいいです。その後、再び次々と例に従い、自分でコードを改善したり応用してみることをお勧めします。
  • Spring Boot 3.0でサンプルをアップグレードする方法のビデオを更新する予定です。
  • 追加の説明が必要な部分がある場合は、関連するビデオも追加されます。

予想される質問 Q&A 💬

Q.なぜSpring Bootの動作原理を理解する必要がありますか?

使用するすべての技術の動作原理を知る必要はありません。ちなみに、スプリングブートは動作原理を知ったら、よりよく使用できます。スプリングブートが多くの作業を目に見えないように自動的に処理します。また、これを拡張してアプリケーションで必要な作業を行うことができます。スプリングブートに含まれるスプリングフレームワークの活用方法を習得することも、スプリングベースのアプリケーションを開発するのに役立ちます。

Q. スプリングフレームワークがよく分からないのに講義を聞くことができますか?

Spring Bootが使用するSpringフレームワークの技術を紹介しながら、Springの重要な概念も説明します。スプリングコンテナの動作方法やDI、適用できるデザインパターンまで取り上げます。もちろん、この講義を見てから、関心のあるスプリングフレームワークを技術や動作原理をさらに深く勉強することをお勧めします。

Q.レッスンでは、Spring Boot 2.7を使用していますが、最近リリースされた3.0を使用するのにも役立ちますか?

レッスンのすべての例は、ライブラリのバージョンといくつかの変更されたパッケージ名のみを変更すると、Spring Boot 3.0でも動作します。 Spring Boot 3.0から例を移行する方法もレッスンで説明します。


知識共有者の紹介✒️

履歴

  • 実務開発30年、スプリングフレームワーク開発経歴20年の経験を持っています。
  • 製造、物流、金融、移動通信、コマース、教育、サービスドメインで様々なシステムとサービスを開発してきました。
  • TobyのSpring 3.0と3.1の本を書いた。
  • 韓国スプリングユーザー会(KSUG)を設立し、開発者コミュニティで長期間活動してきました。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • スプリングブートをよりよく理解し、自由に活用したい方

  • スプリングブートを使用していますが、スプリングについてはわからないと感じる方

  • Spring Bootを効果的に学びたい人

  • 自分だけのスプリングブートモジュールを作って使いたい方

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

  • Java言語(Java 8+)

こんにちは
です。

15,442

受講生

943

受講レビュー

408

回答

5.0

講座評価

8

講座

호주에 살고 있는 소프트웨어 개발자입니다. 30년간 다양한 분야의 시스템과 서비스를 개발해본 경험이 있습니다. 

스프링 프레임워크와 관련 기술을 좋아하고 JVM 기반 언어를 주로 사용합니다.

한국스프링사용자모임(KSUG)을 설립하고 활동했고, 토비의 스프링이라는 책을 쓰기도 했습니다.

개발과 관련된 다양한 주제에 관해 이야기하는 것을 좋아합니다. 

 

 

カリキュラム

全体

68件 ∙ (11時間 6分)

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

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

受講レビュー

全体

386件

5.0

386件の受講レビュー

  • sooragenius6352님의 프로필 이미지
    sooragenius6352

    受講レビュー 3

    平均評価 5.0

    5

    96% 受講後に作成

    こんにちは。私は7年以上ばねの実務経験を持っている開発者です。 講義受講後に感じた結論から話すと、トビーのスプリングブックと同様に多くの開発者がこの講義を見てほしいという願いです。 スプリングを勉強しながらトビーのスプリングに触れ、自然にトビ様も知りました。トビーの春の本を読もうとしたら、周辺開発者は"という話をしました。当然、周りの上級開発者がそのように話す理由があると考え、結局トビー様の本を遅く読んでいました。どんな本でも説明する技術的な内容だけでなく、開発し、開発者が問題に直面したときに解決していくインサイトを受け取り、本を全て完読してから 'ありませんでしたか?'という残念が残りました。 トビーのスプリングブートも本と同様に技術的な部分も扱いますが、ウェブの基本原理も講義に含まれながら初心者たちの進入障壁を下げ、本当に川の構成を繊細にしたと思いました。問題を提示し、その問題を解決してリファクタリングしながらテストコードを通じて問題がないことを確認してくれる過程がとても印象深かったし、講義中に気になる点が生じたときにCCTVで私を見ていたのか..?欲しいほどちょうどその気になる点を解いてくださる部分、自分だけのスプリングブートを作っていきながら少しずつ'自分だけの'を削除してスプリングブートに変換していく過程が不思議でした。 "自分だけの"が消えたら消えるほどスプリングブートは私のものになるのではないかと思いました。 最後に開発しながら問題に直面したときの動作を確認するために、Bean間の依存性がどのように編まれているかを把握した後、ロジック確認をして少しのディープダイブをすることになります。この時依存性を知るためにBreak-Pointを歩いて確認するのに、その方法ではなくどのBeanが上がってきたかを確認できるように教えてくれて、他の開発者たちもディープダイブを簡単にできる方法を教えてくれたようです。 トビーのスプリングを読んでから、次の本はいつ出るのかいつも気になっていましたが、講義を通してトビ様をお会いできてとても良かったです!良い声と声のトーン、そして簡単に吸収できるようにする繊細な説明が本当に最高でした。 周辺初心者の開発者にも講義をおすすめし、次の講義も本当に楽しみにしています! ありがとう:D

    • tobyilee
      知識共有者

      詳細な受講評 ありがとうございます。

  • evanhwang님의 프로필 이미지
    evanhwang

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    スプリングをスプリングブートとして最初に触れた現職者です。傷つける名講義です。 かゆい部分を本当に簡単に傷つけてくれたトビー様本当にありがとうございます。 (MyXXXアノテーションがSpring Bootのアノテーションに変わった部分は本当に不気味です。🥶)

    • tobyilee
      知識共有者

      普段持っていた不思議がよく解けて、ブートを使うのに役に立ったなんて私が気持ちがいいです。 ブートのように問題を解放する方法を理解することになりましたので、これをまたうまく応用できればさらに良いです。 ありがとうございます。

  • omg님의 프로필 이미지
    omg

    受講レビュー 205

    平均評価 5.0

    5

    100% 受講後に作成

    講義が出るまでに多くの時間がかかることがわかります。 初講義のスタートを切ったので今後も良い講義をお願いします:)

    • tobyilee
      知識共有者

      これまで周辺の開発者たち、仲間たちだけで分けた多くの話を講義形式でより広く共有してみたい気持ちがあります。お楽しみください。 ありがとうございます。

  • mdir2kor1148님의 프로필 이미지
    mdir2kor1148

    受講レビュー 3

    平均評価 3.3

    5

    100% 受講後に作成

    スプリングブートで魔法のように楽にしてくれるものが実際にどうなるのかについて直接作っていくことで理解できる良い時間であり、その過程に進む学習テストがとても良かったようです。 個人的には全体的にスプリングブートの核心原理と概念を身につけるのも良かったのですが、 1. 簡単に解決できる方法で作っては少し良い方法でリファクタリング 2. リファクタリングしてはテストを通じて前と後が同じ結果を示すか確認 3. 最初は直接実行していき結果を確認しましたが、複雑になって繰り返されるにつれて自動化されたテストに変更 このような進行方式がより興味深く、たくさん学びました。 次の講義もお待ちしております! :)

    • tobyilee
      知識共有者

      実戦でもこのような方法でじっくりと問題を解いていけばいいです。果たしてそうか疑問があればテストを書いてみてください。 ありがとうございます。

  • shyoon991님의 프로필 이미지
    shyoon991

    受講レビュー 66

    平均評価 5.0

    5

    100% 受講後に作成

    良い講義ありがとうございます。 スプリングブートが提供する利便性に馴染み、実際の動作原理や概念について無視するようになりました。 トビー様のおかげで私の不足を埋めることができ、また良い刺激になったようです。 ありがとうございます。 Spring 6も待っています。

    • tobyilee
      知識共有者

      スプリングブートが動作する原理を理解すれば、ブートが提供する利便性をさらに享受できました。 次のスプリングレッスンも一生懸命準備してみましょう。 ありがとうございます。

¥12,349

tobyileeの他の講座

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

似ている講座

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