We may earn an affiliate commission when you visit our partners.
Russell Elledge

In this course you will learn to use the RxJava Version 2 library to accomplish the goals of the Reactive Manifesto, the software industries standard for Reactive Programming.

Read more

In this course you will learn to use the RxJava Version 2 library to accomplish the goals of the Reactive Manifesto, the software industries standard for Reactive Programming.

Due to heat limitations, modern computer systems have been unable to increase CPU clock speeds in order to increase chip performance. Instead, chip designers have begun to scale performance using an increasing number of on-chip processor cores.

In this course, Reactive Programming in Java 12 with RxJava 2, you will gain the ability to implement Reactive Programming techniques in order to more fully utilize a modern computer's multi-core CPU.

First, you will learn The Reactive Manifesto, the software industries de facto standard for Reactive Programming. Next, you will discover how the RxJava library can be leveraged to tame the difficult task of implementing asynchronous applications. Finally, you will explore how to apply Reactive Programming to modern day problems like network and database access.

When you’re finished with this course, you will have the skills and knowledge of Reactive Programming and the RxJava library needed to implement applications and services that exhibit the quality standard laid out in the Reactive Manifesto.

Enroll now

Here's a deal for you

We found an offer that may be relevant to this course.
Save money when you learn. All coupon codes, vouchers, and discounts are applied automatically unless otherwise noted.

What's inside

Syllabus

Course Overview
RxJava Core Concepts
Observable Composition and Filtering
Observable Transformations and Concurrency
Read more
Connectable Observables, Resource Management, and Subjects
Reactive Solutions for the Real World

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Emphasizes the importance of Reactive Programming, which is the industry standard for modern software development
Suitable for learners who want to develop multi-core CPU-based applications
Provides a comprehensive overview of Reactive Programming principles and practices

Save this course

Save Reactive Programming in Java 12 with RxJava 2 to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Reactive Programming in Java 12 with RxJava 2 with these activities:
Review the basics of Java programming
Ensure you have a strong foundation in Java programming before beginning this course. Review basic concepts such as object-oriented programming syntax, data structures, and algorithms.
Browse courses on Java
Show steps
  • Review your Java notes or online resources.
  • Complete practice problems and exercises on Java.
Join a study group or online community for RxJava
Join a study group or online community related to RxJava. Doing so can help you connect with other students interested in learning about and applying RxJava.
Browse courses on RxJava
Show steps
  • Search for RxJava study groups or online communities.
  • Join a group that fits your learning style and schedule.
  • Participate in discussions and ask questions.
Review Java Concurrency in Practice by Brian Goetz
Review the Java Concurrency in Practice textbook to deepen your understanding of asynchronous programming and concurrency principles relevant to this course.
Show steps
  • Read chapters 1-3 to understand the basics of Java concurrency.
  • Read chapters 4-6 to learn about advanced concurrency techniques.
  • Complete the exercises at the end of each chapter.
Five other activities
Expand to see all activities and additional details
Show all eight activities
Follow the RxJava Tutorial Series on Pluralsight
Watch and follow along with the RxJava tutorials on Pluralsight to gain a comprehensive understanding of the library.
Browse courses on RxJava
Show steps
  • Watch all videos in the RxJava Tutorial Series.
  • Complete the accompanying exercises and quizzes.
Practice Reactive Programming with RxJava
Complete practice problems and exercises on RxJava to improve your proficiency in writing asynchronous code.
Browse courses on RxJava
Show steps
  • Solve problems on the RxJava website.
  • Contribute to open-source RxJava projects on GitHub.
  • Build your own reactive applications using RxJava.
Contribute to an RxJava open-source project
Find an open-source RxJava project and contribute to its development. This experience can enhance your understanding of RxJava's codebase and foster collaboration with developers in the community.
Browse courses on RxJava
Show steps
  • Identify an open-source RxJava project that aligns with your interests.
  • Read the project's documentation and familiarize yourself with its codebase.
  • Identify a bug or feature you can contribute to.
  • Submit a pull request with your proposed changes.
Write a blog post about Reactive Programming with RxJava
Create a blog post to demonstrate your understanding of reactive programming and RxJava. Doing so will help solidify your knowledge and potentially help others.
Browse courses on Reactive Programming
Show steps
  • Choose a topic related to reactive programming.
  • Write a blog post that explains the topic clearly and concisely.
  • Publish your blog post on a platform like Medium or your own website.
Build a reactive application using RxJava
Develop a mobile or web application that utilizes RxJava for asynchronous programming. This will test your ability to apply the concepts you learned in this course to a real-world scenario.
Browse courses on RxJava
Show steps
  • Design the architecture of your application.
  • Implement the application using RxJava.
  • Test and debug your application.
  • Deploy your application to a platform like the App Store or Google Play.

Career center

