Skip to content
Home » software design

software design

Dependency Inversion Principle featured image with purple background, SOLID badge, D icon, DIP in C subtitle in the Software Design in C series by NerdyElectronics

Dependency Inversion Principle (DIP) in C

Learn the Dependency Inversion Principle with practical C examples. See how depending on abstractions (function pointers) instead of concrete implementations makes code flexible and testable.

Composition Over Inheritance featured image with purple background, Clean Code badge, C icon, Inheritance in C subtitle in the Software Design in C series by NerdyElectronics

Composition Over Inheritance in C

Learn the Composition Over Inheritance principle with practical C examples. See how embedding structs and assembling behavior creates more flexible and maintainable code than deep hierarchies.

Separation of Concerns featured image with purple background, Clean Code badge, S icon, in C Programming subtitle in the Software Design in C series by NerdyElectronics

Separation of Concerns in C

Learn Separation of Concerns with practical C examples. See how dividing code into distinct sections — each handling one concern — makes software modular, testable, and maintainable.