EdX

Software Construction: Object-Oriented Design (edX)

Software Construction: Object-Oriented Design (edX)

Learn how to design large software systems that solve real-world problems using object-oriented design techniques. By the end of the course, you will have a solid foundation in Java and Object-Oriented Design, as well as many software development concepts that can be applied to any language.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

This course, part of the Software Development MicroMasters program, will dig deep into the principles of object-oriented design, and introduce new abstraction techniques and design patterns. You will use these techniques to build an application that makes use of popular online services and APIs – the most complex software design project so far.
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 use software design patterns
  • To implement and test an object-oriented design
  • How to develop an application using online services and APIs

Prerequisites:

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Platform Product Essentials (edX) EdX
University of Maryland, College Park,University System of Maryland - USM,USMx,UMD

Platform Product Essentials (edX)

Gartner Research predicts that by 2024, 65% of application development projects will rely on low-code no-code (LCNC) development. Successfully implement a platform to transform your business. Building business workflows, process automation and custom app development has never been easier with the modern landscape of technology tools. Learn how to deliver business solutions on some of the most cutting edge low-code development platforms, like Salesforce, Appian, Servicenow, Mendix and many others to revolutionize how business is done. Ensure your business, your team, and your vendors are set up for success utilizing these Low Code/No-Code platforms (LC/NC).

Self Paced
Self-Paced
Creative Programming for Digital Media & Mobile Apps (Coursera) Coursera
University of London,Goldsmiths, University of London

Creative Programming for Digital Media & Mobile Apps (Coursera)

This course is for anyone who would like to apply their technical skills to creative work ranging from video games to art installations to interactive music, and also for artists who would like to use programming in their artistic practice. This course will teach you how to develop and apply programming skills to creative work. This is an important skill within the development of creative mobile applications, digital music and video games. It will teach the technical skills needed to write software that make use of images, audio and graphics, and will concentrate on the application of these skills to creative projects. Additional resources will be provided for students with no programming background.

Aug 17th 2026
5-12 Weeks
COBOL Programming with VSCode (Coursera) Coursera
IBM

COBOL Programming with VSCode (Coursera)

Professor Tak Auyeung of American River College, said it beautifully, “A programming language is not a fashion statement” it is used for a purpose. Whether it is to add new features, modify logic, create APIs to integrate it into other applications, or implement modern development practices, businesses around the world need application developers who know COBOL.

Aug 17th 2026
3 Weeks
Building Microservice Platforms with TARS (edX) EdX
Linux Foundation,LinuxFoundationX

Building Microservice Platforms with TARS (edX)

Are you interested in microservices? Don’t miss out on TARS! Get an in-depth primer on the powerful TARS framework for building your microservice platform. This course is an introduction to microservices and the TARS framework for beginners. TARS is a new generation distributed microservice applications framework designed to support multiple programming languages, including C++, Golang, Java, Node.js, PHP, and Python, which allows developers and enterprises to quickly build stable and reliable applications that run at scale.

Self Paced
Self-Paced
How to Code: Simple Data (edX) EdX
The University of British Columbia,UBCx

How to Code: Simple Data (edX)

Learn systematic program design - how to write programs that tell a clear story about what they do, are well-tested, and easy to improve. This programming course takes a unique approach, as it focuses on learning a systematic programming method rather than a programming language. This practical approach will help you channel your creativity so that you can program well in any language.

Self Paced
Self-Paced
CS50's Introduction to Computer Science (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Computer Science (edX)

An introduction to the intellectual enterprises of computer science and the art of programming. This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50 teaches students how to think algorithmically and solve problems efficiently.

Self Paced
Self-Paced
IT Fundamentals for Business Professionals: Software development (edX) EdX
Universitat Politècnica de València,UPValenciaX

IT Fundamentals for Business Professionals: Software development (edX)

Working with Information Technology (IT) without the necessary background? Learn the fundamentals of software development. This course is one of the 5 courses of an introductory business information systems series, designed to introduce you to the amazing world of Information Technology.

Self Paced
Self-Paced