課程信息
21,741 次近期查看

100% 在線

立即開始,按照自己的計劃學習。

可靈活調整截止日期

根據您的日程表重置截止日期。

中級

完成時間大約為13 小時

建議:Four weeks of study, 4-8 hours/week depending on past experience with sequential programming in Java...

英語(English)

字幕:英語(English)

您將獲得的技能

Distributed ComputingActor ModelParallel ComputingReactive Programming
學習Course的學生是
  • Software Engineers
  • Machine Learning Engineers
  • Data Scientists
  • Data Engineers
  • Scientists

100% 在線

立即開始,按照自己的計劃學習。

可靈活調整截止日期

根據您的日程表重置截止日期。

中級

完成時間大約為13 小時

建議:Four weeks of study, 4-8 hours/week depending on past experience with sequential programming in Java...

英語(English)

字幕:英語(English)

教學大綱 - 您將從這門課程中學到什麼

1
完成時間為 1 小時

Welcome to the Course!

1 個視頻 (總計 1 分鐘), 5 個閱讀材料, 1 個測驗
1 個視頻
5 個閱讀材料
General Course Info5分鐘
Course Icon Legend2分鐘
Discussion Forum Guidelines2分鐘
Pre-Course Survey10分鐘
Mini Project 0: Setup20分鐘
完成時間為 4 小時

DISTRIBUTED MAP REDUCE

6 個視頻 (總計 49 分鐘), 6 個閱讀材料, 2 個測驗
6 個視頻
1.2 Hadoop Framework8分鐘
1.3 Spark Framework11分鐘
1.4 TF-IDF Example7分鐘
1.5 Page Rank Example8分鐘
Demonstration: Page Rank Algorithm in Spark4分鐘
6 個閱讀材料
1.1 Lecture Summary5分鐘
1.2 Lecture Summary5分鐘
1.3 Lecture Summary5分鐘
1.4 Lecture Summary5分鐘
1.5 Lecture Summary5分鐘
Mini Project 1: Page Rank with Spark15分鐘
1 個練習
Module 1 Quiz30分鐘
2
完成時間為 4 小時

CLIENT-SERVER PROGRAMMING

6 個視頻 (總計 43 分鐘), 6 個閱讀材料, 2 個測驗
6 個視頻
2.2 Serialization/Deserialization9分鐘
2.3 Remote Method Invocation6分鐘
2.4 Multicast Sockets7分鐘
2.5 Publish-Subscribe Model6分鐘
Demonstration: File Server using Sockets4分鐘
6 個閱讀材料
2.1 Lecture Summary5分鐘
2.2 Lecture Summary5分鐘
2.3 Lecture Summary5分鐘
2.4 Lecture Summary5分鐘
2.5 Lecture Summary5分鐘
Mini Project 2: File Server15分鐘
1 個練習
Module 2 Quiz30分鐘
完成時間為 15 分鐘

Talking to Two Sigma: Using it in the Field

2 個視頻 (總計 13 分鐘), 1 個閱讀材料
2 個視頻
Industry Professional on Distribution - Dr. Eric Allen, Senior Vice President6分鐘
1 個閱讀材料
About these Talks2分鐘
3
完成時間為 4 小時

MESSAGE PASSING

6 個視頻 (總計 49 分鐘), 6 個閱讀材料, 2 個測驗
6 個視頻
3.2 Point-to-Point Communication9分鐘
3.3 Message Ordering and Deadlock8分鐘
3.4 Non-Blocking Communications7分鐘
3.5 Collective Communication7分鐘
Demonstration: Distributed Matrix Multiply using Message Passing9分鐘
6 個閱讀材料
3.1 Lecture Summary7分鐘
3.2 Lecture Summary5分鐘
3.3 Lecture Summary5分鐘
3.4 Lecture Summary5分鐘
3.5 Lecture Summary5分鐘
Mini Project 3: Matrix Multiply in MPI15分鐘
1 個練習
Module 3 Quiz30分鐘
4
完成時間為 4 小時

COMBINING DISTRIBUTION AND MULTITHREADING

6 個視頻 (總計 44 分鐘), 7 個閱讀材料, 2 個測驗
6 個視頻
4.2 Multithreaded Servers6分鐘
4.3 MPI and Threading7分鐘
4.4 Distributed Actors8分鐘
4.5 Distributed Reactive Programming7分鐘
Demonstration: Parallel File Server using Multithreading and Sockets3分鐘
7 個閱讀材料
4.1 Lecture Summary5分鐘
4.2 Lecture Summary5分鐘
4.3 Lecture Summary10分鐘
4.4 Lecture Summary5分鐘
4.5 Lecture Summary5分鐘
Mini Project 4: Multi-Threaded File Server15分鐘
Exit Survey10分鐘
1 個練習
Module 4 Quiz30分鐘
完成時間為 20 分鐘

Continue Your Journey with the Specialization "Parallel, Concurrent, and Distributed Programming in Java"

2 個視頻 (總計 10 分鐘), 1 個閱讀材料
2 個視頻
Industry Professional on Concurrency - Dr. Shams Imam, Software Engineer, Two Sigma3分鐘
1 個閱讀材料
Our Other Course Offerings10分鐘
4.5
37 個審閱Chevron Right

25%

完成這些課程後已開始新的職業生涯

22%

通過此課程獲得實實在在的工作福利

25%

加薪或升職

來自Distributed Programming in Java的熱門評論

創建者 DHSep 17th 2017

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.

創建者 FFJan 24th 2018

Excellent course! Vivek is an excellent instructor as well. I appreciate having taken the opportunity to learn from him.

講師

Avatar

Vivek Sarkar

Professor
Department of Computer Science

關於 莱斯大学

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

關於 Parallel, Concurrent, and Distributed Programming in Java 專項課程

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. To see an overview video for this Specialization, click here! For an interview with two early-career software engineers on the relevance of parallel computing to their jobs, click here. Acknowledgments The instructor, Prof. Vivek Sarkar, would like to thank Dr. Max Grossman for his contributions to the mini-projects and other course material, Dr. Zoran Budimlic for his contributions to the quizzes, Dr. Max Grossman and Dr. Shams Imam for their contributions to the pedagogic PCDP library used in some of the mini-projects, and all members of the Rice Online team who contributed to the development of the course content (including Martin Calvi, Annette Howe, Seth Tyger, and Chong Zhou)....
Parallel, Concurrent, and Distributed Programming in Java

常見問題

  • 注册以便获得证书后,您将有权访问所有视频、测验和编程作业(如果适用)。只有在您的班次开课之后,才可以提交和审阅同学互评作业。如果您选择在不购买的情况下浏览课程,可能无法访问某些作业。

  • 您注册课程后,将有权访问专项课程中的所有课程,并且会在完成课程后获得证书。您的电子课程证书将添加到您的成就页中,您可以通过该页打印您的课程证书或将其添加到您的领英档案中。如果您只想阅读和查看课程内容,可以免费旁听课程。

  • No. The lecture videos, demonstrations and quizzes will be sufficient to enable you to complete this course. Students who enroll in the course and are interesting in receiving a certificate will also have access to a supplemental coursebook with additional technical details.

  • Multicore Programming in Java: Parallelism and Multicore Programming in Java: Concurrency cover complementary aspects of multicore programming, and can be taken in any order. The Parallelism course covers the fundamentals of using parallelism to make applications run faster by using multiple processors at the same time. The Concurrency course covers the fundamentals of how parallel tasks and threads correctly mediate concurrent use of shared resources such as shared objects, network resources, and file systems.

還有其他問題嗎?請訪問 學生幫助中心