Metoda szablonowa to design pattern należący do grupy wzorców operacyjnych. Zgodnie z nazwą jego przeznaczeniem jest zdefiniowanie metody, która ściśle określa kolejne etapy pewnego algorytmu postępowania. Łańcuch ten stanowi szablon, który nie może ulegać modyfikacjom. Jednakże jego poszczególne kroki mogą być implementowane przez klasy podrzędne. Korzystanie z tego wzorca pozwala zatem uchronić nas przez redundancją...
Więcejunit tests
Tworząc różnego rodzaju komponenty, najczęściej w formie klas dążymy do tego, aby implementowane rozwiązania zachowywały się poprawnie w każdej, możliwej do zaistnienia sytuacji. Doskonałym narzędziem na drodze ku stworzeniu bardziej niezawodnego kodu, są testy jednostkowe (unit tests). testy jednostkowe Unit tests umożliwiają przeprowadzenie weryfikacji poprawnego funkcjonowania konkretnych klas, ich metod lub funkcji...
Więcejlate static bindings
Wraz z wydaniem PHP 5.3 możemy w swoich aplikacjach korzystać z nowej funkcjonalności udostępnionej od tej wersji. Mowa o late static bindings, których zasadę działania najłatwiej będzie przedstawić, w oparciu o praktyczne przykłady ich użycia. Jednak zanim do tego dojdziemy – krótkie wprowadzenie. parent i self Są to dwa słowa kluczowe dzięki którym w sposób prosty, łatwy i przyjemny jesteśmy w stanie odwoływać...
Więcejnowdoc
Ciągi znaków są nieodłącznym elementem tworzonych przy użyciu PHP skryptów. Język ten udostępnia kilka metod deklaracji tego typu danych. W wersji 5.3 dodano nową – nowdoc. W tym krótkim wpisie pokażę jak z niej korzystać. Stringi Zatem istnieją cztery sposoby tworzenia ciągów znaków: pojedynczy cudzysłów (łańcuchy nieprzetwarzane) cudzysłów (łańcuchy przetwarzane) heredoc nowdoc Heredoc i...
Więcejintercepting filter
Intercepting filter to wzorzec projektowy, który znajduje zastosowanie w aplikacjach wymagających wielokrotnego wykonywania tych samych czynności. Za przykład może posłużyć sytuacja, w której skrypt na samym początku musi uzyskać połączenie z bazą danych, a na końcu je zamknąć. Innymi często powtarzającymi się działaniami są operacje związane z autoryzacją, transakcjami, logowaniem zdarzeń, itd. Sposób...
Więcejnamespaces
Przestrzenie nazw, czyli jedna z najbardziej oczekiwanych funkcjonalności, została udostępniona dla programistów wraz z wydaniem PHP 5.3. Namespaces pozwalają na grupowanie klas, funkcji i stałych poprzez nadawanie im unikalnych nazw, które są następnie wykorzystywane w procesie odwoływania się do tak uporządkowanych struktur kodu. Nabiera to ogromnego znaczenia na przykład w pracy grupowej. Może się bowiem zdarzyć sytuacja,...
Więcejintrospekcja
Introspekcja to pojęcie oznaczające zdolność aplikacji do zarządzania własnym kodem. Pozwala zatem pobierać informacje na temat klas,interfejsów i funkcji w trakcie działania programu. Termin ten jest utożsamiany z mechanizmem refleksji. W zależności od języka programowania, oba pojęcia mogą się subtelnie różnić. Z reguły mechanizm odbić (reflection) rozszerza introspekcję, oferując znacznie większe spektrum...
Więcej

Cecha to funkcjonalność, która została stworzona, z myślą o tych wszystkich programistach, którym bardzo brakuje możliwości oferowanych przez mechanizm wielokrotnego dziedziczenia. Może się bowiem zdarzyć sytuacja, w której implementowana klasa powinna dziedziczyć, nie po jednej, a po większej ilości klas. Dotychczas...
Tym razem zwięźle i lapidarnie na temat virtual proxy. Na początku warto wspomnieć, iż należy on do grupy wzorców strukturalnych i jest przedstawicielem licznej rodziny proxy. W języku polskim określenie to najczęściej tłumaczy się jako pośrednik lub pełnomocnik. Familia proxy skupia się na tworzeniu obiektu, którego zadaniem...
Facebook jest największym serwisem społecznościowym na świecie. Posiada on ogromną ilość aplikacji i gier, które swój żywot zawdzięczają facebook API. We wpisie tym, dokładnie krok po kroku pokażę, jak napisać prostą aplikację z jego użyciem.
1. Rejestracja
Choć wydaje się to banalne, to jest to warunek konieczny. Zatem...
Wpisem tym powracam do tematyki design patterns. Tym razem postaram się wyjaśnić czym jest bridge i w jakich okolicznościach jego użycie może się okazać niezbędne. Jeśli miałbym scharakteryzować most w jednym zdaniu, zapewne przybrałoby ono następującą formę:
Jest to wzorzec strukturalny, a jego głównym zadaniem jest...