In ingegneria del software, SOLID è un acrostico riferito a cinque principi dello sviluppo del software orientato agli oggetti descritti da Robert C. Martin in diverse pubblicazioni dei primi anni 2000.[1][2] Tali principi vengono detti SOLID principles (letteralmente "principi solidi"). La parola è un acronimo che serve a ricordare tali principi (Single responsibility, Open-closed, Liskov substitution, Interface segregation, Dependency inversion)[3], e fu coniata da Michael Feathers.
I principi SOLID sono intesi come linee guida per lo sviluppo di software leggibile, estendibile e manutenibile, in particolare nel contesto di pratiche di sviluppo agili e fondate sull'identificazione di code smell e sul refactoring.