Filozofia Perla polega na tym, że „rób to, co jest teraz praktyczne”. Jeśli potrzebujesz użyć OOP, jest tam. Nie jest to konieczne we wszystkich rozwiązaniach i zmuszanie osoby do pisania kodu OOP, gdy jest to proste „zrób to, to wtedy” ten typ problemu często przynosi efekt przeciwny do zamierzonego.
Wieloparadygmatyczną naturę perla można dostrzec w takich rzeczach, jak transformacja Schwartziana, która ma bardzo funkcjonalne aspekty (w Lisp jest znana jako „decorate-sort-undecorate”). OOP istnieje, podobnie jak proceduralne (programowanie w stylu C) i imperatywne (bash jak „zrób to, to teraz”).
Wzory projektowe to powtarzające się rozwiązania typowych problemów. Istnieją w każdym języku. Czasami te wzorce nazywane są idiomami, chociaż może to również odnosić się do rzeczy, które są znacznie prostsze niż wzór.
W razie potrzeby wiele klasycznych wzorców projektowych GOF można zaimplementować w perlu. Wzory projektowe Perla będą miały wiele popularnych nazw, które ludzie znają GOF. Nie jest konieczne, aby wszystkie z nich były idlomatyczne.
Podczas eksploracji wzorców projektowych w Perlu, zwróć również uwagę na „Wzory projektowe” nie są autorstwa Marka Dominusa .
Wiele osób uważa, że Wzory Projektowe to braki w języku . W tej perspektywie wzorce projektowe, takie jak Iterator, są często niepotrzebne w perlu. Nie zawsze - ale często.
Najpierw napisz idlomatyczny perl. Nie próbuj pisać C w perlu, lisp w perlu lub java w perlu. Perl to perl. Jeśli istnieje problem, który staje się większy niż peri idiomatyczny może sobie poradzić i zaczynasz potrzebować bardziej złożonych struktur klas, to napisz je. Poznaj wzorce projektowe, aby móc rozpoznać „ten problem urósł do tego stopnia, że potrzebujesz abstrakcyjnej fabryki” - ale nie zaczynaj próbować tworzyć abstrakcyjnej fabryki w Perlu, jeśli jej nie potrzebujesz.
Niektóre biblioteki istnieją zarówno w OOP, jak i bardziej tradycyjnych formach. Zobacz Czy powinienem używać interfejsów CGI zorientowanych funkcyjnie czy obiektowo? po stare pytanie SO, w którym pyta się, w jaki sposób korzystać z biblioteki.