Real-world objects have their own identities and properties. Objects in computer programming also do, but they go further. For example, a date or bank account can be an object in a computer program, while you can't touch one in real life. This video tutorial distinguishes between objects themselves and their behaviors, such as saving or printing, and answers the question, "What is an object?"
- View Offline
Always remember that Object-Orientation and computing was intended to make…thinking about programming closer to thinking about the real world.…And that means if we ask what is an object in a computer program, we first ask…what is an object in the real world?…Well, we instinctively know what that means, but it's tough to describe without…saying something vague like an object is a thing.…So is this apple an object in real life? Sure. This desk? Well, of course. This mug? Absolutely!…They are all objects, these are all things.…
We understand that objects are separate from one another.…They have their own existence, their own identity that is independent of other objects.…This is a mug, and this is a mug, but they are not the same mug, they are…not the same object.…They are different objects, they have their own identity.…We know that being an object has nothing to do with complexity.…An apple is an object, but so is an aircraft carrier, so as an iPhone, and we…know that one object might contain other objects.…
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