This course teaches learners (industry professionals and students) the fundamental concepts of Distributed Programming in the context of Java 8. Distributed programming enables developers to use multiple nodes in a data center to increase throughput and/or reduce latency of selected applications. By the end of this course, you will learn how to use popular distributed programming frameworks for Java programs, including Hadoop, Spark, Sockets, Remote Method Invocation (RMI), Multicast Sockets, Kafka, Message Passing Interface (MPI), as well as different approaches to combine distribution with multithreading.
About this Course
Learner Career Outcomes
Learner Career Outcomes
Rice University is consistently ranked among the top 20 universities in the U.S. and the top 100 in the world. Rice has highly respected schools of Architecture, Business, Continuing Studies, Engineering, Humanities, Music, Natural Sciences and Social Sciences and is home to the Baker Institute for Public Policy.
- 5 stars
- 4 stars
- 3 stars
- 2 stars
- 1 star
TOP REVIEWS FROM DISTRIBUTED PROGRAMMING IN JAVA
It forced me to recall OpenMP and MPI. Thought it's already dead in favor to IMDG, spark, upc and so on. Practical tasks - miniprojects - was too easy to implement. Need more complex tasks.
Great course. The first programming assignment was challenging and well worth the time invested, I would recommend it for anyone that wants to learn parallel programming in Java.
The concepts taught were clear and precise which helped me with an ongoing project. It would have been really better if the mini-projects were a bit more complicated.
Very well structured and presented course! Very useful material with good relevant examples! Thank you, Prof. Sarkar for this Distributed Programming in Java course!
About the Parallel, Concurrent, and Distributed Programming in Java Specialization
Parallel, concurrent, and distributed programming underlies software in multiple domains, ranging from biomedical research to financial services. This specialization is intended for anyone with a basic knowledge of sequential programming in Java, who is motivated to learn how to write parallel, concurrent and distributed programs. Through a collection of three courses (which may be taken in any order or separately), you will learn foundational topics in Parallelism, Concurrency, and Distribution. These courses will prepare you for multithreaded and distributed programming for a wide range of computer platforms, from mobile devices to cloud computing servers.
Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I subscribe to this Specialization?
Is financial aid available?
Do I need to buy a textbook?
How does the Multicore Programming in Java: Parallelism course relate to the Multicore Programming in Java: Concurrency course?
More questions? Visit the Learner Help Center.