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:

151 - 175 of 252 Reviews for Java Programming: Principles of Software Design

By Sergey K

Sep 11, 2020

Great! Thank you!


Sep 5, 2016

excellent course!

By pranta b

Jan 24, 2016

Nice Course .. :D

By Muhammad A K

Jul 29, 2020

Excellent Course

By Chibuike A

Sep 8, 2022

Great course!

By Thulasiram D

Sep 30, 2021

Great Learning

By badr e g

Feb 18, 2017

tres bon cours

By Demon R

Sep 29, 2020

useful course

By Md E

Aug 11, 2020

hard question

By BingliangLan

Jun 5, 2019

instructive !

By Js S

Mar 14, 2023

Great course

By jota b

Jan 27, 2022

Muy bueno!!!

By Wenxuan S

Jun 22, 2021

very helpful

By Antonio P

Oct 22, 2016

Great course

By Gregory W

Feb 19, 2016


By Pradeep

Sep 15, 2020

Good Course

By Yanyan

Jun 10, 2020

It is nice.

By Yiran Z

Jul 18, 2017

Good Course

By Jakub T

Jan 26, 2017

great stuff

By Abu Y

Oct 18, 2016

Really Good

By Noah P

Jun 12, 2016

good course

By Sergey

Dec 21, 2015


By Xiaochun M

May 18, 2017

Very good!

By Alsadig B I

Sep 19, 2021


By Yasmeen G

Nov 2, 2016