Object oriented programming
OOP concepts:
- Encapsulation - make attributes private and expose only intended behaviors as methods
- Abstraction - expose only methods the user needs to know and hide away (abstract) any unnecessary implementation details
- Inheritance - child classes get access to methods and attributes of parent class
- Polymorphism - same method name can be implemented differently in different child classes
UML Diagrams
Start with first 5 videos of https://www.youtube.com/watch?v=GCTEVZjxznc&list=PLAC2AM9O1C5KioUMeH9qIjbAV_RMmX8rd
Diagrams recreated by https://lovepreet.hashnode.dev/
Unified Modeling Language (UML)
2 types - Behavioral and structural. Behavioral shows processes while structural shows components. The key behavioral diagrams are shown below.
Use case diagram
Activity diagram
Sequence diagram
Class Diagram
Class representation