• For Individuals
  • For Businesses
  • For Universities
  • For Governments
Coursera
  • Online DegreeExplore Bachelor’s & Master’s degrees
  • MasterTrack™Earn credit towards a Master’s degree
  • University CertificatesAdvance your career with graduate-level learning
Careers
  • Log In
  • Join for Free
    Coursera
    Chevron Left
    Back to Java Programming: Principles of Software Design

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

    Filled StarFilled StarFilled StarFilled StarHalf Faded Star
    4.6
    stars
    1,485 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 i...
    ...

    Top reviews

    OI

    Aug 8, 2019

    Filled StarFilled StarFilled StarFilled StarFilled Star

    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.

    VA

    May 4, 2020

    Filled StarFilled StarFilled StarFilled StarFilled Star

    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:

    1 - 25 of 253 Reviews for Java Programming: Principles of Software Design

    Filled StarStarStarStarStar

    By Amir M O

    •

    May 30, 2016

    A very simplistic and chaotic course. Explanations are all over the place.

    BlueJ is probably the worst IDE I have ever seen and I have been a programmer for about 8 years.

    There are far better courses. I would not recommend this course at all.

    Filled StarStarStarStarStar

    By Katrīna K

    •

    Jun 9, 2022

    Beginning (course 1 in the Java specialization) was promissing but very fast the concepts became not understandable. Videos explain less and less but tasks become more and more complicated. In my opinion this course (and all Java specialization) is not ment for the beginners. This doesn't explain the most basic concepts a person that doesn't have IT background should start with.

    Filled StarStarStarStarStar

    By Abdul H

    •

    Sep 15, 2020

    The course is very poorly designed for begineer. This is the worst ever course on java

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Kandis B

    •

    Jun 7, 2016

    This was a great course, but it was very difficult. I am currently taking a 300 level Data Structures and Algorithm class in Java and relied on some things I learned from that course to help me finish this one. Still, I hit a few road-blocks on programs that held me back for a few weeks until I could find an answer. There were times where I wasn't sure about the specifications. I also needed to use Eclipse on the final program to help find some errors. I spent between 10-20 hours per week on this course. It would have been very helpful to go through the course with someone or a group or have a person that I could email a copy of my code to for suggestions. Overall, I am really glad I took the course. I learned a lot!

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Amaliya A

    •

    Apr 6, 2019

    Super course!

    Well designed, structured, with a sense of humor :)

    To be specific, with this course you are able to write complicated programs step by step with linearly growing difficulty.

    Thanks!

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Agustín P

    •

    Jun 26, 2021

    I was more diffucult than the previous three courses in the specialization, but all in all, I enjoyed it very much and learned a lot! Thanks for such a great course, keep up the good work! :)

    Filled StarStarStarStarStar

    By Bill J

    •

    Dec 27, 2017

    There are a large number of people requesting help with the content in week 3 of this course. Many of them state the assignments need clarification, while others have made significant progress on the assignments but are requesting additional help understanding. Few of these threads in week 3 have been addressed, and I notice many of these threads date back for up to 2 years.

    I have subscribed to this course three times in hopes of persevering, but I can't justify spending any more money when so many students are receiving no replies when asking for help.

    Filled StarStarStarStarStar

    By Aleksey

    •

    Jan 10, 2016

    thanks for the course, but

    -your quizzes is real pain, some random variable could cause wrong result

    -your should follow how it is implemented in lectures in stupid way, like "efficient" way when you build hash map N^2 instead of N

    -bluej sucks you make a lot of clicks to run method, use some decent IDE like eclipse or idea

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Ogonna I

    •

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

    Filled StarFilled StarFilled StarFilled StarStar

    By Vignesh B

    •

    Jul 27, 2021

    Pros: The programming assignments were really great

    Cons: The video lectures were not enough to understand the concepts.

    Tip for learners: Do some research (like watch some youtube videos of the related topics, read geekforgeeks etc ) before watching the lectures.

    Filled StarFilled StarStarStarStar

    By Dimas T L

    •

    Nov 4, 2019

    Many of the assignments in week three were incredibly hard to understand and required scouring the forums to locate where other classmates had to beg instructional staff for assistance. In many instances, the staff agreed that the course had many shortcomings that would be addressed in "upcoming iterations" of the course. However, many of these posts were made up to three years ago, so it made the student feel that not only did the class have errors that the staff did little to address for new cohorts, but also that the updating of the curriculum is not a priority and therefore that the class is now an afterthought.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Gao S

    •

    Dec 15, 2020

    The practise quiz and weekly quiz are always repeated and tedious, You need to test your program on data of different types/ranges, but not the same taype/range. It has no meaning.

    Plus: The estimated time for doing the programming exercise showing on the course page is not true. Even for an experienced software engineer, sometimes over 2 hours for debugging code in the assignment is needed. It took me 4 full days of 10 hours per day in average to finish the course.

    Overall this course is better than the previous 3 courses of the specialization.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Marcelo A B H

    •

    Jan 16, 2021

    Es muy interesante el curso, pero ... la forma en que se plantean los problemas muchas veces no me fue clara, porque? no entendia que recurso debía obtener, muchas veces no podía avanzar porque no me daban los mismo resultados en los ejercicios, pero si estaban correctos en las evaluaciones. Mi mayor desafía fue en Markov no entendía lo que pidieron y mucho la lógica a trabajar, no la lógica del algoritmo, sino la del curso. Veía que habían muchas preguntas sin resolver en el foro por parte de los alumnos

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By ANDR�S F R P

    •

    Apr 23, 2021

    Excellent course, the best I have taken so far. The lessons and assignments are very well designed for you to understand fairly advanced topics. The quizzes are entertaining and engage you with a lot of debugging. Best of all are the contexts around the issues and the narrative of why this or that is a good strategy to implement. Many thanks to Rob, Drew, Sussan, Owen, and all the Duke U staff. I recommend it to anyone.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Christian A H

    •

    Feb 29, 2016

    pretty good, week 3 was challenging for me and the concepts of interface and so on. but in my opinion it should be this way for the learner to have problems and try solving them. Discussions were always helpful and am looking forward to the object oriented programming from San Diego university

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Suryaa

    •

    Jul 28, 2020

    These set of four made not only learning Java fun and also explored on the applications software engineering it has on the real world, touching a little bit of everything in the same field.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Nirlan N Z d S

    •

    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.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Cesar A F B

    •

    Dec 2, 2021

    Este curso es muy bueno, no es para empezar de cero, pero si para aquellos que tienen un poco de conocimiento y quieren empezar a entrar al mundo de la programación en Java.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By NGWERE C M

    •

    Oct 7, 2021

    Software Design Engineering, Programming, Debugging, to be Patience and Consistency

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Noah H

    •

    Mar 10, 2022

    Very good info on software.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Сергей А П

    •

    Aug 28, 2021

    it was hard

    Filled StarFilled StarFilled StarFilled StarStar

    By Will C

    •

    Jul 17, 2020

    I really enjoyed this course and learned a ton. However, I felt like there were a few things that could have been covered in the lectures that were expected in the assignments. I had to dig through many years of forum posts to find help and while I understand that it's helpful to do my own research, it felt like a lot of wasted time sometimes. Finally, in week 3, the module on WordGrams was really difficult and extremely rewarding to complete. And then it wasn't even on the graded quiz!! That was disappointing.

    Filled StarFilled StarFilled StarFilled StarStar

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

    Filled StarFilled StarFilled StarFilled StarStar

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

    Filled StarFilled StarFilled StarFilled StarStar

    By Khushboo M

    •

    Dec 3, 2022

    Good course to start with, BlueJ experience for the first time was amazing for specific to this course. and the real life example of earth quake and the interfaces were thought in such a nice way that it engage to listen and apply.

    • Chevron Left
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • Chevron Right

    Coursera Footer

    Technical Skills

    • ChatGPT
    • Coding
    • Computer Science
    • Cybersecurity
    • DevOps
    • Ethical Hacking
    • Generative AI
    • Java Programming
    • Python
    • Web Development

    Analytical Skills

    • Artificial Intelligence
    • Big Data
    • Business Analysis
    • Data Analytics
    • Data Science
    • Financial Modeling
    • Machine Learning
    • Microsoft Excel
    • Microsoft Power BI
    • SQL

    Business Skills

    • Accounting
    • Digital Marketing
    • E-commerce
    • Finance
    • Google
    • Graphic Design
    • IBM
    • Marketing
    • Project Management
    • Social Media Marketing

    Career Resources

    • Essential IT Certifications
    • High-Income Skills to Learn
    • How to Get a PMP Certification
    • How to Learn Artificial Intelligence
    • Popular Cybersecurity Certifications
    • Popular Data Analytics Certifications
    • What Does a Data Analyst Do?
    • Career Development Resources
    • Career Aptitude Test
    • Share your Coursera Learning Story

    Coursera

    • About
    • What We Offer
    • Leadership
    • Careers
    • Catalog
    • Coursera Plus
    • Professional Certificates
    • MasterTrack® Certificates
    • Degrees
    • For Enterprise
    • For Government
    • For Campus
    • Become a Partner
    • Social Impact
    • Free Courses
    • ECTS Credit Recommendations

    Community

    • Learners
    • Partners
    • Beta Testers
    • Blog
    • The Coursera Podcast
    • Tech Blog
    • Teaching Center

    More

    • Press
    • Investors
    • Terms
    • Privacy
    • Help
    • Accessibility
    • Contact
    • Articles
    • Directory
    • Affiliates
    • Modern Slavery Statement
    • Manage Cookie Preferences
    Learn Anywhere
    Download on the App Store
    Get it on Google Play
    Logo of Certified B Corporation
    © 2025 Coursera Inc. All rights reserved.
    • Coursera Facebook
    • Coursera Linkedin
    • Coursera Twitter
    • Coursera YouTube
    • Coursera Instagram
    • Coursera TikTok
    Coursera

    Welcome back

    ​
    Your password is hidden
    ​

    or

    New to Coursera?


    Having trouble logging in? Learner help center

    This site is protected by reCAPTCHA Enterprise and the Google Privacy Policy and Terms of Service apply.