Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
BEST
Programming

/

Web Development

Thực chiến Java của Kim Young-han - Nâng cao phần 3, Lambda, Stream, Lập trình hàm

Học chuyên sâu về các công nghệ lập trình hàm sử dụng Lambda, Stream và Java, những thứ cần thiết cho Java mới nhất, từ cơ bản đến cấp độ thực tế.

(4.9) 203 đánh giá

3,537 học viên

  • yh
Java
Functional Programming
Lambda
optional

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • Lambda

  • Giao diện hàm

  • API luồng

  • Tùy chọn

  • Lập trình hàm

Xếp hạng 1 về số lượng sinh viên tích lũy theo học trong lĩnh vực phát triển trong nước
Java thực tế của Kim Young-han được thực hiện đúng

Bạn chỉ biết cú pháp Java? Điều này không ổn!

Cựu giám đốc công nghệ của Woowa Brothers, tổng số sinh viên vượt quá 400.000
Tại sao Kim Young-han tạo ra bài giảng Java

•••

“Tôi muốn tạo ra một khóa học Java phù hợp để đào tạo ra những nhà phát triển phù hợp cho công việc thực tế.”

Cú pháp và kỹ thuật Java mới nhất tỏa sáng trong thực tế

Cho đến nay, chúng ta đã tìm hiểu những kiến ​​thức cơ bản về Java thông qua Java Nhập môn, Cơ bản và Trung cấp 1 và 2, đồng thời tìm hiểu các công nghệ nâng cao như đa luồng, I/O, mạng, phản chiếu và chú thích thông qua Nâng cao 12 .

Trong bài học "Java nâng cao 3" này, bạn sẽ học ngữ pháp và kỹ thuật mới thường được sử dụng trong Java hiện đại, chẳng hạn như lambda, luồng và lập trình hàm.

  • Lambda

  • Suối

  • Lập trình hàm

Lộ trình Java thực tế của Kim Young-han

Bài giảng này là bài giảng cuối cùng trong Lộ trình Java thực hành của Kim Young-han và dành cho những người đã học ngữ pháp Java cơ bản và OOP (lớp, kiểu chung, tập hợp, cấu trúc dữ liệu), đa luồng, đầu vào/đầu ra và sử dụng mạng.

>> Giới thiệu Hướng dẫn lộ trình học Java giúp bạn học hiệu quả và phù hợp với mục đích của mình .

Bài giảng "Java thực hành của Kim Young-han - Phần nâng cao 3"

Tầm quan trọng của sự hiểu biết thiết yếu

Thay vì chỉ học cú pháp và tính năng của Java, chúng tôi sẽ đi sâu tìm hiểu lý do tại sao những tính năng đó lại cần thiết và cách áp dụng chúng vào thực tế.

Một cách tiếp cận thực tế

Thay vì chỉ truyền đạt lý thuyết, nó sẽ giúp bạn hiểu từng bước về sự cần thiết của công nghệ Java thông qua các hình ảnh minh họa và mã ví dụ giúp bạn hiểu rõ hơn. Ngoài ra, bạn sẽ hiểu cách sử dụng từng công nghệ trong thực tế thông qua nhiều ví dụ khác nhau.

Mục tiêu của chúng tôi không chỉ là ngữ pháp.

Khóa học nâng cao gồm 3 phần này nhằm mục đích hoàn toàn nắm vững lập trình chức năng bằng lambda, luồng và Java từ những kiến ​​thức cơ bản đến trình độ cần thiết để sử dụng thực tế.

Đặc biệt, thay vì chỉ học ngữ pháp của lambda và luồng, bạn sẽ được học sâu hơn về cách áp dụng đúng các công nghệ tiên tiến này vào thực tế thông qua nhiều ví dụ thực tế và phương pháp hay nhất.

Tôi sẽ hướng dẫn bạn cách áp dụng và sử dụng các công nghệ như lambda, luồng và lập trình hàm vào thực tế, không chỉ đơn thuần là biết về chúng.

Nội dung bài giảng

  • Tìm hiểu những kiến ​​thức cơ bản và cách sử dụng Lambda, đồng thời thực hành triển khai bộ lọc, bản đồ, luồng, v.v.

  • Tìm hiểu lý thuyết cơ bản và nhiều chức năng khác nhau (filter, map, flatMap, v.v.) của API luồng và tìm hiểu cách sử dụng trình thu thập luồng và luồng song song.

  • Tìm hiểu các tính năng bổ sung như phương pháp Tùy chọn và mặc định, và tìm hiểu cách áp dụng chúng một cách chính xác trong thực tế.

  • Hiểu các mô hình lập trình như mệnh lệnh, hướng đối tượng và chức năng, đồng thời học lập trình chức năng trong Java theo cách dễ hiểu thông qua mã.


Tóm tắt cốt lõi của Lambda và lập trình chức năng

Nắm vững những kiến ​​thức cơ bản về lambda và giao diện chức năng

Tìm hiểu về sự cần thiết, định nghĩa, cú pháp và mẹo sử dụng lambda. Ngoài ra, bạn sẽ học về giao diện chức năng, một khái niệm thiết yếu được sử dụng với lambda và học cách sử dụng hiệu quả nhiều giao diện khác nhau được tích hợp sẵn trong API chuẩn Java.

