Wzorzec projektowy Interpreter - devszczepaniak.pl

Wzorzec projektowy Interpreter - devszczepaniak.pl

devszczepaniak.pl
Interpreter jest wzorcem projektowym, którego jeszcze nie miałem okazji wykorzystać w praktyce. Patrząc na jego specyfikę, raczej nieprędko się to zmieni. W najnowszym artykule na moim blogu dowiesz się, kiedy potencjalnie można by wykorzystać Interpreter. Dowiesz się też, dlaczego Interpreter jest tak trudnym w zastosowaniu wzorcem i o czym nie wspomniał Gang of Four w jego charakterystyce.

#programowanie
#informatyka
#programista15k
#frontend
#naukaprogramowania
#backend

Komentarze (5)

lurker_z_internetu

Pracuję 10 lat w zawodzie, mam za sobą różne projekty wdrażane na dużą skalę, wiele aplikacji i krytycznych komponentów napisałem i nie potrafiłbym nazwać ani jednego wzorca projektowego. To jest coś czym sumiennie kierujesz się projektując oprogramowanie, czy raczej taki toolbox do podchodzenia do problemów ułatwiający niekiedy życie?

NiebieskiSzpadelNihilizmu

@lurker_z_internetu to jest jak z clean codem- albo traktujesz to ogólnie jak wskazówkę, albo jesteś wyznawcą religii i wszędzie to pchasz nieważne czy tego trzeba czy nie 😉

elszczepano

@lurker_z_internetu


> toolbox do podchodzenia do problemów ułatwiający niekiedy życie


It depends. Niektóre wzorce stosuję często i robię to świadomie (np. fabryki, adapter, dekorator, strategię) bo dość często trafiam na problemy które rozwiązują. Część wzorców jednak traktuję bardziej jako ciekawostkę i podpowiedź, że jak trafię na jakiś problem to ktoś kiedyś go opisał i można to jakoś wykorzystać. No i w przypadku tych wzorców to pewnie gdyby przyszło do ich praktycznego zastosowania to musiałbym sobie przypomnieć jak działają itp.


> coś czym sumiennie kierujesz się projektując oprogramowanie


Całkowicie nie. To narzędzia mają służyć mi a nie ja dopasowywać się pod narzędzia. Jak zrobię coś niezgodnie ze wzorcem a ułatwi mi to życie to to robię

profil_e

Moim zdaniem większość wzorców to rzeczy podstawowe, w ten sposób się po prostu rozwiązuje problemy niezależnie od tego czy się je nazwie, czy nie. Lubię czasami wrócić do tematyki, spojrzeć na swój projekt z góry i ustalić czemu zrobiłem coś tak a nie inaczej w kontekście wzorców i jak to działa po czasie. Powtarzanie wzorców pomaga mi też otworzyć się na inne rozwiązania - czasami zafixujesz się na jakimś sposobie i wystarczy przypomnienie o istnieniu innych wzorców, by skojarzyć problem z fajniejszym rozwiązaniem.

Temat podstawowy przy nauce programowanie, wart zgłębienia szczególnie jak się idzie dalej i dokłada wiedzę z zakresu architektury. Może być też bardzo pomocny przy ustalaniu struktury kodu w zespole. Uważam, że wszyscy powinni mieć świadomość istnienia wzorców, bez religijnego podejścia.


PS. Używam singletonów i się tego nie wstydzę xd

profil_e

Faktycznie może być ciężko z zastosowaniem interpretera... Spróbowałem w głowie podciągnąć pod to dwa komponenty, ale chyba jest zbyt niskopoziomowy. Dla przykładu, mamy swój język walidacji pewnych dokumentów, jednak wyraża się on przez odpowiedni konstrukt klas na poziomie języka programowania, a nie wolnym tekstem, który mógłby być interpretowany. Czytelniej by było to zmienić, ale nie wyobrażam sobie kosztu napisania dobrego interpretera.

Zaloguj się aby komentować