강의

멘토링

로드맵

BEST
Programming

/

Programming Language

キム・ヨンハンの実戦Java - 高級編1、マルチスレッドと並行性

マルチスレッドと並行性を基礎から実務レベルまで深く学習します。

  • yh
자바
실습 중심
백엔드
김영한
Java
oop
thread
multithread
concurrent

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

こんなことが学べます

  • マルチスレッド

  • 同時実行性

  • スレッドプールとExecutorフレームワーク

  • プロセスとスレッド、スケジューリング、コンテキストスイッチング

国内開発分野累積受講生1位、
きちんと作ったキム・ヨンハンの本番Java

単にJava文法を知っていますか?これはできません!

元優雅な兄弟たち技術理事、累積受講生40万人突破
キム・ヨンハンがJava講義を作った理由

•••

「本当の実務に必要なきちんとした開発者を作る、きちんとしたJava講義を作りたかったのです」

実務を考えたJavaマルチスレッドとの同時性

これまで、私たちは「Java入門」「Java基本」 、「Java中級1、2 」を通じてJavaプログラミング基礎とオブジェクト指向の概念固め、その基盤の上に様々な中級機能を学びました。

今回学習する「Java上級1編」では、Javaマルチスレッド技術と同時性の問題を深く取り上げます。

  • Java マルチスレッドプログラミング (Java Multithread Programming)

  • 並行性(Concurrency)

  • プロセス(Process)とスレッド(Thread)、スケジューリング(Scheduling)

  • コンテキストスイッチング(Context Switching)

キム・ヨンハンの本番Javaロードマップ

この講義はキム・ヨンハンの実践Javaロードマップ5番目の講義で、Java基本文法やOOP(クラス、ジェネリック、コレクション、資料構造)などの中級概念と機能を学習した方を対象としています。

>>目的に合わせて効果的に学習できるようにJavaロードマップガイドをご紹介します。

「キム・ヨンハンの本番Java - 上級1編」講義は

本質的理解の重要性

Javaの文法と機能を単に知るだけではなく、その機能がなぜ必要であり、どのように実務に適用できるのかについて深く探求します。

実践的なアプローチ

単なる理論的な伝達ではなく、理解を助ける絵やサンプルコードを使ってJavaテクノロジーの必要性を段階的に理解します。また、さまざまな例を使用して、各技術が実務でどのように利用されるかを理解することができます。

私たちの目標は、単純な文法以上の本質です。

今回のJava上級1編講義では、マルチスレッドと同時性をCS基本機から始め、実務に必要な活用技術まで完全にマスターすることを目指しています。

なお、高級1編はこれまで公開された「キム・ヨンハンの実戦Java」シリーズの中で最も膨大な分量で構成されています。それだけ最初は概念をつかむことは難しいかもしれませんが、講義を通じてマルチスレッドと同時性のパラダイムをうまく備えていれば、今後プログラミングをする上で(どんな言語を書いても)ずっと活用できる基本機になってくれるでしょう。

皆さんが単にスレッドを知ることを超えて、実務に必要なJavaマルチスレッド技術と同時性問題を本当に深く理解し、また実務で正しく活用できるように教えていきます。

以降に学習する「Java高級2~3編」では

Java上級1編以降に続く上級2、3編(予定)では、I/O、ネットワーク、アノテーションを活用する方法を学びます。さらに、ラムダ、ストリーム、および最新の機能に焦点を当てたモダンなJavaを学び、実際の実務でベストプラクティスを探索するために必ず先行するべき能力を養うことを目指しています。

講義内容

  • CS理論の背景の上に

    スレッドの基本を習得します。

  • 並行性の問題を解決する方法と高度な同期技術を学びます。

  • 実務で使用するマルチスレッド技術を完全にマスターしてみます。

基盤を固めるCS理論学習

スレッドを扱う前に、概念を確実に理解するために必要なCS理論を学びます。プロセス、スレッド、マルチスレッド、オペレーティングシステムのスケジューリングなど、基盤となる重要な知識を尽くします。

プロセスとスレッド (Process & Thread)

マルチタスク(Multi-Tasking)

スケジューリング2(@ Schedule)

スレッドの基本

スレッドの作成と制御、スレッドの生成サイクル、メモリの可視性と並行性の問題の理解と解決など、並行性の問題を解決するより良い方法と高度な同期技術まで学習します。

スレッド制御

スレッドライフサイクル

メモリの可視性 Volatile

Synchronized 同期

ReentrantLock - 高度な同期

スレッド制御 - さまざまな例

スレッドの複数の高度な技術学習

スレッドを活用するときに理解する必要がある生産者 - 消費者の問題を学びます。この問題を解決するLock-Free技術であるCASの原理と、マルチスレッドの状況で活用できる同期コレクションの原理と活用法を一緒に学習します。

生産者 - 消費者の問題 (Producer-Consumer Problem)

CAS (Compare And Swap)

同期コレクション (Synchronized Collection)

実務で使用するマルチスレッド実践技術学習

Future、スレッドプール、Executorフレームワークの原則と実践的な活用方法まで、実際のJavaプログラミングに必要なマルチスレッドコアテクノロジを完全にマスターします。

Futureの動作原理

スレッドプールとExecutorフレームワーク - 原則

