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:

126 - 150 of 252 Reviews for Java Programming: Principles of Software Design

By Haoran

Jul 12, 2018

good intro for programming in java

By Karim M E

Nov 18, 2018

great course recommend it so much

By Rudik E

Jan 18, 2016

It' great as usual!!!! Thank you!

By Vasif E

Nov 12, 2020

Thanks for Support

Vasif Eminov


By James T

Jul 17, 2017

The entire series was excellent!

By Aditya N

Oct 6, 2020

The best course for beginners!!

By Oscar R

Jan 9, 2016

Very good teachers/instructors.

By Victor

May 20, 2020

very good course for beginners

By mariam n

Apr 21, 2020

I learn more from that course

By Syed M A

Jan 21, 2020

Excellent Faculty and Content


May 7, 2016

Great course for beginner!!

By Aniket R W

Sep 8, 2022

Superbb learning material


Sep 25, 2020

Really enjoyed the class!

By hassan m

Jun 25, 2020

want to thank instructors

By Lee Y Y

May 19, 2020

clear and easy to follow


Apr 21, 2021

Exceptional experience!

By Ooi C S

Jul 26, 2020

Nice Course! Good Job!

By Nazeeh A

Feb 18, 2019


By Volodymyr C

Oct 21, 2017

Great course! Thanks.

By YutongXiao

Jun 27, 2020

pretty approachable!

By Hiren P

May 7, 2020

nice content covered

By Mateusz A

Mar 13, 2016

Most excellent MOOC.


Aug 31, 2022

Excellent Course!

By Pablo A V M

Sep 14, 2021

Excellent Content

By Vitor S S

May 9, 2021

Muito bom o curso