SOLID tirrappreżenta sett ta' prinċipji fundamentali fid-disinn tas-softwer użat biex jinħolqu sistemi li jistgħu jinżammu, li jistgħu jiġu estiżi u flessibbli. SOLID huwa akronimu ffurmat mill-ittri inizjali ta’ dawn il-ħames prinċipji:
S- Single Responsibility Principle
Klassi jew modulu għandu jkollu responsabbiltà waħda biss. Dan jgħin fil-manutenzjoni u l-modifika aktar faċli tal-kodiċi mingħajr ma jaffettwa funzjonalitajiet oħra.
O- Open/Closed Principle
Il-kodiċi għandu jkun miftuħ għall-estensjoni(iżżid karatteristiċi ġodda) iżda magħluq għall-modifika(mhux ibiddel il-kodiċi eżistenti). Dan jinkoraġġixxi l-użu ta 'wirt, interfaces, jew mekkaniżmi ta' estensjoni oħra biex iżidu karatteristiċi ġodda mingħajr ma jimmodifika l-kodiċi eżistenti.
L- Liskov Substitution Principle
Oġġetti ta' sottoklassi għandhom ikunu sostitwibbli għal oġġetti tal-klassi ġenitur mingħajr ma jaffettwaw il-korrettezza tal-programm. Dan jiżgura li l-wirt jiġi implimentat b'mod sigur u korrett.
jien- Interface Segregation Principle
Huwa aħjar li jkollok interfaces żgħar u speċifiċi aktar milli interface kbir b'ħafna metodi. Dan jgħin biex jevita li l-klassijiet jiġu sfurzati jimplimentaw metodi mhux meħtieġa.
D- Dependency Inversion Principle
Moduli ta 'livell għoli m'għandhomx jiddependu fuq moduli ta' livell baxx. It-tnejn għandhom jiddependu fuq l-astrazzjonijiet. Dan il-prinċipju jinkoraġġixxi l-użu ta 'injezzjoni ta' dipendenza biex inaqqas l-akkoppjar strett bejn il-moduli u jagħmel is-sistema aktar faċli biex tiġi ttestjata u estiża.
SOLID prinċipji jtejbu l-istruttura tal-kodiċi, jippromwovu l-modularità, u jnaqqsu r-riskju assoċjat mal-bidliet. Dawn il-prinċipji jistgħu jiġu applikati f'diversi lingwi ta' programmar u ambjenti ta' żvilupp.