Chevron Left
Back to Java Programming: Principles of Software Design

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

4.6
stars
1,481 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, java.net, and java.io packages....

Top reviews

OI

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.

VS

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:

201 - 225 of 253 Reviews for Java Programming: Principles of Software Design

By Mary S

Sep 24, 2018

Decent. Moved kinda slowly, but it's for beginners, so what did I expect? This is a nice progression of classes for someone with no previous programming experience; if you have previous experience, in another language, you may wish to start with an intermediate course.

By Michael C

Sep 12, 2016

Good examples -- good basic instruction in videos, but most of the value is in working the exercises which use some fairly interesting real world scenarios. And some of the direction is as vague as specs you might encounter as well.

By Muhammad F B J

May 21, 2020

The idea of using interfaces and abstract classes were not covered sufficiently in my opinion. That said, I was still satisfied with the content being covered. Instructions on some of the exercises could have been better explained

By Gianluca B

Jul 8, 2020

It is a good course, but I believe it needs to be updated and that some quiz need reviewing. Sometimes it's really hard to understand what an exercise is asking you to do and there isn't much support.

By Goodwill T K

Jan 1, 2020

I could not get the Answers to the practice quiz of week 3

as my first line differed from the question first line.

the first two words were correct but the rest differed. MarkovWordOne.java

By Devul N

Sep 1, 2017

A very challenging course with a lot of assignments, great professors and discussion forum. But I feel like the instructors could have given the instructions more clearly on the assignment

By Ridesh R

Aug 23, 2020

The Course is Good. But Week 3 is so hard to understand and the assignments are frustrating and it took long time to complete. Week 3 must be made easier......

By Sergio R

Jul 7, 2021

I would like to get more help with the markov and wordgrams excercises, they are very complicate and you are not given the necessary time to explain them

By Aistis R

Jan 27, 2016

i liked everything except some of the quizzes since some questions were unclear or wrong (but still, I was a beta tester, so all great) - thank you!

By Anik S

Aug 3, 2020

In week 3, the Markov theorem should be explained more clearly. It was not clear enough to understand by only listening to the explanation.

By Mr W

Jul 28, 2020

This was really a tough course. It made me to learn clean coding by implementing blocks of codes in an organized way without redundancy.

By Shaun R

Feb 19, 2019

The third week was a great challenge and, while frustrating at times, gave me more to think about as I'm developing as a programmer.

By Shridhar S

Aug 17, 2017

The assignments get really cluttered sometimes and week 4's final quiz can certainly improve. Other than that, awesome course! :D

By Anna M

Apr 24, 2020

A great, challenging course for a beginner. I graded 4 stars as there are no programming exercises in the last week.

By Jeff M

Mar 19, 2019

Good class and good education. My only objection is that some of the practice tests seemed unusually difficult.

By 廖灿

Oct 12, 2017

not suitable for new beginners without any programming basis; teaching is good though.

By Abhi S

May 9, 2020

Some of instructions are incmplete or unclear otherwise very good course for starting

By Kareem E

Feb 7, 2016

the course material is really interesting , but it seems to be a little bit hard .

By Alexandre C

May 29, 2017

Nice job in getting complicated things simple ! Congrats to the Duke's team.

By Sachin k

Jul 22, 2017

Very good course .. important for any wanna be programmer or beginner

By Liton M

Sep 3, 2020

Very helpful course that can be add more value in my career.

By Saleh S

Dec 31, 2018

You need to explain Exceptions and interfaces more deeply

By Liusicong

Feb 15, 2016

The homework is too time consuming.

By Jinxin Z

Feb 7, 2020

week 3 may need more explanation

By sourabh c

Oct 20, 2020

very good course learn a lot .