Khái niệm Hot Publishing và các loại Hot Publishing
Khái niệm và cách sử dụng Scheduler, trình quản lý luồng trong RxJava
Cách gỡ lỗi mã RxJava
Cách kiểm tra mã RxJava
Sử dụng RxJava giữa máy khách và máy chủ bằng giao tiếp SSE
🎉Kevin's Easy RxJava Phần 2 đã được phát hành🎉 Lập trình phản ứng , tôi sẽ dạy lại cho bạn điều này!
Lập trình phản ứng là gì?
Theo nghĩa hẹp, có thể nói đây là một API dành cho lập trình không đồng bộ để xử lý hiệu quả các yêu cầu không đồng bộ phức tạp.
Theo nghĩa rộng, có thể nói đây là mô hình lập trình khai báo, trái ngược với lập trình mệnh lệnh, vốn nêu rõ các hành động cần thực hiện.
Lập trình phản ứng là một mô hình lập trình thiết yếu cho các hệ thống phản ứng được thiết kế để phản hồi ngay lập tức các yêu cầu của khách hàng.
Lập trình phản ứng được sử dụng rộng rãi trong hầu hết các ngôn ngữ phát triển và khuôn khổ yêu cầu giao tiếp không đồng bộ. VD) Các tiện ích mở rộng phản ứng được sử dụng rộng rãi, chẳng hạn như RxJS trong Angular, React, RxJava trong Java, RxAndroid trong Android và Reactor và RxScala được sử dụng trong Spring Framework.
Tại sao bạn nên học lập trình phản ứng?
Tôi đã đề cập rằng lập trình phản ứng là một mô hình phát triển để xử lý hiệu quả các yêu cầu không đồng bộ.
Các ứng dụng ngày nay ngày càng xử lý các yêu cầu không đồng bộ thay vì yêu cầu đồng bộ.
Đúng là lập trình không đồng bộ sử dụng luồng Java khá phức tạp và có khả năng xảy ra lỗi không mong muốn cao.
Lập trình phản ứng giải quyết các vấn đề phát sinh khi sử dụng luồng trực tiếp và đơn giản hóa sự phức tạp của lập trình không đồng bộ.
Tuy nhiên, phải mất một thời gian để làm quen với phong cách lập trình khai báo.
Vậy nên, đúng là có một số rào cản khi gia nhập. Nhưng tôi không nghĩ chúng là không thể vượt qua.
Tôi tin rằng lập trình phản ứng không chỉ giúp bạn nâng cao kỹ năng phát triển lên một tầm cao mới mà còn là cơ hội tuyệt vời để bạn trải nghiệm sự thay đổi trong tư duy phát triển của mình với tư cách là một nhà phát triển .
Tôi có thể học được gì ở Phần 2 ?
Trong Phần 2 của cuốn Easy RxJava của Kevin, chúng ta sẽ tìm hiểu các chủ đề chưa được đề cập trong Phần 1, chẳng hạn như Hot Publishers, scheduler, gỡ lỗi và kiểm thử. Cuối cùng, chúng ta sẽ tìm hiểu cách áp dụng RxJava đã học trong Phần 1 và Phần 2 vào Spring Boot thông qua thực hành.
Đầu tiên, chúng ta đã xem xét Cold Publisher và Hot Publisher, được đề cập ngắn gọn trong Phần 1, sau đó chúng ta tìm hiểu về các loại Hot Publisher và các tính năng tương ứng của chúng thông qua sơ đồ đá cẩm thạch và mã ví dụ.
[Tài liệu bài giảng của Cold Publisher Review]
[Tài liệu bài giảng Đánh giá Nhà xuất bản Capture of Hot]
Trong bài viết này, chúng ta sẽ tìm hiểu bộ lập lịch là gì, vai trò của nó và chức năng của nó trong RxJava. Để hiểu ý nghĩa của bộ lập lịch trong RxJava, trước tiên chúng tôi sẽ cung cấp một giải thích đơn giản, trực quan về các khái niệm và hoạt động của tiến trình và luồng trong một tiến trình đang chạy trên hệ điều hành. Điều này sẽ giúp học viên hiểu rõ vai trò của bộ lập lịch trong RxJava.
[Ghi lại nội dung bài giảng về khái niệm luồng]
Vì RxJava là ngôn ngữ lập trình khai báo và bất đồng bộ, việc gỡ lỗi mã RxJava có thể khá khó khăn. Trong Phần 2, chúng ta sẽ tìm hiểu các kỹ thuật gỡ lỗi cho mã RxJava.
Kiểm thử là một khía cạnh quan trọng của phát triển ứng dụng. Tuy nhiên, việc kiểm thử mã RxJava, một ngôn ngữ lập trình bất đồng bộ, bằng các phương thức Java chuẩn có những hạn chế riêng. Trong phần kiểm thử, bạn sẽ học cách kiểm thử mã hiệu quả trong RxJava.
Phần cuối của Phần 2 sẽ trình bày một dự án thực hành minh họa cách tận dụng các kỹ năng lập trình RxJava đã học trong Spring Boot. Mặc dù bản thân dự án khá đơn giản, nhưng nó sẽ cung cấp cái nhìn sâu sắc về cách RxJava có thể được sử dụng trong phát triển ứng dụng.
[Ghi lại nội dung bài giảng về tiến trình thực hiện dự án]
Cuối cùng, sau khi hoàn thành bài giảng này, chúng tôi trình bày lộ trình học tập trong tương lai liên quan đến lập trình phản ứng.
Khóa học của chúng tôi có điểm gì đặc biệt?
Chúng tôi đã cố gắng trình bày các khái niệm cốt lõi của lập trình phản ứng một cách dễ hiểu nhất có thể cho người mới bắt đầu.
Không chỉ đơn thuần giải thích nội dung bài giảng, mỗi buổi học đều kèm theo phần giải thích rõ ràng về mã ví dụ. Nói cách khác, bất kỳ kiến thức nào khó hiểu trong bài giảng đều được giải thích chi tiết bằng mã ví dụ, và chúng tôi nỗ lực đảm bảo sinh viên hiểu rõ các khái niệm bằng cách chạy mã ví dụ và kiểm chứng kết quả.
Tất cả các mã ví dụ được sử dụng trong bài giảng đều được cung cấp trên GitHub để sinh viên có thể trực tiếp nhập mã ví dụ và chạy mã để kiểm tra kết quả.
Tôi nên chuẩn bị gì trước khi tham dự buổi thuyết trình?
Như bạn có thể mong đợi, bạn cần cài đặt JDK 1.8 trở lên trên PC hoặc máy tính xách tay của mình.
Trong khóa học, chúng tôi đã sử dụng IntelliJ IDE làm công cụ phát triển. Nếu bạn chưa quen với IntelliJ, hãy thoải mái sử dụng IDE hiện tại của bạn cho các bài tập thực hành.
Những điều quan trọng nhất bạn cần chuẩn bị để tham gia khóa học của chúng tôi không gì khác ngoài ý chí học hỏi những kỹ năng mới và sự kiên trì không bao giờ bỏ cuộc. ^^
Hãy cho tôi thấy ý chí và sự kiên trì của bạn, tôi sẽ cố gắng hết sức để giúp bạn vượt qua những rào cản để bước vào RxJava.
H. Sinh viên không chuyên ngành cũng có thể tham gia khóa học này không? A. Không quan trọng bạn có chuyên ngành hay không. Tôi nghĩ bất kỳ ai có kiến thức cơ bản về Java đều có thể tham gia khóa học này. Nhân tiện, bản thân tôi cũng bắt đầu học không chuyên ngành. ^^ Tuy nhiên, tôi tin rằng việc học Phần 2 sau Phần 1 sẽ giúp bạn hiểu bài tốt hơn.
H. Lợi ích của việc học RxJava là gì? A. Như tôi đã đề cập trong phần giới thiệu, việc học RxJava có thể đơn giản hóa lập trình bất đồng bộ phức tạp, và hơn nữa, nó có thể giúp bạn thay đổi cách suy nghĩ về lập trình bằng cách sử dụng lập trình khai báo thay vì lập trình mệnh lệnh. Trở thành một lập trình viên giỏi hơn là một lợi thế, phải không? ^^ Sau khi học RxJava, bạn sẽ có thể củng cố các nguyên tắc cơ bản của lập trình phản ứng, nhờ đó việc học RxJs, RxAndroid, Spring Reactor, v.v. sẽ trở nên dễ dàng hơn rất nhiều.
H. Các bài giảng được tiến hành như thế nào? A. Hầu hết các lớp học đều bắt đầu bằng việc tìm hiểu các khái niệm thông qua tài liệu bài giảng, sau đó trực tiếp kiểm chứng chúng thông qua mã ví dụ. Mặc dù Phần 1 có cung cấp thêm các bài kiểm tra ngoài mã ví dụ, Phần 2 sẽ không bao gồm các bài kiểm tra riêng biệt.
H. Tôi có thể tải xuống mã ví dụ gốc được sử dụng trong bài giảng ở đâu? A. Tất cả các mã ví dụ được giải thích trong lớp đều có sẵn trên GitHub và có thể tải xuống từ địa chỉ bên dưới. • Mã nguồn ví dụ gốc :https://github.com/ITVillage-Kevin/rxjava-episode2
H. Tôi có thể tải tài liệu bài giảng ở đâu? A. Đối với mỗi lớp học trong mỗi phần, chúng tôi đã đính kèm tài liệu bài giảng được sử dụng trong lớp. Nếu cần, vui lòng tải xuống và tham khảo.
H. Ngoài tài liệu bài giảng, bạn có thể giới thiệu thêm tài liệu tham khảo nào không? A. Dưới đây là một số trang web hữu ích để học lập trình phản ứng.
•http://reactivex.io/ Đây là trang web chính thức về lập trình phản ứng và tôi nghĩ đây là trang web thực sự tốt để tham khảo sau khi tìm hiểu những kiến thức cơ bản về lập trình phản ứng.
• https://rxmarbles.com/ Đây là sơ đồ toán tử dạng bi được tổ chức tốt, có thể coi là cốt lõi của lập trình phản ứng.
• http://reactivex.io/RxJava/2.x/javadoc/ Cuối cùng, đây là tài liệu javadoc chính thức cho RxJava. Tính đến năm 2020, RxJava 3.0 đã được phát hành, nhưng tốt nhất là cứ tạm coi như phiên bản 3.0 đã bổ sung rất nhiều hàm toán tử mới, và hãy củng cố kiến thức của bạn về các khái niệm này với phiên bản 2.x trước khi chuyển sang phiên bản 3.0.
Khuyến nghị cho những người này
Khóa học này dành cho ai?
Những người muốn khắc phục khó khăn khi lập trình đa luồng trong Java
Những người muốn làm quen với phương pháp lập trình khai báo
Những người muốn vượt qua rào cản gia nhập lập trình phản ứng
Những người muốn củng cố kiến thức cơ bản về lập trình phản ứng để phát triển Ứng dụng web phản ứng mùa xuân
Dành cho những người đã tham gia khóa học [RxJava Phần 1 dễ hiểu của Kevin]
Cần biết trước khi bắt đầu?
Java
Sự khác biệt giữa lập trình đồng bộ và lập trình không đồng bộ
Xin chào Đây là
6,287
Học viên
231
Đánh giá
107
Trả lời
4.8
Xếp hạng
6
Các khóa học
- 주력 언어 또는 기술 : Java, Spring Framework, RxJava, Reactor, Spring WebFlux
- (주)코드스테이츠(https://www.codestates.com)에서 Senior Educational Software Engineer(Backend)로 활동 (From 2022.03 To 2024.01.31)
안녕하세요, 2부 강의 역시 제가 제일 먼저 완강을 하고 수강평을 남기게되었습니다. ^^ 1부/2부에 걸쳐서 리액티브 프로그래밍에 대해서 최대한 쉽게 이해시켜드리려고 노력했는데 어떠셨는지 모르겠네요. 아무튼 리액티브 프로그래밍을 이해하시는데 제 강의가 조금이라도 도움이 되길 바래볼게요. 감사합니다!