강의

멘토링

로드맵

BEST
Programming

/

Web Development

キム・ヨンハンの実戦Java - 高級3編、ラムダ、ストリーム、関数型プログラミング

最新Javaに必須のラムダ、ストリーム、Javaを活用した関数型プログラミング技術を基礎から実務レベルまで深く学習します。

  • yh
Java
Functional Programming
Lambda
optional

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

こんなことが学べます

  • ラムダ

  • 関数型インターフェース

  • ストリームAPI

  • 任意

  • 関数型プログラミング

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

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

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

•••

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

実務で輝く最新のJava文法と技術

私たちはこれまでJava入門、基本、そして中級1~2編を通じてJavaの基本基を刻んだ後、先進の上級1編2編を通じてマルチスレッド、I/O、ネットワーク、リフレクション、アノテーションといった高度な技術を学習しました。

今回学習する「Java Advanced 3編」では、ラムダ、ストリーム、関数型プログラミングなど、最新のJavaでよく使われる新しい文法や技術を学習します。

  • ラムダ (Lambda)

  • ストリーム(Stream)

  • 関数型プログラミング (Functional Programming)

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

この講義はキム・ヨンハンの実践Javaロードマップ最後の講義で、Java基本文法およびOOP(クラス、ジェネリック、コレクション、資料構造)、マルチスレッド、入出力およびネットワーク活用などを学習した方を対象としています。

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

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

本質的理解の重要性

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

実践的なアプローチ

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

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

今回の高級3編講義は、ラムダ、ストリーム、Javaによる関数型プログラミングを基本機から実務に必要なレベルまで完全にマスターすることを目指します。

特に、単にラムダ、ストリームの文法だけを学習するのではなく、さまざまな実践例とベストプラクティスを通じて、これらの最新技術を実務に正しく適用する方法を深く学習します。

ラムダ、ストリーム、関数型プログラミングなどの技術を知るだけでなく、実践にこれらの技術をどのように適用するかを深く理解し、活用できるように教えます。

講義内容

  • ラムダ基本器と活用法を習得し、フィルタ、マップ、ストリームなどを直接実装して実習します。

  • ストリームAPIの基本理論とさまざまな機能(filter、map、flatMapなど)を学習し、ストリームコレクタとパラレルストリームの活用まで習得します。

  • Optionalやデフォルトメソッドなどの追加機能を学習し、正しい実用的な適用方法を学習します。

  • 命令型、オブジェクト指向、関数型などのプログラミングパラダイムを理解し、Javaによる関数型プログラミングをコードを通じて理解しやすく学習します。


ラムダと関数型プログラミングのコア整理

ラムダと関数型インタフェースの基礎となる

ラムダの必要性、定義、文法、活用のヒントを学びます。また、ラムダで使用するための重要な概念である関数型インタフェースを習得し、Java標準APIに組み込まれているさまざまなインタフェースを効果的に活用する方法を学びます。

ラムダの実務活用とメソッド参照

実務コードでラムダをどのように適用するかを中心とした活用法を学びます。また、匿名クラスとの違いを比較し、ラムダの適切な活用方法を習得し、Java 8で追加されたメソッド参照を通じてコードの簡潔さを高める方法を理解します。

ストリームAPIの完全な理解と実務の活用

ストリームAPIネイティブダージング

ストリームAPIは、ラムダと一緒にJavaコレクションを扱う新しいパラダイムを提示します。ストリームの構造と基本的な使い方を簡単に理解できるように整理し、フィルタリング、マッピング、ソート、リデュースなどストリームが提供する重要な機能を習得し、より簡潔で直感的なコードを書く方法を学習します。

ストリームをより深く、コレクター活用

データ収集と加工のためのCollectorの概念を学習し、 collect()groupingBy()partitioningBy()など、さまざまな収集手法を扱います。実務例を通じて、実務で必須のスキルを学びます。

高度な追加機能と関数型プログラミング

高度な付加機能

Java 8で追加された高度な追加機能を学びます。 Optionalを活用してNPEの問題を回避し、デフォルトメソッドを介してインターフェイスを拡張する際に互換性を維持する方法を学びます。また、パラレルストリームを使用してマルチコア環境でパフォーマンスを最大化する技術を学習します。

関数型プログラミング

