Single Responsibility
Domain: Software Engineering
🎯 Motivation
Each module/class/function should do one thing. Easier to understand, test, and maintain.
📋 Concrete Example
Good: calculate_tax() only calculates tax. format_receipt() only formats. send_email() only sends. Each does one thing. Bad: process_order() calculates tax, formats receipt, sends email, and updates inventory. Too many responsibilities.
🔗 Analogy
Single responsibility is like a factory assembly line - each station does one thing: put on the wheels, paint the body, install the seats. Focused, efficient, replaceable. One thing per station (module).