How to achieve effective design?
- Follow OOP (object oriented programming) fundamentals
- Avoid bad design characteristics (code smell)
- Embrace Design Principles
- Class Design - SOLID & GRASP
- Package Design
- Consider Design Patterns and Anti-patterns
I would explain below topics along with example java code.
A bird's-eye view of OOP fundamentals and design principles
- OOP Fundamentals [Part-1]
- Class design principles - SOLID [Part-2] & GRASP [Part-3 - coming soon]
- Package design principles [Part-4 - coming soon]
A bird's-eye view of OOP fundamentals and design principles
Design Principles vs. Design Patterns?
- Design Principle – A set of guidelines that helps us to avoid having a bad design.
- Design Pattern
- Emphasize on principles to assign responsibilities.
- General reusable solution for a problem.
- Shows relationships and interactions between classes or object.
- Example
- Principle – Dependency Inversion Principle
- Pattern – Factory, Abstract Factory (Object Creational)
- Popular frameworks – Spring IoC, Guice, JavaEE CDI, etc.
No comments:
Post a Comment