SOLID წარმოადგენს პროგრამული უზრუნველყოფის დიზაინის ფუნდამენტურ პრინციპებს, რომლებიც გამოიყენება შენარჩუნებული, გაფართოებადი და მოქნილი სისტემების შესაქმნელად. SOLID არის აკრონიმი, რომელიც ჩამოყალიბებულია ამ ხუთი პრინციპის საწყისი ასოებით:
S- Single Responsibility Principle
კლასს ან მოდულს უნდა ჰქონდეს მხოლოდ ერთი პასუხისმგებლობა. ეს ხელს უწყობს კოდის უფრო ადვილად შენარჩუნებას და შეცვლას სხვა ფუნქციებზე გავლენის გარეშე.
ო- Open/Closed Principle
კოდი ღია უნდა იყოს გაფართოებისთვის(ახალი ფუნქციების დასამატებლად), მაგრამ დახურული უნდა იყოს მოდიფიკაციისთვის(არ შეცვალოს არსებული კოდი). ეს ხელს უწყობს მემკვიდრეობის, ინტერფეისების ან სხვა გაფართოების მექანიზმების გამოყენებას ახალი ფუნქციების დასამატებლად არსებული კოდის შეცვლის გარეშე.
L- Liskov Substitution Principle
ქვეკლასის ობიექტები უნდა იყოს ჩანაცვლებადი ძირითადი კლასის ობიექტებით პროგრამის სისწორეზე ზემოქმედების გარეშე. ეს უზრუნველყოფს მემკვიდრეობის უსაფრთხოდ და სწორად განხორციელებას.
ᲛᲔ- Interface Segregation Principle
უმჯობესია გქონდეთ მცირე და სპეციფიკური ინტერფეისი, ვიდრე დიდი ინტერფეისი მრავალი მეთოდით. ეს ხელს უწყობს კლასების იძულებას არასაჭირო მეთოდების დანერგვის თავიდან აცილებას.
D- Dependency Inversion Principle
მაღალი დონის მოდულები არ უნდა იყოს დამოკიდებული დაბალი დონის მოდულებზე. ორივე აბსტრაქციებზე უნდა იყოს დამოკიდებული. ეს პრინციპი ხელს უწყობს დამოკიდებულების ინექციის გამოყენებას მოდულებს შორის მჭიდრო შეერთების შესამცირებლად და სისტემის გამოცდასა და გაფართოების გასაადვილებლად.
SOLID პრინციპები აძლიერებს კოდის სტრუქტურას, ხელს უწყობს მოდულარობას და ამცირებს ცვლილებებთან დაკავშირებულ რისკს. ამ პრინციპების გამოყენება შესაძლებელია პროგრამირების სხვადასხვა ენასა და განვითარების გარემოში.