• 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:

    26 - 50 of 253 Reviews for Java Programming: Principles of Software Design

    Filled StarFilled StarFilled StarFilled StarStar

    By Alejandro C

    •

    Aug 28, 2022

    Great course, but some assignements are a little confusing

    Filled StarFilled StarFilled StarFilled StarStar

    By Dinesh P

    •

    Dec 16, 2021

    Slightly difficult course

    Filled StarFilled StarFilled StarStarStar

    By Michael B

    •

    Nov 25, 2022

    The course covers a small list of topics concerning programming principles.

    The principle of programming against interfaces is not covered correctly in the course.

    The tests are sometimes time consuming and it's hard to find mistakes, although the topics itself are rather simple.

    Filled StarFilled StarStarStarStar

    By Pablo C

    •

    Jun 22, 2023

    at first, it started fine, not extensive explanations but just righ.

    At the end of week 3, it was a dissaster, it seems like they just put everything together in a rush. This is a waste of money and definitely not recommended.

    Filled StarStarStarStarStar

    By Xayden R

    •

    Feb 1, 2020

    So bad, I really don't understand the concepts introduced in this course.

    Filled StarStarStarStarStar

    By Yoni K

    •

    Jan 15, 2021

    The practices are very unclear. I was stuck for hours!

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Utchchhwas S

    •

    Jul 9, 2020

    This is my fourth course in the specialization. I enjoyed all the courses in the specialization including this course. This course introduces the basics of software design using Java. But compared to the previous courses in the specialization this course lacks behind in quality. Especially, the assignments in week 3 are poorly explained and the lectures also don't provide necessary guidelines regarding them. Felt a bit disappointed at this. But overall, this was a good course. I would have given it a 4 star but giving it a 5 star taking the whole specialization into account.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Edward F

    •

    Jun 10, 2017

    I took the full Specialization, so I'm going write the same review for each of the 5 modules.

    This is a great course, but it's not for beginners. They ask you to do a lot of coding, which is great since that's the only way to really gain proficiency. And the code they ask you to write is, in my opinion, pretty hard for someone new to coding. My hat's off to someone new to programming who makes it through the five modules.

    So, thanks to Duke for putting together a great course. It was very good.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Ravishankar C

    •

    Feb 25, 2017

    It was a great course! It is not easy as the previous courses in the specialization but it is worth taking it. The concepts of Interfaces, Abstract Classes, Comparator, Comparable and many more are covered in this course. It is quite interesting as it deals with solving problems related to Earthquake Data and Markov's Predictive Text Generation. Thanks to the Instructors for providing such a valuable course on this platform. #Enjoyed the #Course!

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Zhao Y

    •

    Apr 29, 2020

    I like this course very much. The design of the course is very decent, and the lecturers are skillful. With BlueJ as a starter tool and introduce more advanced too at this point is a great idea for novice learners to avoid unnecessary difficulties at beginning. I'm looking forward to enroll in the Capstone course in this specialization and other related courses.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Jon T

    •

    Jan 13, 2016

    A self contained course wherein you learn basic objected oriented design principles that is often missed out in the industry during software development.

    This course gave me a new perspective at software design. Coming from a procedural programming, this course helped me approach problems in a much higher level, easing the creation of a solution to a problem.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By phillip k

    •

    Nov 3, 2016

    This course is designed for the novice and it is clear that a lot of thought has been put into making sure that the core principles of programming using Java are as easy as possible to understand.

    The teaching material is superb, and when I used the forum I received excellent support from a very knowledgeable member of the teaching team,

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Pranali N

    •

    Oct 14, 2020

    Course design was good and assignments were challenging . Now as a beginner , I am more confident about Java language. I feel that for Week 3 assignments , clarity of instructions was not there compared to previous two weeks. So I had to look through Discussion forums for the hints... but overall it was amazing experience!!

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By SMRUTI R D

    •

    Apr 6, 2016

    It is an excellent course for those who intend to know different design constructs in java. The course material, practice quizes and tests are designed to help the student apppreciate and be reasonably proficient in these aspects. My sincere gratitude to the professors and their team for this successful program.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Γεώργιος Κ

    •

    May 24, 2020

    All the courses of this specialization are needed for ones who enter the world of programming. The course ensures that you will understand what you have to know by implementing quizzes, questions and exhausting exercises that can be solved using only the material of the course.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Brian B

    •

    Mar 20, 2016

    This class probably isn't as good as the previous two--but those had such high quality, they're hard to compete with.

    Overall, I continued to become a bit more comfortable with java and learned some things that might help me with my data science potential in the future!

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Michael D

    •

    Nov 29, 2018

    Fantastic course. Thanks to the instructors and students who helped put this coursework together. I've learned a tremendous amount about OOP and software design. Will continue on with the capstone couse to complete the specialization. Thank you.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Vaibhav S

    •

    Sep 15, 2019

    Really Helpful course. It helped me a lot to become familiar with the Java language and enlighten me with the fact that java can be used to solve a wide array of problems, which i considered impossible and tricky when i used java earlier.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Mike S

    •

    Jun 20, 2017

    Never thought I would start this course with no coding knowledge whatsoever and now I'm writing programs to solve complex problems and I'm hooked. Great course and I would highly recommend it to anyone interested in learning programming.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Aminath K G

    •

    Feb 25, 2019

    Enjoyed this course and the examples used to learn algorithms (earthquakes data and predictive text). I did find that week 3 had a lot of work packed into one week. Otherwise, interesting and fun course.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Vinayak S A

    •

    May 4, 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.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By María V D

    •

    May 8, 2018

    I´m really shocking with the course, because integrate all concept, start a new concepts, and I´m felling great for accomplished. Thank you team teacher´s for the opportunity, you are great.

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Musa M N

    •

    Feb 26, 2017

    This nicely packaged course is learner centered. It engages the learner by enforcing practice through interesting exercises and quizzes. Kudos and Thumbs up to the team of great instructors

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By Shayan A B

    •

    Aug 13, 2016

    This course was another of many well-taught courses of Duke University. The GPS library use to find locations of earthquakes particularly of very interesting. Thank you Duke University

    Filled StarFilled StarFilled StarFilled StarFilled Star

    By kai k

    •

    Aug 16, 2019

    amazing material - solid learning for Java

    one struggle - discussion boards don't seem to be monitored by staff most of the time - expect to do most on your own without teacher input

    • 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

    Sign up

    Learn on your own time from top universities and businesses.

    ​
    ​
    Between 8 and 72 characters
    Your password is hidden
    ​

    or

    Already on Coursera?


    I accept Coursera's Terms of Use and Privacy Notice. Having trouble logging in? Learner help center

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