The SOLID Principles of Software Engineering
“Don’t surprise software users. Don’t surprise people reading your code.”
SOLID is an acronym used for the five principles of object-oriented programming and design. These principles were first introduced by Robert C. Martin and are widely used as a guide for creating maintainable and scalable software. The SOLID principles of software engineering are as follows.
There’s an underlying common theme to all of these principles:
Principle of least astonishment (POLA): “People are part of the system. The design should match the user’s experience, expectations, and mental models.”