Design patterns are pre-written solutions for specific problems in object-oriented programming. It's key to remember these patterns are meant to address procedural issues rather than the intended usage. For example, a design pattern wouldn't answer the question of how to make a payroll system, but rather a question such as how to undo an object being automatically changed. This introduction to design patterns video explains this concept in more detail.
As you start to get more familiar with object-oriented development, you'll hit…the concept of Design Patterns.…These are well-tested solutions to common problems and issues we run into in…software development.…Now these are not business solutions. Design Patterns don't deal with bank…accounts and customer classes.…They work at a different level than that.…Think of them as best practices, suggestions for how you might arrange your own…classes and objects to accomplish a result.…So they don't deal with questions like, oh, I need to create an email app for…a phone, or I need to make a payroll system, instead they deal with more general issues.…
Say you're working through your class design, and you realize that if one of your…objects changes, it needs to let several other objects know, and you wonder if…there is a good way to do that.…Well, there are multiple ways you could deal with that, but there is a…well-tested proven approach that's been given the name of the Observer Design Pattern.…Or another example let's say you realize an object will be changed by a lot of…
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.