This is the third course in the Software Development MicroMasters program. You will learn how to build larger and more complex software systems using the Java programming language.
The course begins with the topic of data abstraction – from specification to implementation. Particular attention is given to how to write robust tests using JUnit. Then the course expands on these ideas to explore how type hierarchies and polymorphism can be used to decrease redundancy in your code. The course wraps up with a discussion of how to design robust classes.
By the end of the course, you will have a solid foundation in designing software in Java, and be ready to move onto Software Construction: Object-Oriented Design, where you will learn more complex design patterns and principles designing object-oriented programs.
Learners who enroll in the Verified track will receive staff grading for the course project and increased interaction with the instructors and staff.
Wide Choice
Explore expert-led technical, leadership & personal growth courses.
Customized Learning
AI-powered recommendations so you follow what fits your goals.
Certifiable Skils
Earn recognized certificates to showcase your progress.
Practical Impact
Gain immediately usable knowledge you can apply at work or life.
Progress Tracking
Track your growth every course, see how far you’ve come.
Career & Personal Growth
Advance professionally while growing personally.
We combine wide course variety, AI-driven personalization, and practical content so you learn what matters, efficiently.
Yes, every completed course grants you a certificate to validate your achievements.
They range from beginner to advanced. No matter your level, there’s a fit to help you grow.
Our platform uses AI to analyze your progress and suggest courses tailored to your goals.
ClearTech provides progress tracking tools so you can monitor learning achievements as you complete courses.
Yes, once you enroll, you can access your courses online and start right away.