Sử dụng thực tế lambda và tham chiếu phương pháp

Tìm hiểu những ứng dụng cốt lõi của lambda và cách áp dụng chúng vào mã thực tế. Bạn cũng sẽ học cách sử dụng lambda đúng cách bằng cách so sánh chúng với các lớp ẩn danh và hiểu cách tăng tính ngắn gọn cho mã của bạn thông qua các tham chiếu phương thức được thêm vào trong Java 8.

Hiểu biết đầy đủ về Stream API và ứng dụng thực tế

Cơ bản về API Stream

Stream API, cùng với lambdas, mang đến một mô hình mới để làm việc với các bộ sưu tập Java. Chúng ta sẽ sắp xếp cấu trúc và cách sử dụng cơ bản của luồng để dễ hiểu, đồng thời học cách viết mã ngắn gọn và trực quan hơn bằng cách tìm hiểu các chức năng cốt lõi do luồng cung cấp như lọc, ánh xạ, sắp xếp và rút gọn.

Suối sâu hơn, sử dụng bộ thu gom

Tìm hiểu khái niệm về Collector để thu thập và xử lý dữ liệu, đồng thời tìm hiểu nhiều kỹ thuật thu thập khác nhau như collect() , groupingBy()partitioningBy() . Học các kỹ năng cần thiết cho nơi làm việc thông qua các ví dụ thực tế.

Tiện ích bổ sung nâng cao và lập trình chức năng

Tiện ích bổ sung nâng cao

Tìm hiểu các tính năng nâng cao được thêm vào Java 8. Tìm hiểu cách sử dụng Optional để ngăn ngừa sự cố NPE và duy trì khả năng tương thích khi mở rộng giao diện bằng các phương thức mặc định. Ngoài ra, bạn sẽ học các kỹ thuật để tối đa hóa hiệu suất trong môi trường đa lõi bằng cách sử dụng các luồng song song.

Lập trình hàm

Tìm hiểu cách triển khai mô hình lập trình chức năng bằng các tính năng được thêm vào kể từ Java 8, chẳng hạn như lambda, API luồng và Tùy chọn. So sánh nhiều mô hình khác nhau như bắt buộc, hướng đối tượng, khai báo và chức năng, đồng thời tìm hiểu cách thực tế để áp dụng lập trình chức năng trong Java một cách hiệu quả.

“Thay vì nghĩ về những gì tôi nên dạy thêm, tôi nghĩ sâu hơn về những gì nhất định phải biết.”

Trong 'Lộ trình thực hành Java của Kim Young-han' này, mục tiêu của tôi là đào tạo ra những nhà phát triển có năng lực với nền tảng vững chắc cần thiết cho công việc thực tế. Những nền tảng mất nhiều thời gian để xây dựng sẽ trở nên có giá trị hơn theo thời gian. Tôi hy vọng rằng bài giảng này sẽ đóng vai trò là nền tảng giúp bạn nhanh chóng và dễ dàng tiếp thu nhiều công nghệ thực tế mà bạn sẽ gặp trong lĩnh vực này và trở thành một nhà phát triển thú vị hơn.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Ứng viên lập trình

  • Dành cho những bạn đã học Java nhưng muốn củng cố lại kiến thức cơ bản một cách bài bản

  • Dành cho những nhà phát triển muốn hiểu sâu hơn về Java cần thiết cho công việc thực tế.

Cần biết trước khi bắt đầu?

  • Thực chiến Java của Kim Young-han - Nâng cao 1 - Đa luồng và tính đồng thời

  • Thực chiến Java của Kim Young-han - Trung cấp phần 1, 2

  • Lập trình Java thực tế với Kim Young-han - Bản cơ bản

Xin chào
Đây là

550,151

Học viên

35,792

Đánh giá

8,944

Trả lời

5.0

Xếp hạng

24

Các khóa học

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

 

저의 개발 인생 이야기

EO 인터뷰 영상

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

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

 

Chương trình giảng dạy

Tất cả

99 bài giảng ∙ (16giờ 40phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

203 đánh giá

4.9

203 đánh giá

  • bonjeong088610님의 프로필 이미지
    bonjeong088610

    Đánh giá 2

    Đánh giá trung bình 5.0

    Đã chỉnh sửa

    5

    100% đã tham gia

    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
      Giảng viên

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

  • dualis5731님의 프로필 이미지
    dualis5731

    Đánh giá 5

    Đánh giá trung bình 5.0

    5

    61% đã tham gia

    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
      Giảng viên

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

  • xuv2님의 프로필 이미지
    xuv2

    Đánh giá 17

    Đánh giá trung bình 4.7

    Đã chỉnh sửa

    5

    27% đã tham gia

    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
      Giảng viên

      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!

  • jjs0107135951님의 프로필 이미지
    jjs0107135951

    Đánh giá 5

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    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
      Giảng viên

      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!

  • guswhd9038193님의 프로필 이미지
    guswhd9038193

    Đánh giá 9

    Đánh giá trung bình 5.0

    5

    30% đã tham gia

    1.611.840 ₫

    Khóa học khác của yh

    Hãy khám phá các khóa học khác của giảng viên!

    Khóa học tương tự

    Khám phá các khóa học khác trong cùng lĩnh vực!