This repository contains a single comprehensive Python file advanced_oop_principles.py
that demonstrates:
- Object-Oriented Programming principles (Abstraction, Encapsulation, Inheritance, Polymorphism, Association, Aggregation, Composition)
- Software design principles (SRP, OCP, LSP, ISP, etc.)
- Design patterns (Singleton, Factory, Builder, Adapter, Composite, Decorator, Proxy, Observer, Strategy, Command, State)
- Core Python best practices (typing, logging, unit tests, PEP8 compliance)
- Create a virtual environment (recommended):
python -m venv .venv
.\.venv\Scripts\activate
- Install requirements:
pip install -r requirements.txt
- Run the main demo:
python advanced_oop_principles.py
- Run tests:
pytest -q
advanced_oop_principles.py
- Main educational file with examples.tests/test_advanced_oop.py
- Small pytest suite covering a few key examples.requirements.txt
- Minimal dependencies for running tests.
This project is intended as a teaching resource. The examples emphasize clarity and pedagogy over production readiness. Use for learning and adapt for real projects. "# pythonallsamples"