Software Construction
Data Abstraction
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.
What you'll 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
Get a Reminder
Rating | 4.3★ based on 6 ratings |
---|---|
Length | 6 weeks |
Effort | 6 weeks, 8–10 hours per week |
Starts | On Demand (Start anytime) |
Cost | $125 |
From | University of British Columbia, UBCx via edX |
Instructors | Gail Murphy, Elisa Baniassad |
Download Videos | On all desktop and mobile devices |
Language | English |
Subjects | Programming |
Tags | Computer Science |
Get a Reminder
Similar Courses
What people are saying
anyone could follow along
Concepts are presented clearly and at a pace that I imagine anyone could follow along with.
or object oriented programming
So the course pushes your limits if you don't know what data abstraction or Object Oriented Programming is, like me.
exercises makes you think
The exercises makes you think, and the questions are challenging.
concepts are presented clearly
about teaching simple syntax
The material teaches the architecture of a Java program before worrying about teaching simple syntax.
now looking forward
Now looking forward to the next course in this way.
program before worrying
pushes your limits
start debugging/breaking things
The final project was fun, and it was great to see someone else's code and start debugging/breaking things.
teach test-driven development
It quickly moves on to teach test-driven development.
it quickly moves
at times ambiguous
reversed order of arguments in test methods), and quiz questions were at times ambiguous, but I still learned a ton from it.
Careers
An overview of related careers and their average salaries in the US. Bars indicate income percentile.
BUILD Leadership Development Program-Corporate Compensation Analyst $72k
Design-Build Design Coordinator $73k
Project Manager - Design Build Team $77k
Server Build Coordinator $82k
Technology Applications Engineer - Product Build Contractor $84k
IT Build Coordinator $86k
Team Build Center Technician Lead $92k
Project Manager/Build Manager $99k
Senior Server Design & Build Engineer $126k
Senior Build and Release Engineer Manager $146k
Senior Software Build/Release Engineer $190k
Vice Assistant President Build Engineer $210k
Write a review
Your opinion matters. Tell us what you think.
Please login to leave a review
Rating | 4.3★ based on 6 ratings |
---|---|
Length | 6 weeks |
Effort | 6 weeks, 8–10 hours per week |
Starts | On Demand (Start anytime) |
Cost | $125 |
From | University of British Columbia, UBCx via edX |
Instructors | Gail Murphy, Elisa Baniassad |
Download Videos | On all desktop and mobile devices |
Language | English |
Subjects | Programming |
Tags | Computer Science |
Similar Courses
Sorted by relevance
Like this course?
Here's what to do next:
- Save this course for later
- Get more details from the course provider
- Enroll in this course