Notes / tag / object-oriented-programming

#object-oriented-programming

51 notes

# Object Oriented Programming

All Object Oriented Programming notes →

1 — Evolution of Programming Paradigms

Surveys Machine Programming, Procedural Programming, Structured Programming, Modular Programming, Object-Oriented Programming, Functional Programming, Event-Driven Programming, Reactive Programming, and Comparing Programming Paradigms as the core sub-topics of evolution of programming paradigms.

object-oriented-programming foundations book

2 — Why OOP Exists

Surveys Software Complexity, Code Reusability, Maintainability, Real-world Modeling, Separation of Concerns, and Abstraction vs Implementation as the core sub-topics of why oop exists.

object-oriented-programming foundations book

3 — Objects and Classes

Surveys Objects, Classes, State, Behavior, Identity, Object Lifetime, and Object Relationships as the core sub-topics of objects and classes.

object-oriented-programming foundations book

1 — Fields and Methods

Covers Instance Variables, Static Variables, Instance Methods, Static Methods, Constructors, Method Invocation, and Object Initialization as the core sub-topics of fields and methods.

object-oriented-programming core-building-blocks book

2 — Access Modifiers

Covers Public, Private, Protected, Package/Internal, Visibility Rules, and Encapsulation Boundaries as the core sub-topics of access modifiers.

object-oriented-programming core-building-blocks book

3 — Object Lifecycle

Covers Object Creation, Constructors, Initialization Order, Finalization, Garbage Collection, Resource Management, and RAII vs GC as the core sub-topics of object lifecycle.

object-oriented-programming core-building-blocks book

1 — Encapsulation

Explains Information Hiding, Data Protection, Getters & Setters, Immutable Objects, and Defensive Copying as the core sub-topics of encapsulation.

object-oriented-programming four-pillars book

2 — Abstraction

Explains Interfaces, Abstract Classes, APIs, Implementation Hiding, and Domain Modeling as the core sub-topics of abstraction.

object-oriented-programming four-pillars book

3 — Inheritance

Explains IS-A Relationship, Base Classes, Derived Classes, Method Overriding, Constructor Chaining, Multiple Inheritance, and Diamond Problem as the core sub-topics of inheritance.

object-oriented-programming four-pillars book

4 — Polymorphism

Explains Compile-Time Polymorphism, Runtime Polymorphism, Method Overloading, Method Overriding, Virtual Functions, Dynamic Dispatch, VTables, and Late Binding as the core sub-topics of polymorphism.

object-oriented-programming four-pillars book

1 — Association

Distinguishes One-to-One, One-to-Many, and Many-to-Many as the core sub-topics of association.

object-oriented-programming object-relationships book

2 — Aggregation

Distinguishes Weak Ownership, Shared Objects, and Lifecycle Independence as the core sub-topics of aggregation.

object-oriented-programming object-relationships book

3 — Composition

Distinguishes Strong Ownership, Lifecycle Dependency, and Composition over Inheritance as the core sub-topics of composition.

object-oriented-programming object-relationships book

4 — Dependency

Distinguishes Uses-A Relationship, Constructor Injection, Method Injection, and Dependency Graph as the core sub-topics of dependency.

object-oriented-programming object-relationships book

1 — SOLID Principles

Breaks down Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion — the five pillars of class-level design discipline.

object-oriented-programming design-principles book

2 — GRASP Principles

Breaks down Information Expert, Creator, Controller, Low Coupling, High Cohesion, Indirection, Pure Fabrication, and Protected Variations as the core sub-topics of grasp principles.

object-oriented-programming design-principles book

3 — Object-Oriented Metrics

Breaks down Coupling, Cohesion, Complexity, Stability, and Maintainability as the core sub-topics of object-oriented metrics.

object-oriented-programming design-principles book

1 — Interfaces vs Abstract Classes

Examines Differences, Trade-offs, Language Implementations, and Interview Questions as the core sub-topics of interfaces vs abstract classes.

object-oriented-programming advanced-concepts book

2 — Object Equality

Examines Identity, Equality, Hash Codes, Value Objects, and Reference Objects as the core sub-topics of object equality.

object-oriented-programming advanced-concepts book

3 — Immutability

Examines Immutable Objects, Thread Safety, Builders, and Persistent Data Structures as the core sub-topics of immutability.

object-oriented-programming advanced-concepts book

4 — Object Cloning

Examines Shallow Copy, Deep Copy, Copy Constructors, and Prototype Pattern as the core sub-topics of object cloning.

object-oriented-programming advanced-concepts book

5 — Object Serialization

Examines Serialization, Deserialization, Versioning, and Security Concerns as the core sub-topics of object serialization.

object-oriented-programming advanced-concepts book

1 — Memory Layout

Explains Stack, Heap, Object Headers, References, and Object Alignment as the core sub-topics of memory layout.

object-oriented-programming memory-and-runtime book

2 — Dynamic Dispatch

Explains Virtual Tables, Interface Dispatch, Runtime Type Information, and Reflection as the core sub-topics of dynamic dispatch.

object-oriented-programming memory-and-runtime book

3 — Garbage Collection

Explains Reachability, Mark & Sweep, Generational GC, Reference Counting, and Memory Leaks as the core sub-topics of garbage collection.

object-oriented-programming memory-and-runtime book

1 — Creational Patterns

