wzorce projektowe

php wzorce projektowe

Wzorce projektowe

Wzorzec projektowy (ang. design pattern) to uniwersalny i sprawdzony schemat rozwiązania jakiegoś powtarzającego się problemu programistycznego (w odniesieniu do programowania obiektowego). Wzorzec wymusza pewien standard pisania kodu, tak aby był on prosty w modyfikacji, zrozumiały a jednocześnie skalowalny. W skrócie to najlepsze techniki programistyczne. BANDA CZTERECH (GoF) Autorami pierwszej znanej publikacji poświęconej wzorcom w inżynierii …

Wzorce projektowe Read More »

php wzorzec property

Wzorzec projektowy – Property

Wzorzec projektowy Property służy do przechowywania i udostępniania danych konfiguracyjnych programu. Zastępuje zmienne globalne i ma podobne zastosowanie jak wzorzec Singleton. W przypadku wzorca Property dane przechowywane są w statycznej tablicy. Do ich ustawiania i pobierania służą statyczne metody set() i get(). PRZYKŁAD IMPLEMENTACJI

Użycie wzorca w obrębie aplikacji:

 

php oop singleton singel

Wzorzec projektowy – Singiel (Singleton)

Wzorzec projektowy Singiel (ang. Singleton) pozwala na utworzenie tylko jednej instancji obiektu danej klasy. Podobnie jak zmienne globalne, instancja Singla jest widoczna w całym programie i każdy komponent ma do niej dostęp. Używa się go głównie do przechowywania konfiguracji programu oraz utrzymania połączenia z bazą danych. IMPLEMENTACJA

Statyczna metoda getInstance sprawdza czy instancja obiektu …

Wzorzec projektowy – Singiel (Singleton) Read More »

php wzorce projektowe

Wzorzec projektowy – Fasada (Facade)

Wzorzec projektowy Fasada upraszcza skomplikowane i złożone systemy. Można zastosować go do stworzenia API (interfejsu programistycznego aplikacji), który udostępni klientowi uproszczoną specyfikację systemu z jego popularnymi funkcjonalnościami, konkretnymi zadaniami, itd. Wiele portali i serwisów internetowych udostępnia swoje API, np: YouTube Data API, Google Maps API. DIAGRAM WZORCA FASADA Element1, Element2 … Element5 – to klasy …

Wzorzec projektowy – Fasada (Facade) Read More »

php wzorzec obserwator

Wzorzec projektowy – Obserwator (Observer)

Wzorzec Obserwator (ang. Observer) używany jest do powiadamiania wybranych obiektów o zmianie stanu innych obiektów. Dzięki zastosowaniu tego wzorca można odizolować od siebie obiekty tak, że nie są one ze sobą sztywno powiązane. Zgodnie z poniższym diagramem we wzorcu występują dwa podstawowe typy obiektów (interfejsy): obserwowany – obiekt, który jest śledzony; kiedy zmieni się jego …

Wzorzec projektowy – Obserwator (Observer) Read More »

php wzorzec strategia

Wzorzec projektowy – Strategia (Strategy)

Wzorzec Strategia definiuje grupę algorytmów, które mogą być stosowane wymiennie w trakcie działania programu. Interfejs wzorca określa zadania (operacje), które implementują konkretne strategie (KonkretnaStrategiaA, KonkretnaStrategiaB, …). Klasa Kontekst ustawia referencję do interfejsu Strategia oraz implementuje metodę kontekstu, która umożliwia dynamiczną zmianę używanej strategii. PRZYKŁAD W przykładzie wykorzystam strategie do zmiany formatowania wyświetlanego tekstu (duże litery, …

Wzorzec projektowy – Strategia (Strategy) Read More »

wzorzec proxy php

Wzorzec projektowy – Pełnomocnik (Proxy)

Wzorzec Proxy kontroluje dostęp do klas i obiektów jako pośrednik. Zanim żądanie trafi do prawdziwego podmiotu RealSubject, pośrednik Proxy przetwarza je i jeśli spełnione są odpowiednie kryteria to udostępnia obiekt. Klient nie wie, że jego żądanie przechodzi przez Proxy. Przykładem może być dostęp poprzez logowanie do określonych zasobów serwisu. SCHEMAT WZORCA PROXY Źródło: en.wikipedia.org/wiki/Proxy_pattern PRZYKŁAD …

Wzorzec projektowy – Pełnomocnik (Proxy) Read More »

php wzorzec projektowy stan

Wzorzec projektowy – Stan (State)

Wzorzec Stan umożliwia zmianę zachowania obiektu, kiedy zmianie ulegnie jego wewnętrzny stan. Wzorzec ten jest bardzo użyteczny i występuje praktycznie wszędzie. Przykładem z życia może być np: przełącznik światła, który posiada dwa stany: włączony (ON) i wyłączony (OFF). Dla przykładu zbudujemy taki minimalistyczny przełącznik 🙂 Pierwsza klasa stanu – State, jest abstrakcyjna i posiada również …

Wzorzec projektowy – Stan (State) Read More »

metoda szablonowa

Wzorzec projektowy – Metoda Szablonowa (Template Method)

Wzorzec Metoda Szablonowa definiuje konkretną metodę templateMethod(), która implementuje metody abstrakcyjne w określonej kolejności. Sekwencja operacji (method1(), method2() …) stanowi szkielet danego algorytmu. Konkretna klasa (ConcreteClass) dziedziczy po klasie abstrakcyjnej (AbstractClass) metody abstrakcyjne i nadaje im konkretne funkcjonalności. Źródło: pl.wikipedia.org/wiki/Metoda_szablonowa_(wzorzec_projektowy) PRZYKŁAD Dobrym przykładem będzie użycie wzorca do wyświetlenia szablonu strony internetowej. Struktura dokumentu HTML jest …

Wzorzec projektowy – Metoda Szablonowa (Template Method) Read More »

dekorator

Wzorzec projektowy – Dekorator (Decorator)

Wzorzec Dekorator zalicza się do strukturalnych wzorców projektowych i pozwala rozbudować istniejącą strukturę o nowe funkcjonalności, które nie wpłyną na inne obiekty (komponenty). Można w pewnym sensie porównać go do dziedziczenia, z tym, że zapewnia większą elastyczność. Poza tym dodaje funkcjonalności do klas w sposób dynamiczny, podczas działania programu. Przykładem wzorca może być dekoracja wnętrza …

Wzorzec projektowy – Dekorator (Decorator) Read More »