Devloger

Programowanie do interfejsu bez interfejsu

Kategorie: OOP PHP · 0 komentarzy

Jak programować do interfejsu bez interfejsu?

Programowanie do interfejsu bez interfejsu

Kodowanie do interfejsu; bardzo wiele osób uważa tę praktykę za standard. Błędnie według mnie. Natomiast dobrze się to sprawdza z punktu widzenia po prostu dobrej praktyki - zależnie od sytuacji.

A kodowanie do interfejsu bez interfejsu? Że co? Że jak Emotikon uśmiechniętej buźki?

Kodowanie do interfejsu?

Otóż kiedy coś może mieć wiele odmian, wiele implementacji - warto to zrobić. Ponieważ wówczas będziemy mogli wykorzystać choćby polimorfizm - czyli możliwość stosowania tej samej metody z różnym rezultatem w zależności od danych okoliczności.

Ale jak to robić?

Myślę, że gdy wiemy lub wyczuwamy, że coś, cokolwiek, może mieć wiele odmian, różnych implementacji - warto podejść do programowania tego pod interfejs.

Jak?

Od razu tworzymy lub wyodrębniamy interfejs? Niekoniecznie. Można tak zrobić, jednak nie uważam by to było idealne rozwiązanie.

Ostatnio pracując nad pewnym projektem przemyślałem kilka rzeczy i nasunęły mi się ciekawe wnioski.

Otóż pracując nad czymś, co może nadawać się do kodowania pod interfejs, warto to robić ale perspektywicznie, nie bezpośrednio. Co mam przez to na myśli? Otóż nie tworzyć od razu interfejsu, nie wyodrębniać go (jeszcze). Tylko programując z myślą o nim. Z myślą o interfejsie.

Dlaczego tak?

Ponieważ to rozwiązanie jest wydajniejsze niż tworzenie z góry interfejsu, który potem będziemy wykorzystywać. I może nas to zaprowadzić w pewne nieciekawe miejsca - chwile zwątpienia i zagubienia.

To jak robimy?

Po prostu programujmy, piszmy kod. Ale z pełną świadomością, że tutaj będzie interfejs. Że programujemy do interfejsu - tylko jeszcze go nie ma. Ale miejmy to na uwadze, miejmy to w głowie. Myślmy o tym. Programujmy z myślą o nim - pod niego. Musimy wówczas myśleć uniwersalnie podczas pisania naszego kodu. I spokojnie, jest okej - później go wyodrębnimy!

Jest to takie bardziej kodowanie pod interfejs niż kodowanie do interfejsu.

Idealne?

Myślę że nie do końca. To się jeszcze okaże. Ale już teraz w to wątpię. Szczególnie że nie w każdej sytuacji będziemy mogli to zastosować. I w niektórych może być to nawet niekorzystne. Myślę że to świetne wyjście gdy nad danym interfejsem pracuje się samemu lub chociaż do końca jednej implementacji w czasie.

Natomiast rozwiązanie to może być niekorzystne w przypadku pracy zespołowej. Pracy nad kilkoma implementacjami danego interfejsu w tym samym czasie.

To jak?

Uważam że jest to świetna technika pracy. Takie właśnie programowanie do interfejsu, gdzie jesteśmy go świadomi choć jeszcze go nie posiadamy . Ale wiemy że później się pojawi na drodze wyodrębniania go. Fajnie się to sprawdza w workflow. Nie zakłóca go zbytnio.

Jednak wymaga od nas ciągle świadomości i uwagi, że tutaj pojawi się interfejs, że kodujemy właśnie pod niego.

Dziękuję ci za lekturę Emotikon uśmiechniętej buźki. Zapraszam do przeczytania innych moich artykułów oraz komentowania Emotikon uśmiechniętej buźki. Dobrego dnia, bywaj!

Krystian Bogucki

Podobał Ci się ten artykuł?

Jeśli tak, to zarejestruj się aby otrzymywać powiadomienia o nowych artykułach. Nie ujawnię nikomu Twojego adresu!