スレッドプールとExecutorフレームワーク - 実用化

「どんなことをもっと教えなければならないのかよりも、必ず知っておくべき内容が何なのかをさらに深く悩みました。」

今回の「キム・ヨンハンの本番Java Javaロードマップ」で私の目標は、本当の実務に必要な基本基盤がしっかり装備された実力ある開発者を作ることです。きちんと知って使用する際に役立つ概念を固めておくことで、今後のエンジニアとしての力量を育てられるようにお手伝いしたいと思います。この講義を通じて、多くの方々が今後進む基盤を、より簡単で、楽に、そして確実に積み重ねることができることを願っています。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • 開発者就職準備生

  • Javaを勉強したが、基礎をきちんと固めたい方

  • 実務で必要なJavaをもっと深く理解したい開発者

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

  • キム・ヨンハン氏の実践Java - 中級1、2編

  • キム・ヨンハンの実践Java - 基本編

こんにちは
です。

558,936

受講生

36,632

受講レビュー

8,965

回答

5.0

講座評価

25

講座

진짜 실무에 필요한 제대로 된 개발자가 될 수 있도록, 교육하는 것이 저의 목표입니다.

 

저의 개발 인생 이야기

EO 인터뷰 영상

개발바닥 - 시골 청년 개발왕 되다

취업과 이직에 대한 고민 해결

 

カリキュラム

全体

118件 ∙ (20時間 48分)

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

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

受講レビュー

全体

427件

5.0

427件の受講レビュー

  • maxjc님의 프로필 이미지
    maxjc

    受講レビュー 34

    平均評価 4.7

    5

    8% 受講後に作成

    I was so happy to hear that Younghan-nim's lecture was open in the first half of 2024. I hope you always take care of your health and continue to give great lectures. Java skills and finger practice are the 'national rule'~

    • yh
      知識共有者

      Thank you for your first class review, Jongcheol Park :) I hope you have a fun year studying and growing greatly in 2024!

  • profit069님의 프로필 이미지
    profit069

    受講レビュー 21

    平均評価 5.0

    5

    100% 受講後に作成

    I remember struggling with creating threads without thinking and bugs while making games with Java Swing in school. At that time, I really hated threads.. Thanks to Younghan's lecture, I realized that threads are this fun. It was a lot of content, but the difficult content was explained repeatedly so that I could understand it and it was firmly embedded in my head. Thank you! In particular, Younghan's strength is that he explains the basics before explaining difficult technologies. I thought the Future interface and Executor would be really difficult in this lecture, but it was really easy because I only properly understood producers and consumers. Thank you~

    • yh
      知識共有者

      Infraon, I hope you can enjoy using multi-threading in the future :) I'm rooting for you!

  • transmission님의 프로필 이미지
    transmission

    受講レビュー 27

    平均評価 5.0

    5

    5% 受講後に作成

    I came to see the opening of the lecture while struggling with other languages due to livelihood issues. **A game like Blade has also come out, so I wonder if you are going on summer vacation to play it since it has been opened. ㅎㅎㅎ :) As I got caught up in work, the lectures started to pile up, so I think you noticed my laziness and told me that I still have a long way to go, so I will take a look and use my annual leave and run the lectures and make up my mind to finish before the end of the year. Thank you for always giving me informative lectures. ps. Surely.. JVM won't come out, right? (Maybe you will?)

    • yh
      知識共有者

      Thank you Marin Frog :) Since multithreading and concurrency are not easy topics, I tried to explain them as easily as possible by adding many pictures and refining the content :) It took a lot of time and energy, but I feel encouraged by the thought that I have organized the things I learned over a long period of time and with difficulty, so that people in the next generation can learn them easily and quickly :) I will also recharge well and prepare hard for the next lecture :) ps. Since I like practical things, I think I will mainly cover basic theories that are related to or can be used in practice :) So I don't think I will go down to JVM :)

  • audwls19956001님의 프로필 이미지
    audwls19956001

    受講レビュー 6

    平均評価 5.0

    5

    33% 受講後に作成

    What can I say about Young-han's lectures? They're simply the best. I was frustrated because I didn't understand the concept of threads, but while watching the instructor's lecture, I realized, "Ah, that's what they meant in the company back then!" and my understanding improved. I'm ashamed to admit, but as a 3-year employee, I felt that I lacked the basics, so I'm studying from the beginning again. There is a lot to learn, but I haven't been able to develop a habit of studying consistently, so I feel impatient and guilty, and I studied while crying. However, I gained strength from reading the lecture reviews and the comments Young-han left, and I keep reminding myself while watching the messages based on the lecture progress rate. Studying is not easy, but I will keep working hard and moving forward! As an aside, I see Young-han's face more often than my family's faces, so I feel like he's family now. 😊

    • yh
      知識共有者

      I see you're overcoming a difficult time well. I believe that if you continue to learn steadily while strengthening your fundamentals, you will definitely become a better developer. I can feel how hard you're studying, it feels like a family 😊😊. I'm always cheering you on!

  • jangyubbin님의 프로필 이미지
    jangyubbin

    受講レビュー 6

    平均評価 5.0

    5

    30% 受講後に作成

    期間限定セール

    ¥45

    24%

    ¥9,005

    yhの他の講座

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

    似ている講座

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