Chevron Left
Back to Java Programming: Principles of Software Design

Learner Reviews & Feedback for Java Programming: Principles of Software Design by Duke University

1,476 ratings

About the Course

Solve real world problems with Java using multiple classes. Learn how to create programming solutions that scale using Java interfaces. Recognize that software engineering is more than writing code - it also involves logical thinking and design. By the end of this course you will have written a program that analyzes and sorts earthquake data, and developed a predictive text generator. After completing this course, you will be able to: 1. Use sorting appropriately in solving problems; 2. Develop classes that implement the Comparable interface; 3. Use timing data to analyze empirical performance; 4. Break problems into multiple classes, each with their own methods; 5. Determine if a class from the Java API can be used in solving a particular problem; 6. Implement programming solutions using multiple approaches and recognize tradeoffs; 7. Use object-oriented concepts including interfaces and abstract classes when developing programs; 8. Appropriately hide implementation decisions so they are not visible in public methods; and 9. Recognize the limitations of algorithms and Java programs in solving problems. 10. Recognize standard Java classes and idioms including exception-handling, static methods,, and packages....

Top reviews


Aug 7, 2019

My confidence level in Java programming has grown significantly since completing this specialisation. It gave me the necessary knowledge and practice I need to take up a role as a software engineer.


May 3, 2020

Well designed and well structured with the packages, resources, programming exercises and practice quiz. I appreciate the team's hard work in delivering good knowledge on the subject efficiently.

Filter by:

76 - 100 of 252 Reviews for Java Programming: Principles of Software Design

By J'erome A

Dec 23, 2021

Loved it. it was challenging as a first timer, some assignments took me long but i'm glad i did it

By Adeola D A

Aug 23, 2022

This was super challenging, standard, thought provoking, propreitry, and ultimately enlightening.

By Rahul G

Feb 10, 2018

Very Informative and course is well explained. Assignments are bit challenging but they worth it.

By 李婷

Apr 9, 2021

Very great course to learn. It is understandable. Step by step, the assignments can be finished.

By Josh H

Jan 3, 2016

Great course. Builds nicely on everything that we have done so far. Very interesting material!

By Akash k S

Jan 18, 2017

good and Engaging course require good understanding of course material to solve the assignment.


Jul 5, 2022

A best way to enhance the skill by learning this course good experience of real time examples

By Prashanth S

Jul 11, 2020

Well Structured Course. And can give one real time example to solve it with the assignment .


Jan 26, 2022

The course provides various skill through simple excercises which saves alot of time for me

By Deleted A

Apr 2, 2020

Thank you everyone for your support and for the time spent to offer a quality teaching!

By Abdallah M S

Mar 6, 2022

Really helpful course, and I am sure it will help me at my career as a Java developer.

By Bruno

Aug 31, 2017

Amazing course! Perfect for those who are serious about learning programming and Java!

By 050 A R

Jul 17, 2021

Good course with a lot of programming assignment which an improve your coding skills.

By Sujay P

Jun 28, 2017

Excellent course again. Assignments were a little lengthy but fantastic work overall.

By Tian

Mar 22, 2016

The teacher is very comprehensive and very serious.. I have learned a lot, thanks.

By Chew W Y

Jun 16, 2016

Fun course with some long lectures. I found the material to be quite challenging.

By Richard W

Jan 20, 2016

Great course and great professors. Very interesting knowledge base to learn from.


Feb 22, 2019

very helpful in understanding how to write a logic to a complex program easily.

By Joon B

Jan 14, 2016

Really great course, taught very concisely and in a way that is easy to follow.


Jun 10, 2020

Very useful course to implement java knowledge in real world applications.

By Kevin P

Aug 2, 2020

I recommend to take the first courses before. They are good for beginners

By Alex S

Nov 24, 2018

Awesome course. These professors are great. They are from Duke University

By Rayhaan P

Feb 28, 2016

Great course, enjoyed and learned a lot from it! Highly recommended! :)

By Igor B

Apr 24, 2019

Excellent course, well designed excercises, good motivating lectures.

By David N

Nov 3, 2016

Difficult, but after this you feel more comfortable about your skills