Learners who complete Reactive Programming in Java 12 with RxJava 2 will develop knowledge and skills that may be useful to these careers:
Software Engineer
Software Engineers are responsible for designing, developing, and maintaining software applications. They work with a variety of programming languages and technologies to create software that meets the needs of users. Reactive Programming is a powerful tool that can help Software Engineers to create more responsive and scalable applications. This course will teach you the basics of Reactive Programming and how to use it to develop high-quality software applications.
Data Scientist
Data Scientists are responsible for collecting, analyzing, and interpreting data. They use their skills to help businesses make better decisions. Reactive Programming is a powerful tool that can help Data Scientists to process and analyze data more efficiently. This course will teach you the basics of Reactive Programming and how to use it to develop data-driven applications.
Machine Learning Engineer
Machine Learning Engineers are responsible for developing and deploying machine learning models. They work with a variety of machine learning algorithms and techniques to create models that can solve real-world problems. Reactive Programming is a powerful tool that can help Machine Learning Engineers to develop more efficient and scalable machine learning models. This course will teach you the basics of Reactive Programming and how to use it to develop machine learning applications.
Web Developer
Web Developers are responsible for designing and developing websites. They work with a variety of web technologies to create websites that are responsive, user-friendly, and scalable. Reactive Programming is a powerful tool that can help Web Developers to create more responsive and scalable websites. This course will teach you the basics of Reactive Programming and how to use it to develop web applications.
Database Administrator
Database Administrators are responsible for managing and maintaining databases. They work with a variety of database technologies to ensure that databases are available, reliable, and secure. Reactive Programming is a powerful tool that can help Database Administrators to manage and maintain databases more efficiently. This course will teach you the basics of Reactive Programming and how to use it to develop database applications.
Systems Analyst
Systems Analysts are responsible for analyzing and designing computer systems. They work with a variety of stakeholders to gather requirements, develop solutions, and implement systems. Reactive Programming is a powerful tool that can help Systems Analysts to develop more responsive and scalable systems. This course will teach you the basics of Reactive Programming and how to use it to develop systems applications.
Network Engineer
Network Engineers are responsible for designing, implementing, and maintaining computer networks. They work with a variety of network technologies to ensure that networks are reliable, secure, and efficient. Reactive Programming is a powerful tool that can help Network Engineers to manage and maintain networks more efficiently. This course will teach you the basics of Reactive Programming and how to use it to develop network applications.
Security Analyst
Security Analysts are responsible for protecting computer systems and networks from unauthorized access. They work with a variety of security technologies to identify and mitigate threats. Reactive Programming is a powerful tool that can help Security Analysts to detect and respond to threats more quickly. This course will teach you the basics of Reactive Programming and how to use it to develop security applications.
Quality Assurance Analyst
Quality Assurance Analysts are responsible for testing and validating software applications. They work with a variety of testing tools and techniques to ensure that software applications are reliable and free of defects. Reactive Programming is a powerful tool that can help Quality Assurance Analysts to test and validate software applications more efficiently. This course will teach you the basics of Reactive Programming and how to use it to develop testing applications.
Technical Writer
Technical Writers are responsible for writing documentation for software applications and systems. They work with a variety of stakeholders to gather requirements, develop documentation, and publish documentation. Reactive Programming is a powerful tool that can help Technical Writers to develop more responsive and scalable documentation. This course will teach you the basics of Reactive Programming and how to use it to develop documentation applications.
Product Manager
Product Managers are responsible for managing the development and launch of software products. They work with a variety of stakeholders to define product requirements, develop product roadmaps, and launch products. Reactive Programming is a powerful tool that can help Product Managers to develop more responsive and scalable products. This course will teach you the basics of Reactive Programming and how to use it to develop product management applications.
Business Analyst
Business Analysts are responsible for analyzing business processes and systems. They work with a variety of stakeholders to gather requirements, develop solutions, and implement solutions. Reactive Programming is a powerful tool that can help Business Analysts to analyze and design business processes more efficiently. This course will teach you the basics of Reactive Programming and how to use it to develop business analysis applications.
IT Consultant
IT Consultants are responsible for providing consulting services to businesses. They work with a variety of clients to assess IT needs, develop solutions, and implement solutions. Reactive Programming is a powerful tool that can help IT Consultants to provide more responsive and scalable solutions. This course will teach you the basics of Reactive Programming and how to use it to develop consulting applications.
Project Manager
Project Managers are responsible for planning, executing, and closing projects. They work with a variety of stakeholders to define project scope, develop project plans, and manage project deliverables. Reactive Programming is a powerful tool that can help Project Managers to manage projects more efficiently. This course will teach you the basics of Reactive Programming and how to use it to develop project management applications.
Salesforce Developer
Salesforce Developers are responsible for developing and maintaining Salesforce applications. They work with a variety of Salesforce technologies to create applications that meet the needs of users. Reactive Programming is a powerful tool that can help Salesforce Developers to create more responsive and scalable applications. This course will teach you the basics of Reactive Programming and how to use it to develop Salesforce applications.

Reading list

We've selected eight books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Reactive Programming in Java 12 with RxJava 2.
Provides a comprehensive overview of Reactive Programming concepts and the RxJava library, with a focus on practical applications and real-world scenarios. It is an excellent companion resource for this course, covering both the theoretical foundations and practical implementation of Reactive Programming in Java.
A comprehensive guide to designing and building data-intensive applications. It covers the core concepts of reactive programming, as well as how to use reactive programming to build scalable and resilient applications.
Teaches you how to combine Kotlin coroutines with reactive programming techniques to build robust, maintainable, and scalable applications. It covers both the theoretical foundations and practical implementation of reactive programming in Kotlin.
Provides a comprehensive guide to browser networking. It covers topics such as HTTP/2, TCP, and caching. It's a great resource for developers who want to learn how to build performant and reliable web applications.
Comprehensive guide to Reactive Programming in Swift. It covers the fundamentals of Reactive Programming, as well as advanced topics like error handling, testing, and concurrency. It's a great resource for Swift developers who want to learn how to use Reactive Programming effectively.
Provides a deep dive into the concepts of Reactive Programming and how to apply them using the RxJava 2.0 library. It covers core concepts like Observables, Schedulers, and Operators, as well as advanced topics like error handling, testing, and concurrency.
A guide to reactive programming with Ruby. It covers the core concepts of reactive programming, as well as how to use Ruby to build asynchronous and event-driven applications.
A guide to reactive programming with Spring Boot. It covers the core concepts of reactive programming, as well as how to use Spring Reactive Web to build asynchronous and event-driven web applications.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser