Abstraction focuses on the essential properties of a thing instead of one specific example. If you think of a table, chances are that you give height and width to it, but don't consider exact dimensions. Likewise, in Object-Oriented Programming, when you make a class for bank accounts, you don't make a class specifically for Joe's or Alice's account. Instead, you make a class that covers the accounts of a broad set of people. Learn more about "What is abstraction?" in this video tutorial.
So, there are four fundamental ideas in Object-Oriented Programming, four things…to keep in mind when creating classes, and they have the wonderful terms Abstraction,…Polymorphism, Inheritance, and Encapsulation.…And one way to remember these is with the acronym APIE.…Now, these terms can sound intimidating, but you do most of them already in…daily thought and conversation even if you don't use these actual words.…Let me prove that with the first one, Abstraction.…
If I say table, you know what I mean.…I didn't say if I was thinking of a wooden table or a glass-topped table, if it…had four legs or one central pillar, if it was large or if it was small.…You might have an image in mind, that's okay.…But I don't have to get that specific because you understand the idea of a…table, the abstraction of a table.…You've seen and experienced enough real tables to abstract the idea of what a table means.…
Abstraction means we focus on the essential qualities of something rather than one specific example.…An abstraction means that we automatically will discard what's unimportant or irrelevant.…
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
Skill Level Intermediate
1. Core Concepts
2. Object-Oriented Analysis and Design
Defining requirements6m 9s
3. Utilizing Use Cases
4. Domain Modeling (Modeling the App)
5. Creating Classes
6. Inheritance and Composition
7. Advanced Concepts
8. Object-Oriented Design Patterns
9. Object-Oriented Design Principles
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.