SOLID përfaqëson një sërë parimesh themelore në hartimin e softuerit të përdorur për të krijuar sisteme të mirëmbajtshme, të zgjerueshme dhe fleksibël. SOLID është një akronim i formuar nga shkronjat fillestare të këtyre pesë parimeve:
S- Single Responsibility Principle
Një klasë ose modul duhet të ketë vetëm një përgjegjësi të vetme. Kjo ndihmon në mirëmbajtjen dhe modifikimin më të lehtë të kodit pa ndikuar në funksionalitete të tjera.
O- Open/Closed Principle
Kodi duhet të jetë i hapur për zgjerim(duke shtuar veçori të reja) por i mbyllur për modifikim(duke mos ndryshuar kodin ekzistues). Kjo inkurajon përdorimin e trashëgimisë, ndërfaqeve ose mekanizmave të tjerë të zgjerimit për të shtuar veçori të reja pa modifikuar kodin ekzistues.
L- Liskov Substitution Principle
Objektet e një nënklase duhet të jenë të zëvendësueshme për objektet e klasës mëmë pa ndikuar në korrektësinë e programit. Kjo siguron që trashëgimia të zbatohet në mënyrë të sigurt dhe të saktë.
une- Interface Segregation Principle
Është më mirë të keni ndërfaqe të vogla dhe specifike sesa një ndërfaqe të madhe me shumë metoda. Kjo ndihmon për të shmangur që klasat të detyrohen të zbatojnë metoda të panevojshme.
D- Dependency Inversion Principle
Modulet e nivelit të lartë nuk duhet të varen nga modulet e nivelit të ulët. Të dyja duhet të varen nga abstraksionet. Ky parim inkurajon përdorimin e injektimit të varësisë për të reduktuar lidhjen e ngushtë midis moduleve dhe për ta bërë më të lehtë testimin dhe zgjatjen e sistemit.
SOLID parimet përmirësojnë strukturën e kodit, promovojnë modularitetin dhe zvogëlojnë rrezikun që lidhet me ndryshimet. Këto parime mund të aplikohen në gjuhë të ndryshme programimi dhe mjedise zhvillimi.