Software Construction: Data Abstraction

About this Course

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.

Created by: University of British Columbia

Level: Introductory


Related Online Courses

Modern software is under constant attack, but many software developers have never been told how to effectively counter those attacks. This course works to solve that problem, by explaining the... more
Este curso de Python tiene el objetivo de enseñar a todos lo básico de la programación de computadoras usando Python. Conocerás cómo construir un programa de una serie de instrucciones simples en P... more
This course takes you through lessons 14 through 18 of CS6750: Human-Computer Interaction as taught in the Georgia Tech Online Master of Science in Computer Science program. In this course,... more
Este es un curso introductorio para aprender programación con Java. Java es uno de los lenguajes de programación más usados actualmente. A lo largo de las cinco semanas se introducen pr... more
This course introduces you to PyTorch, one of the most popular deep learning frameworks, revealing how it can be used in your company to automate and optimize processes through the development and... more

CONTINUE SEARCH

FOLLOW COLLEGE PARENT CENTRAL