Čo je SOLID princípy?
SOLID je akronym pre päť princípov objektovo orientovaného programovania a dizajnu, ktoré zlepšujú udržiavateľnosť a rozšíriteľnosť softvéru. Akronym vytvoril Michael Feathers okolo roku 2004 na základe princípov Roberta C. Martina.
Definícia SOLID princípy
Čo sú SOLID princípy
SOLID je akronym pre päť základných princípov objektovo orientovaného dizajnu. Princípy sformuloval Robert C. Martin (Uncle Bob) a akronym SOLID zaviedol Michael Feathers okolo roku 2004. Cieľom je vytvoriť softvér, ktorý je flexibilný, zrozumiteľný a udržiavateľný.
Päť princípov SOLID
- S — Single Responsibility Principle — trieda by mala mať len jednu zodpovednosť a len jeden dôvod na zmenu
- O — Open/Closed Principle — softvérové entity by mali byť otvorené na rozšírenie, ale uzavreté na modifikáciu
- L — Liskov Substitution Principle — objekty odvodených tried musia byť nahraditeľné objektmi základnej triedy bez narušenia správnosti
- I — Interface Segregation Principle — klienti by nemali byť nútení závisieť na rozhraniach, ktoré nepoužívajú
- D — Dependency Inversion Principle — moduly vyššej úrovne by nemali závisieť na moduloch nižšej úrovne, oba by mali závisieť na abstrakciách
SOLID princípy sú základom moderného softvérového inžinierstva a sú úzko prepojené s konceptmi Clean Code, návrhovými vzormi a refaktoringom. Dodržiavanie SOLID princípov vedie k kódu, ktorý sa ľahšie testuje, rozširuje a refaktoruje.
Praktický príklad
Príklad — Single Responsibility Principle:
Porušenie: Trieda UserService validuje používateľa, ukladá ho do databázy, odosiela uvítací e-mail a generuje PDF faktúru — má štyri zodpovednosti.
Dodržanie: Rozdelíte ju na štyri triedy:
UserValidator— validácia údajovUserRepository— práca s databázouEmailService— odosielanie e-mailovInvoiceGenerator— generovanie faktúr
Každá trieda má jednu zodpovednosť a jeden dôvod na zmenu.
Často kladené otázky
Čo znamená SOLID v programovaní?
SOLID je akronym pre päť princípov objektovo orientovaného dizajnu: Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation a Dependency Inversion. Pomáhajú písať udržiavateľný a rozšíriteľný kód.
Kto vytvoril SOLID princípy?
Princípy sformuloval Robert C. Martin (Uncle Bob). Akronym SOLID z nich vytvoril Michael Feathers okolo roku 2004.
Sú SOLID princípy relevantné aj pre funkcionálne programovanie?
Niektoré princípy (najmä Single Responsibility a Open/Closed) sú aplikovateľné aj vo funkcionálnom programovaní, hoci pôvodne boli navrhnuté pre objektovo orientovaný prístup.
Musím vždy dodržiavať všetkých päť princípov?
Nie sú to striktné pravidlá, ale odporúčania. Pre malé projekty alebo prototypy je zbytočné dodržiavať všetko do bodky. Pri väčších projektoch s dlhodobou údržbou sa však investícia oplatí.
Súvisiace pojmy
Potrebujete pomôcť s webom?
Napíšte mi a poradím vám s vaším projektom. Prvá konzultácia je zadarmo a nezáväzná.