Foundations of Programming: Object-Oriented Design
Video: WelcomeMost modern programming languages, such as Java, C#, Ruby and Python, are object-oriented languages. However, object-oriented design is both a language and a set of ideas, so it's helpful to learn about the use cases for each language in order to use the one that best meets your requirements. This online Welcome video discusses the foundations of programming for object-oriented design to help you understand the basic principles.
Most modern programming languages, such as Java, C#, Ruby, and Python, are object-oriented languages, which help group individual bits of code into a complex and coherent application. However, object-orientation itself is not a language; it's simply a set of ideas and concepts.
Let Simon Allardice introduce you to the terms—words like abstraction, inheritance, polymorphism, subclass—and guide you through defining your requirements and identifying use cases for your program. The course also covers creating conceptual models of your program with design patterns, class and sequence diagrams, and unified modeling language (UML) tools, and then shows how to convert the diagrams into code.
- Why use object-oriented design (OOD)?
- Pinpointing use cases, actors, and scenarios
- Identifying class responsibilities and relationships
- Creating class diagrams
- Using abstract classes
- Working with inheritance
- Creating advanced UML diagrams
- Understanding object-oriented design principles
Hi. I'm Simon Allardice, and welcome to Foundations of Programming: Object-Oriented Design. This course exists because everyone who learns to program hits the same wall. First, you get through the fundamentals, the basic syntax of a programming language. You learn how to write some code. But soon you realize there's a huge difference between being able to write a few lines of code and being able to design, understand, and create a more complex application. And often it's difficult to even know where to start. Well, this is where object- oriented design can help.
But to discuss these ideas we're going to need a vocabulary, the jargon, the terminology, the words we use, so that when we talk about this we know exactly what we're talking about. And we'll see the process of taking an initial idea for an application, something you'd write on the back of a napkin and understanding how to break it apart into the right pieces, so that we end up knowing exactly what code to go and write. And we'll also see the basics of UML, or the Unified Modeling Language. This is one useful way of diagramming, of sketching visual models of an object-oriented system.
Now we won't be writing any code in this course. As you'll see, we won't have to. But you will see examples of how the most popular languages put these ideas into practice. So we've got a lot to cover. Let's get started!
There are currently no FAQs about Foundations of Programming: Object-Oriented Design.