- Theory
- Procedural programming 👂 heard
- Imperative programming 🙋 explained
- Structured programming
- Non-structured programming
- Functional programming 👂 heard
- Prototype-based programming 🙋 explained
- Object-oriented programming 🖐️ used
- Object-based programming
- Generic programming 👂 heard
- Concurrent computing 👂 heard
- Asynchronous programming 👂 heard
- Parallel programming 👂 heard
- Reactive programming 👂 heard
- Functional-reactive (FRP)
- Automata-based programming
- Domain-specific languages
- Multi-paradigm programming 🖐️ used
- Metaprogramming
- Actor model
- Lambda calculus
- Black box
- Information hiding
- Aspect-oriented programming
- Anemic domain model
- Class composition
- OOP basics
- Constructor🎓 known
- Operator
new
🎓 known - Static method 🎓 known
- Method 🎓 known
- Async method 👂 heard
- Getters, Setters 🎓 known
- Public fields 🎓 known
- Private fields 🎓 known
- Field declarations 🙋 explained
- Inheritance 🖐️ used
- Parent class 🖐️ used
- Polymorphism 🖐️ used
- Abstract class 👂 heard
- Interface 👂 heard
- Encapsulation 🖐️ used
- Hidden class 👂 heard
- Object form
- Instance 🎓 known
- Introspection
- Reflection
- The diamond problem
- GRASP
- Information expert
- Creator
- Controller
- Indirection
- Low coupling
- High cohesion
- Protected variations
- Pure fabrication
- SOLID
- Single-responsibility principle (SRP)
- Open–closed principle (OCP)
- Liskov substitution principle (LSP)
- Interface segregation principle (ISP)
- Dependency inversion principle (DIP)
- Patterns
- Singleton 👂 heard
- Factory Method 🖐️ used
- Abstract Factory
- Adapter
- Observer
- Strategy
- Facade
- Proxy 🖐️ used
- Chain of Responsibility 👂 heard
- Command
- Iterator
- State
- Bridge
- Builder
- Prototype 🖐️ used
- Composite
- Decorator
- Flyweight
- Mediator
- Memento
- Template Method
- Visitor
- Reactor
- Active object
- Delegation