Catalogs Singleton, Factory Method, Abstract Factory, Builder, and Prototype — the patterns that control how objects get created.

object-oriented-programming design-patterns book

2 — Structural Patterns

Catalogs Adapter, Bridge, Composite, Decorator, Facade, Flyweight, and Proxy — the patterns that compose objects into larger structures.

object-oriented-programming design-patterns book

3 — Behavioral Patterns

Catalogs Observer, Strategy, State, Command, Chain of Responsibility, Visitor, Iterator, Mediator, Template Method, Interpreter, and Memento — the patterns that govern how objects communicate and share responsibility.

object-oriented-programming design-patterns book

1 — Java OOP

Tours Object Model, JVM, Interfaces, Default Methods, Records, and Sealed Classes as the core sub-topics of java oop.

object-oriented-programming language-specific book

2 — C# OOP

Tours Properties, Delegates, Events, Records, Extension Methods, and Partial Classes as the core sub-topics of c# oop.

object-oriented-programming language-specific book

3 — C++ OOP

Tours Multiple Inheritance, Virtual Functions, Templates, RAII, and Smart Pointers as the core sub-topics of c++ oop.

object-oriented-programming language-specific book

4 — Python OOP

Tours Duck Typing, Multiple Inheritance, Mixins, and Metaclasses as the core sub-topics of python oop.

object-oriented-programming language-specific book

5 — JavaScript & TypeScript OOP

Tours Prototype Chain, Classes, Mixins, and Decorators as the core sub-topics of javascript & typescript oop.

object-oriented-programming language-specific book

1 — Domain-Driven Design Basics

Examines Entities, Value Objects, Aggregates, Repositories, and Domain Services as DDD's core building blocks.

object-oriented-programming large-systems book

2 — OOP in Distributed Systems

Examines how object modeling changes once objects cross process boundaries — Microservices, Service Boundaries, DTOs, Contracts, and APIs.

object-oriented-programming large-systems book

3 — OOP and Concurrency

Examines how Shared State, Synchronization, Immutable Objects, and the Actor Model interact with object design.

object-oriented-programming large-systems book

4 — OOP Anti-Patterns

Examines God Object, Blob, Anemic Domain Model, Shotgun Surgery, Spaghetti Objects, and Inheritance Abuse as the core sub-topics of oop anti-patterns.

object-oriented-programming large-systems book

1 — Frequently Asked Interview Questions

Drills Explain OOP to a Beginner, Why Encapsulation Matters, Why Composition Over Inheritance, Interface vs Abstract Class, Overloading vs Overriding, Static vs Dynamic Binding, Object vs Class, Equality vs Identity, Deep Copy vs Shallow Copy, and SOLID Interview Questions as the core sub-topics of frequently asked interview questions.

object-oriented-programming interview-mastery book

2 — Coding Problems

Drills Design Parking Lot, Design Library System, Design Hotel Booking, Design Elevator, Design ATM, Design Chess, Design Tic Tac Toe, and Design Notification System as classic OOD interview prompts.

object-oriented-programming interview-mastery book

3 — Object-Oriented Design Interviews

Drills Requirement Gathering, Identifying Objects, Relationships, Responsibilities, UML Sketching, Applying SOLID, Trade-off Analysis, and Extensibility as the core sub-topics of object-oriented design interviews.

object-oriented-programming interview-mastery book

1 — UML Class Diagrams

Reference appendix entry for sketching class diagrams — classes, attributes, methods, and relationship notation used throughout this book.

object-oriented-programming appendix book

10 — 200+ MAANG OOP Interview Questions

Reference bank of 200+ OOP interview questions spanning conceptual, coding, and design-interview formats.

object-oriented-programming appendix book

2 — UML Sequence Diagrams

Reference appendix entry for sequence diagrams — object interactions and message ordering over time.

object-oriented-programming appendix book

3 — UML State Diagrams

Reference appendix entry for state diagrams — modeling object lifecycle and state transitions.

object-oriented-programming appendix book

4 — UML Activity Diagrams

Reference appendix entry for activity diagrams — modeling control flow and business logic across objects.

object-oriented-programming appendix book

5 — Common OOP Interview Pitfalls

Reference appendix entry cataloging recurring mistakes candidates make when applying OOP concepts under interview pressure.

object-oriented-programming appendix book

6 — OOP Cheat Sheet

One-page reference summarizing every OOP concept covered in this book for rapid pre-interview review.

object-oriented-programming appendix book

7 — SOLID Cheat Sheet

One-page reference summarizing the five SOLID principles and their interview-ready one-liners.

object-oriented-programming appendix book

8 — Design Pattern Selection Matrix

Reference matrix mapping problem shapes to the GoF pattern that solves them, for quick pattern selection under interview time pressure.

object-oriented-programming appendix book

9 — Language Feature Comparison

Side-by-side comparison of how Java, C#, C++, Python, and TypeScript implement core OOP features.

object-oriented-programming appendix book

Object-Oriented Programming for MAANG Interviews

A book-shaped table of contents for OOP: paradigm foundations, the four pillars, object relationships, SOLID/GRASP design principles, memory and runtime internals, GoF design patterns, language-specific OOP, and OOP at system scale — cross-linking existing pattern, concurrency, and low-level-design notes instead of duplicating them.

object-oriented-programming book reference maang-prep