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.
About this Course
Skills you will gain
Duke University has about 13,000 undergraduate and graduate students and a world-class faculty helping to expand the frontiers of knowledge. The university has a strong commitment to applying knowledge in service to society, both near its North Carolina campus and around the world.
- 5 stars74.40%
- 4 stars18.92%
- 3 stars4.08%
- 2 stars1%
- 1 star1.57%
TOP REVIEWS FROM JAVA PROGRAMMING: PRINCIPLES OF SOFTWARE DESIGN
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.
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.
I could not get the Answers to the practice quiz of week 3 as my first line differed from the question first line.\n\nthe first two words were correct but the rest differed. MarkovWordOne.java
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
About the Java Programming and Software Engineering Fundamentals Specialization
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.
Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I subscribe to this Specialization?
Is financial aid available?
Will I receive a transcript from Duke University for completing this course?
More questions? Visit the Learner Help Center.