Software Engineering
Overview of Software Engineering paradigms and principles
Software Engineering (SE)
Core principles, SDLC, and agile methodologies
Object-Oriented Programming (OOP)
Encapsulation, inheritance, polymorphism, and abstraction
Functional Programming (FP)
Pure functions, immutability, and higher-order functions
Design Patterns
Creational, structural, and behavioral solutions to common problems