Java Programming: Principles of Software Design
Take your first step towards a career in software development with this introduction to Java"one of the most in-demand programming languages and the foundation of the Android operating system. Designed for beginners, this Specialization will teach you core programming concepts and equip you to write programs to solve complex problems. In addition, you will gain the foundational skills a software engineer needs to solve real-world problems, from designing algorithms to testing and debugging your programs.
Created by: Robert Duvall
Course Description
Instructor Details
- 4.4 Rating
129 Reviews
Robert Duvall
Robert Duvall is a Lecturer in the Department of Computer Science at Duke University. Having taught computer science at Duke for over 15 years, Professor Duvall has helped to transform introductory computing curricula several times by consistently being an early adopter of ideas, research, or software design practices. His goal is always to find ways to present novice students with a simplified, yet intellectually rigorous, interface that enables them to take advantage of advances in technology and solve significant problems. In recent years, Professor Duvall has worked with colleagues to redesign Duke's introductory computer science course to reach a broader range of students at Duke from a variety of backgrounds and fields. Professor Duvall holds a MSc in Computer Science from Brown University.
More Java courses
Hibernate and Spring Data JPA: Beginner to Guru (2026)
4.8 (1,265 Reviews)
Provider: Udemy
Time: 30.3h
$84.99
Learn JAVA Programming - Beginner to Master (2026)
4.7 (31,368 Reviews)
Provider: Udemy
Time: 61.4h
$119.99
The Complete Java Certification Course (2025)
4.7 (30,462 Reviews)
Provider: Udemy
Time: 18.1h
$174.99
Oracle Java Certification - Pass the Associate 1Z0-808 Exam. (2025)
4.7 (6,236 Reviews)
Provider: Udemy
Time: 20.2h
$12.99
Reviews
By Dimas T L on 4-Nov-19
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.
By Jerrold on 31-Oct-19
This course has been fantastic. A step up in difficulty, week 3 in particular was grueling. I learned so many useful things in this course
By Nikolay A on 7-Oct-19
Poor level of support and detail. Problems are getting hard - not enough resources available.
By Vaibhav S on 15-Sep-19
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.
By Dojung K on 17-Aug-19
I loved this course, all the videos and assignments are perfectly directed. now I really have a deeper understanding about Interface. Thank you so much.
By kai k on 16-Aug-19
amazing material - solid learning for Javaone 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
By Ogonna I on 8-Aug-19
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.
By Itai E on 21-Jul-19
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.
Showing 12 of 129 reviews
Could not load more reviews.
Quality Score
Overall Score : 88 / 100







