Данас ћу писати о три принципа која су веома популарна у дев свету. Иако за неке можда први пут чујете вероватно сте их несвесно користили. Ови принципи нам омогућавају да рад на пројекту тече флуидно и ефикасно те да у дугорочном смислу испоручимо прозвод високог квалитета. Такође, они нам отварају и нова гледишта са којих софтверско решење можемо видети из потпуно другог угла.

SOLID

SOLID сам намерно ставио први јер је ово и једини принцип о коме је било нешто више речи и на факултету. Заправо, SOLID није један принцип, већ сама реч представља акроним за првих пет принципа објектно-оријентисаног дизајна према Ујаку Бобу (Uncle Bob).

Праћење следећих принципа омогућава писање одрживог и проширивог кода који иде под руку са агилним софтверским приступом:

S – Single-responsibility principle

Класа би требало да има један и само један разлог за измену, тј. требало би да има само један задатак. Праћење овог принципа нам омогућава да имамо прегледнији код класа подложан лаком одржавању.

O – Open-closed principle

Објекти или ентитети требају бити отворени за проширивање, али затворени за модификовање. Другим речима, не би требало да се доведемо у ситуацију да код измене једне класе изазовемо ланчану реакцију у виду грешака код других класа.

L – Liskov substitution principle

Овај принцип дефинише да су објекти родитељске класе замњиви поткласама, без нарушавања тока апликације. Поштујући Лисков принцип у фокус долази понашање класе, а не њена структура.

I – Interface segregation principle

Клијент не треба бити натеран да имплементира интерфејс који не користи нити да зависи од метода које не користи, тј. интерфејси би требало да групишу искључиво методе са заједничким циљем.

Dependency inversion principle

Ентитети морају зависити од апстракције, а не од имплементације. Писање више интерфејса ће нам омогућити модуларан систем који се лако тестира.

DRY – Don’t Repeat Yourself

DRY принцип има за циљ избацивање дуплираног кода. Он се заснива на тези да свако парче кода мора имати једно, недвосмислено значење у систему. Имплементирање овог принципа доводи до система где измена једног елемента не захтева мењање других логички неповезаних елемената. У суштини, ако код поновите више од једног пута време је за рефакторинг.

KISS – Keep It Simple, Stupid

Још један принцип који нам омогућава да пројекат на коме радимо буде једноставан, одржив и ефикасан. Као што му име каже залаже се за што једноставнији код без сувишних компликација. Односно, немојте писати сложени код који нико не уме да прочита и разуме.

Праћење ових принципа ће вам засигурно помоћи, поготово ако радите у тимовима или на већим, захтевним пројектима. Ако имате било каква питања, слободно ми се обратите у коментару или путем контакт странице.