Lambda、Stream API、Optionalなど、Java 8以降に追加された機能を使用して関数型プログラミングパラダイムを実装する方法を学びます。命令型、オブジェクト指向、宣言型、関数型など様々なパラダイムを比較し、Javaで関数型プログラミングを効果的に適用する実践ノウハウを身につけます。

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

今回の「キム・ヨンハンの本番Java Javaロードマップ」で私の目標は、本当の実務に必要な基本基盤がしっかり装備された実力ある開発者を作ることです。長い時間をかけて積み重ねた基盤は、時間が経つにつれてより大きな価値を発揮します。皆さんが実務で触れることになる数多くの活用技術を簡単かつ迅速に吸収し、より楽しく成長する開発者として生まれ変わる道に、今回の講義が基礎になることを願っています。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • 開発者就職準備生

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

  • 実務で必要なJavaをより深く理解したい開発者

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

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

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

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

こんにちは
です。

559,140

受講生

36,644

受講レビュー

8,965

回答

5.0

講座評価

25

講座

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

 

저의 개발 인생 이야기

EO 인터뷰 영상

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

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

 

カリキュラム

全体

99件 ∙ (16時間 40分)

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

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

受講レビュー

全体

224件

4.9

224件の受講レビュー

  • bonjeong088610님의 프로필 이미지
    bonjeong088610

    受講レビュー 2

    平均評価 5.0

    修正済み

    5

    100% 受講後に作成

    The best choice I made before enlisting 😊 ++ After completing the course: I first learned Java last year when I entered university. There, I came across Kim Young-han's lectures through a recommendation from a senior, and I was very impressed with the way he explained everything from the principles, step by step, in the introductory and basic courses, even though I knew nothing. Thanks to the hand-drawn illustrations and well-organized PDFs, I was able to learn Java in a fun way and build a solid foundation. And while learning the intermediate and advanced courses, I think I fell in love with the charm of Java and object-oriented programming with fun elements like various design patterns. I started last year and learned a lot while taking Young-han's Java roadmap from the introductory to advanced courses for a year. Thanks to that, I got an A+ and I'm grateful! I'm also looking forward to any additional lectures! Thank you.

    • yh
      知識共有者

      Thank you, bonjeong08 :) Reading bonjeong08's review suddenly reminds me of a story from 20 years ago 😊😊😊 I had a senior colleague whom I respected, and he had studied Java in the military. When I asked him how he studied, he said he carried around a very thick Java book and kept simulating in his head without a computer 😊😊 I'm rooting for you, bonjeong08 :)

  • xuv2님의 프로필 이미지
    xuv2

    受講レビュー 20

    平均評価 4.8

    修正済み

    5

    27% 受講後に作成

    Hello Younghan, first of all, congratulations on successfully completing the Java roadmap! I was really looking forward to this third Java installment, as it covers modern syntax (Lambda, Stream) that I've been wanting to learn so much. I initially intended to take the wild course, but after facing setbacks with Lambda and Optional in the Spring introduction, I decided to complete the entire Java roadmap first. Starting with the introduction, I've now reached the final lecture. Having taken all the Java roadmap courses and reviewed them at least twice, I believe this Java roadmap is truly "an in-depth course based on programming and computer science, not just a simple Java language course." In the past, I had tried to understand Lambda syntax by haphazardly searching through books or online, but I never fully grasped how to actually use it. I tend to be intimidated by unfamiliar terms like functional programming and Lambda. However, from the very beginning of this lecture, the statement "Everyone, Lambda is also an object" immediately helped me understand the content that I had previously found difficult. I wondered why my university professor never mentioned that Lambda is an object, which made me go through so much trouble, and I felt grateful to Younghan for making me understand it with just that one sentence.😆😆😆. Through the introductory and basic courses, I was able to solidify my Java fundamentals. Through the intermediate course, I clearly understood how to handle exceptions and which data structures to use in different situations, and I attempted my first coding test. Through the advanced course 1, I learned about multithreading -> frameworks utilizing multithreading. Through the advanced course 2, I got a taste of how to create dynamic programs through networking and reflection. And through this advanced course 3, I was able to learn about Java syntax that is already commercialized, even though it is considered modern. Also, throughout this entire process, I naturally acquired a lot of computer science knowledge without specifically studying it. In particular, when I first encountered the SOLID principles, I didn't easily understand what each principle meant. However, when I reread the principles towards the end of this roadmap, I realized that they were composed of things that I already considered obvious. Although I may not be able to create something immediately with these advanced skills I've learned, I believe I've taken a step towards Spring, and I'll diligently follow the Spring roadmap as well! "Everything is an object in Java!" "All functions are not some magical trick, but functions written in Java code!" I will keep these two statements in mind and review diligently. I wish you continued success, and once again, congratulations on completing the Java roadmap!

    • yh
      知識共有者

      It's rewarding to see you enjoying the course, xuv2! :) I'm especially glad to see you building a solid foundation in Java fundamentals, step by step. Looking back, I've realized that having a strong grasp of the basics is essential for a deeper understanding of practical technologies like Spring or JPA later on. I also appreciate that you noticed my efforts to explain not only Java syntax but also how essential basic CS concepts are applied in real-world scenarios. Your feedback is truly encouraging :) Thanks to you, I'm motivated to work even harder on preparing the next course! Enjoy your studies and keep growing!

  • dualis5731님의 프로필 이미지
    dualis5731

    受講レビュー 5

    平均評価 5.0

    5

    61% 受講後に作成

    When I first studied lambda expressions and streams, I used the book "Modern Java in Action." While reading this book, I felt like I was getting familiar with these technologies, and I thought the explanations were very well done. But after taking this course up to the streams section, I can confidently say that this course is overwhelmingly better. I haven't studied much, and maybe it's because my skills are lacking that I found other books/courses difficult, but this is the best course/book I've ever encountered. I loved that it didn't feel like the sections were divided, but rather connected, which allowed me to follow the flow. Although I felt there weren't many examples, each example was excellent. I'm currently taking the last course in Younghan's roadmap, and I think this is the best of all the courses. I don't think there's a better course/book for learning lambda expressions/streams for the first time, and I also don't think there's a better course/book for reorganizing your knowledge even if you already know them to some extent. I just wrote this in a stream of consciousness, so the writing is a bit of a mess, but either way, this course is divine. Thank you for creating such a great course. It seems like I can't leave more than two reviews, so I deleted the existing review and rewrote it. 😭😭

    • yh
      知識共有者

      I'm glad to hear that you're enjoying studying, Mr. Jeong Dae-hoon! :) I've actually put a lot of effort into organically connecting the entire section like building blocks to naturally complete a big picture, so I appreciate you noticing these parts. I hope you continue to enjoy studying as you do now and grow significantly! ^^!

  • jjs0107135951님의 프로필 이미지
    jjs0107135951

    受講レビュー 5

    平均評価 5.0

    5

    100% 受講後に作成

    Hello! While taking this lecture, I could feel the beauty that the instructor talked about. Truly, the more I listened to the lecture, the more amazing and interesting the time became. It seems I also feel a sense of regret, to the point where this lecture felt exceptionally short. That's how much I think instructor 김영한 gave a good lecture. Now that you have completed the Java Roadmap, I want to say you truly worked hard. Actually, knowing that this lecture was prepared, edited, pondered over again and again, and uploaded by you alone, I think I also approached it with a passionate attitude, inspired by the instructor's passion. I am currently a 4th-year student in the Department of Computer Engineering at university. I am currently taking a lecture on learning the Spring Framework for backend programming, and what I felt while listening was that my coding skills truly improved several times over, just as the instructor said, like a sponge absorbing. In my current project as well, by applying the Lambda technology I just learned where it can be applied, I was able to become even closer to Lambda. Thank you for coming with such a good lecture this time too! I will continue to strive to become a steadily progressing developer! In my path as a developer, instructor 김영한 is a reliable presence, as if walking together. I respect you!! Thank you!

    • yh
      知識共有者

      Thank you, 열정맨님, for the review that is also encouraging to me! If you felt the beauty of development through this course, you'll be able to continue growing well as a developer with curiosity and enjoyment :) I encourage you to study joyfully and consistently, so that you may grow significantly!

  • aaa9461621님의 프로필 이미지
    aaa9461621

    受講レビュー 6

    平均評価 5.0

    5

    61% 受講後に作成

    期間限定セール

    ¥45

    24%

    ¥9,024

    yhの他の講座

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

    似ている講座

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