Chevron Left
返回到 Java 程序设计:软件设计原理

学生对 杜克大学 提供的 Java 程序设计:软件设计原理 的评价和反馈

4.6
849 个评分
140 个审阅

课程概述

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

热门审阅

OI

Aug 08, 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.

NS

Jun 16, 2016

Like all the modules of this Java specialization, the teachers are very good and the course reaches the objective of teaching the fundamentals of software design with an excellent didactic.

筛选依据:

101 - Java 程序设计:软件设计原理 的 125 个评论(共 135 个)

创建者 Jeff M

Mar 20, 2019

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

创建者 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.

创建者 Kareem E

Feb 08, 2016

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

创建者 Nicholas B

Apr 12, 2018

Great course in general, but some of the exercises / quizzes could be a bit more precise in what they are looking for. Lots of time debugging, lots of time in forums trying to figure out what was wrong, only to find that we were using the wrong project / class because it wasn't clear which one they required.

创建者 Sachin

Jul 22, 2017

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

创建者 Devul N

Sep 01, 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

创建者 Liusicong

Feb 16, 2016

The homework is too time consuming.

创建者 Michael C

Sep 13, 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.

创建者 Alexandre C

May 29, 2017

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

创建者 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!

创建者 Shridhar S

Aug 18, 2017

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

创建者 廖灿

Oct 12, 2017

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

创建者 Bryan Y

Jan 18, 2017

Pacing of this course was all over.

Interface and Abstract classes were introduced and the material and lessons were easy to follow. Sorting using bubble sort, caparable, and comparator operators were also easy to follow. The final week presented topics on exception and try/catch/finally, but provided no practical programs for a student to write to ensure the topics were understood.

The problem was in week 3. N-Grams meant to teach some very important concepts about Markov and predictive text, but failed somewhat since the quizes were not clear and the grading a bit harsh. In the quizes, problems were presented and you either had the right output or you did not. There was no checks available that allowed a student to figure out why code produced the wrong output. In other modules (and courses in this series), input was provided and expected out based on the input was provided to verify code was working correctly. Not in section 3 - you wrote the code, took the quiz, and if you got the answer wrong were left scratching your head as to why, since there were really no means to check.

Don't mistake this feedback as saying the course was bad - it was actually quite good. If the course material for week 3 is updated to include clearer instructions and some better checks to ensure code is working correctly then I will change my review from a four star (it's more 3.5 than 4) to a five star.

创建者 Itai E

Jul 21, 2019

This course really increased the difficulty in Week 3 and gave poorly written instructions to go along with it. Overall, the course was very interesting and I learned a lot from it. Anyone who is interested in expanding their Java programming skills and write "neater" or "better code, this course is for you.

创建者 Peter G W

Dec 24, 2018

Near the end of the course it was very difficult to get programs working exactly as intended. I felt the instructions could have been clearer, especially in Week 3's assignments.

创建者 vacous

Jan 31, 2017

The structure of the lectures as well as the assignments might need some redesign.

In the lecture, I think it might be better to explain the algorithm very clearly without talking about any coding details first, and then have some lectures explaining the code implementation. Right now, the coding implementation and the algorithm explainations are mixed together in a way that is not really easy to digest.

However, I really appreciate the solid content of this course. The markov assignment is a actual assignment copied from the CS201 course in Duke. Moreover, it is implemented with even a more sophisticated and better desiged structure. In the CS201, the concept of inheritance is not introduced yet. For all of you who made it to week03 assignment, you can applaud yourselves.

Sadly, the assignment design of this course is very disappointing. Despite its rich content, it requires the students to take a long time to adjust some details at some corner of the method to do the quiz question. It is very error prone and tedious. The final quizs need some simplification in the structure or format.

Overall, I still recommend people taking this course. Very Good content. Just be prepared for the assignment, it really needs a considerable amount of patience and efforts.

创建者 Raoul P

Jan 05, 2018

In Course 4, week 3, an assignment (EfficientMarkovModel) is poorly explained, and understandable only with the context of the following text. This was initially confusing to me. Otherwise, I found the course to be similarly good as the previous ones.

创建者 Pawel D

Jan 11, 2016

Some interesting concepts are being taught, but the course is uneven. The first project required a lot of work, while the last week had no project at all.

Minor errors in videos and programming assignments. Somewhat messy code.

创建者 Nuggu S V R

Jul 04, 2016

Please show the quiz answers for verification purpose since we have to buy the course to submit answers

创建者 Kelly R R H

Mar 21, 2016

Good Course, but in my perspective the teachers could explain better.

创建者 Cullen B

Dec 31, 2016

Despite having a strong engineering background, I found this course poorly communicated. The heavy use of technical jargon makes the concepts (which are intended to be simple) over complicated. The predictive text is interesting but simple exercises are needed to clearly teach abstraction and interfaces clearly.

创建者 Weiqi Y

Sep 27, 2017

not as good as the previous ones in the specialization.

创建者 Boğaçhan A

Jun 21, 2017

This course was a content-overload when compared to the others. The coursework was a lot heavier and harder. But in the end it was all worth it. The only problem is that when you got stuck, the problem could be in many places since the guides did not give a chance test the code regularly as in the previous courses. Other than that, I can feel the improvement.

创建者 Alana G

Jun 11, 2019

Overall, this course is pretty good and it helps to learn the basics of Java Interfaces. However, Week 3 was very confusing and discussion posts were not at all helpful in the forums. I am having a lot of trouble with the random text generator (assignment one) and I can not move on until I get that one method correctly. I was not able to understand the getRandomText() method, therefore it was very difficult to do MarkovFour. Especially, when MarkovOne was not even working. The readings had VERY confusing wording and I believe the grammar caused confusion. However, it could have been a typo. That is why I gave this specific course a 3 star rating.

创建者 saurabh

Jun 29, 2019

while the course is structured well, there is almot zero support when one gets stuck. Coursera has not maintained an active forum, unlike other platforms. It ends up wasting a lot of time for us.