Real-World Java - Advanced Part 3, Lambda, Streams, and Functional Programming by Kim Young-han

Learn the essential modern Java technologies of Lambda, Stream, and functional programming with Java, from the basics to the practical level, in depth.

(5.0) 수강평 291개

강의소개.상단개요.수강생.short

난이도 초급

수강기한 무제한

Java
Java
Functional Programming
Functional Programming
Lambda
Lambda
optional
optional
Java
Java
Functional Programming
Functional Programming
Lambda
Lambda
optional
optional

먼저 경험한 수강생들의 후기

먼저 경험한 수강생들의 후기

5.0

5.0

bonjeong08

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.

5.0

xuv2

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!

5.0

정대훈

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. 😭😭

강의상세_배울수있는것_타이틀

  • Lambda

  • Functional Interface

  • Stream API

  • 선택 사항

  • Functional programming

Ranked 1st in cumulative number of students enrolled in domestic development field
Kim Young-han's Practical Java Made Right

Just knowing Java grammar? That won't do!

Former Technology Director of Woowa Brothers, Cumulative Students Surpass 400,000
Why Kim Young-han created Java lectures

•••

“I wanted to create a proper Java course that would create proper developers needed for real work.”

The latest Java syntax and techniques that shine in practice

So far, we have covered the basics of Java through Java Introductory, Basic, and Intermediate 1 and 2, and learned advanced technologies such as multithreading, I/O, networking, reflection, and annotations through Advanced 1 and 2 .

In this "Advanced Java 3" lesson, you will learn new grammar and techniques frequently used in modern Java, such as lambda, stream, and functional programming.

  • Lambda

  • Stream

  • Functional Programming

Kim Young-han's Practical Java Roadmap

This lecture is the last lecture of Kim Young-han's Practical Java Roadmap , and is intended for those who have learned basic Java grammar and OOP (classes, generics, collections, data structures), multithreading, input/output, and network utilization.

>> Introducing the Java Roadmap Guide to help you learn effectively and appropriately for your purpose .

The lecture "Kim Young-han's Practical Java - Advanced Part 3"

The importance of essential understanding

Rather than simply learning Java's syntax and features, we delve deeply into why those features are necessary and how they can be applied in practice.

A practical approach

Rather than simply conveying theories, it provides step-by-step understanding of the necessity of Java technology through illustrations and example codes that help understanding. In addition, through various examples, you can understand how each technology is utilized in practice.

Our goal is more than just grammar.

This advanced 3-part course aims to completely master functional programming using lambdas, streams, and Java from the basics to the level required for practical use.

In particular, rather than simply learning the grammar of lambda and streams, you will learn in depth how to properly apply these cutting-edge technologies in practice through various practical examples and best practices.

I will teach you how to apply and utilize technologies like lambda, streams, and functional programming in practice, beyond simply knowing them.

Lecture Contents

  • Learn the basics and usage of Lambda, and practice implementing filters, maps, streams, etc.

  • Learn the basic theory and various functions (filter, map, flatMap, etc.) of the stream API, and learn how to use stream collectors and parallel streams.

  • Learn additional features such as Optional and default methods, and learn how to apply them correctly in practice.

  • Understand programming paradigms such as imperative, object-oriented, and functional, and learn functional programming in Java in an easy-to-understand way through code.


Lambda and functional programming core summary

Mastering the basics of lambda and functional interfaces

Learn about the necessity, definition, grammar, and usage tips of lambda. Also, learn about functional interfaces, an essential concept used with lambda, and learn how to effectively utilize various interfaces built into the Java standard API.

Practical use of lambda and method reference

Learn the core usage of lambdas in real-world code. Also, learn how to properly use lambdas by comparing their differences with anonymous classes, and understand how to increase code conciseness through method references added in Java 8.

Complete understanding of Stream API and practical application

Stream API Basics

The Stream API, along with Lambda, presents a new paradigm for handling Java collections. We will organize the structure and basic usage of streams so that they are easy to understand, and learn how to write more concise and intuitive code by learning the core functions provided by streams such as filtering, mapping, sorting, and reducing.

Deeper streams, using collectors

Learn the concept of Collector for data collection and processing, and cover various collection techniques such as collect() , groupingBy() , and partitioningBy() . Learn essential skills in practice through practical examples.

Advanced add-ons and functional programming

Advanced Add-ons

Learn advanced features added in Java 8. Learn how to prevent NPE problems using Optional and maintain compatibility when extending interfaces using default methods. Also, learn techniques to maximize performance in multicore environments using parallel streams.

Functional Programming

Learn how to implement the functional programming paradigm using features added after Java 8, such as lambda, stream API, and Optional. Compare various paradigms, such as imperative, object-oriented, declarative, and functional, and acquire practical know-how to effectively apply functional programming in Java.

“Rather than thinking about what more I should teach, I thought more deeply about what absolutely must be known.”

In this 'Kim Young-han's Practical Java Java Roadmap', my goal is to create a capable developer who has solid fundamentals that are necessary for actual work. The fundamentals that are built over a long period of time become more valuable as time goes by. I hope that this lecture will serve as a foundation for you to easily and quickly absorb the numerous practical technologies that you will encounter in the field and grow into a developer who grows more enjoyably.

강의소개.콘텐츠.추천문구

학습 대상은 누구일까요?

  • Aspiring developer

  • For those who have studied Java but want to solidify the fundamentals

  • Developers who want to gain a deeper understanding of Java for practical use.

선수 지식, 필요할까요?

  • Kim Young-han's Practical Java - Advanced Part 1 - Multi-threading and Concurrency

  • Kim Young-han's Practical Java - Intermediate Level 1 & 2

  • Kim Young-han's Practical Java - Fundamentals

강의소개.지공자소개

580,255

수강생

39,862

수강평

9,060

답변

5.0

강의 평점

26

강의_other

My goal is to provide education so that you can become a truly practical and competent developer.

 

The story of my life as a developer

EO Interview Video

Gaebalbadak - A Country Youth Becomes the King of Development

Solving concerns about employment and career changes

 

더보기

커리큘럼

전체

99개 ∙ (강의상세_런타임_시간 강의상세_런타임_분)

해당 강의에서 제공: [object Object]
강의 게시일: 
마지막 업데이트일: 

수강평

전체

291개

5.0

291개의 수강평

  • xuv2님의 프로필 이미지
    xuv2

    수강평 27

    평균 평점 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!

  • 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 :)

  • leehohseg6358님의 프로필 이미지
    leehohseg6358

    수강평 6

    평균 평점 5.0

    5

    30% 수강 후 작성

    • 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!

    • dh222님의 프로필 이미지
      dh222

      수강평 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! ^^!

    yh님의 다른 강의

    지식공유자님의 다른 강의를 만나보세요!

    비슷한 강의

    같은 분야의 다른 강의를 만나보세요!

    강의상세.할인문구

    $53,900.00

    30%

    $59.40