" - Mi a SOLID?"
A Jelentkező mélyen hallgat. Zavart - ezt tudnia kellene. Lázasan kutat az agyában bármilyen információ morzsáért, amivel elindulhatna, de a kutatás sajnos esélytelen.
- Részletek egy Sikertelen Interjúból
Jelen tanulási fázisban az alfa és az omega a SOLID, az első, és legftontosabb tudás, amit meg kell szerezni. A SOLID, ahogy a csupa nagybetűs írásmód is utal rá, egy betű szó. Mégpedig öt további betűszó rövidítése: az SRP, az OCP, az LSP, az ISP, és a DIP. Szép, mi? Informatikusok vagyunk, az életünk a rövidítés.
De mielőtt belevágnánk a sok ??P boncolgatásnak, még egy rövidítés és egy link. Linkek először: butunclebob.com. Innen sokszor fogok idézni, precíz angol tudás szükséges. A rövidítés a címben is szereplő OOD kifejtése: Object-Oriented-Design.
Vagyis objektum orientált tervezés. Az OOD a következő szint a pite (PIE - Polimorfizmus, öröklődés, egységbezárás) után. Persze az OOD előtt mindenképpen ki kell mondanunk ezeket az elveket, már csak azért is mert tanulunk, azonban a mai lecke az első mérföldkő felvázolásáról szól, az pedig a SOLID megismerése.
A SOLID öt objektum orientált szoftverfejlesztési alapelv összefoglalása. Az öt alapelv - egyelőre felsorolásként, és angolol - a következő:
- The Single Responsibility Principline
- The Open Closed Principline
- The Liskov Substitution Principline
- The Interface Segregation Principline
- The Dependency Inversion Principline
Tapasztalatból mondom, hogy a Jelentkező életét - noha kimondatlanul is vezette a kezét - már az SRP és az OCP puszta kimondása is jelentősen megkönnyítette, és megnyitotta az utat olyan területekre, amik addig távoli űrtechnológiáknak tűntek.
A SOLID elvek feletti elmélkedés alatt arra kellett ráébrednem, hogy egy dolog elfogadni, hogy még sokat kell tanulni, de megdöbbentő érzés tudni, hogy mennyit.
A következő cikkben belekezdünk a tényleges tanulásba, és először - a félreértések tisztázása végett - az OOP-ről és a pitéről fogunk beszélgetni.