Skip to main content

Software Construction: Data Abstraction

Provided by University of British Columbia (UBCx)
Introductory
See prerequisites

Learn powerful data abstraction and decomposition techniques to build large, complex programs.

Start Date:

What you will learn

  • How to read and write Java programs
  • How to test Java programs with JUnit
  • To build larger software systems using abstraction and decomposition
  • How to specify, implement, use and test a data abstraction

Overview

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.

Meet your instructors

View Courses
Of all edX learners:
73% are employed
Of all edX learners:
45% have children
Based on internal survey results
390,212 people are learning on edX today