Kreacyjne: Prototyp

Prototyp jest jednym z kreacyjnych wzorców projektowych. W porównaniu do wzorca jakim jest Fabryka, wykazuje pewne podobieństwa. Generalną różnicą jest jednak fakt potrzeby otrzymania dokładnych kopii obiektów wraz z wartościami pól danych, stanów itp… Z zasady tworząc wzorzec Prototyp, tworzy się go jako interfejs z wymogiem zaimplementowania metody clone(); służącej do klonowania obiektu wraz z jego danymi do następnych instancji. Dowiedz się więcej…

Kreacyjne: Builder

Builder jest jednym z kreacyjnych wzorców projektowych. Jednakże w porównaniu do poprzedniego wzorca jakim jest Fabryka, logika jego działania jest nieco inna. Poprzez poszczególne wywołania wyspecyfikowanych metod tworzymy nową instancję zawierającą coraz bardziej rozbudowaną wersję klasy złożoną jakby z pasujących do siebie klocków lego. Można użyć porównania ze StackOverflow, gdzie przyrównano wzorzec Budowniczego do pizzerii, gdzie zamawiając Dowiedz się więcej…

Kreacyjne: Factory

Fabryka jest jednym z bardziej fundamentalnych wzorców projektowych. Dlatego też jest drugim w zestawieniu omawianym wzorcem. W najprostszym podejściu Fabryka służy do wytwarzania obiektów, stąd też nazwa wzorca. Zasadą ideologiczną zaś jest odseparowanie części odpowiedzialnej za tworzenie obiektów od celów funkcjonalnych danej klasy. Rodzaje fabryk… W zależności od specyfiki problemu możemy spróbować dopasować wzorzec do niego i użyć takiej jego Dowiedz się więcej…

Kreacyjne: Singleton

Prawdopodobnie najpopularniejszy wzorzec projektowy… Prawdopodobnie, bo wiele rozwiązań umożliwiających dostęp do instancji w przestrzeni globalnej, tudzież konstrukcja programu zapewniająca istnienie tylko jednej instancji klasy są nazywanych błędnie Singleton’em. Dygresja na początek… niezbędny SOLID Singleton jest wzorcem łamiącym zasadę SRP… ale co to jest zasada SRP?! Tutaj zanim przejdę do omówienia wzorca, muszę nadmienić, że w historii zostały sformułowane i spopularyzowane zasady tworzenia “czystego” Dowiedz się więcej…

Krótka historia Wzorców Projektowych

Wzorzec to powtarzalny wzór, który może być odkryty i powtarzany dla uzyskania pozytywnych wpływów na nasz projekt. Tymi pozytywami mogą być np. rozszerzalność i czytelność kodu. Nie sposób jednak nadmienić, że częste stosowanie wzorców do wszystkiego powoduje jednakże przede wszystkim wyeksponowanie ich minusów, czyli np. zbędnego rozbudowania kodu. Wzorce projektowe oprogramowania zostały po raz pierwszy nazwane i formalnie opisane w 1994 roku przez autorów Dowiedz się więcej…

Strażnik promocji – webowa aplikacja wsparta Sztuczną Inteligencją

Celem pracy jest zaprojektowanie i realizacja systemu wspomagającego proces sprzedaży i zarządzania usługami cyklicznymi (takimi, które wymagają odnowienia/przedłużenia po wskazanym okresie czasu).

Opis:

W najprostszym spojrzeniu – ma to być aplikacja webowa (lub stanowiskowa) do której możemy dodać informację o klientach/dysponentach usługi (dane osobowe), usługach cyklicznych (dane usługi), płatnikach (dane płatnika) i powiązać to wszystko razem, aby w sposób prosty i szybki poprzez np. wyszukanie po numerze seryjnym certyfikatu[mfn]jedna z przykładowych usług cyklicznych[/mfn] przypisanego do klienta można było odnaleźć, kto za jego odnowienie ma zapłacić, niezależnie od tego kto jest jego dysponentem. System powinien składować dane w bazie, umożliwiać dodawanie nowych rekordów, edycję i archiwizację danych; eksport danych do pliku csv/xml oraz import takich danych z plików csv/xml/eml.

Informatyczny Asystent Wsparcia sprzedaży usług cyklicznych

Celem pracy jest zaprojektowanie i realizacja systemu wspomagającego proces sprzedaży i zarządzania usługami cyklicznymi (takimi, które wymagają odnowienia/przedłużenia po wskazanym okresie czasu).

Opis:

W najprostszym spojrzeniu – ma to być aplikacja webowa (lub stanowiskowa) do której możemy dodać informację o klientach/dysponentach usługi (dane osobowe), usługach cyklicznych (dane usługi), płatnikach (dane płatnika) i powiązać to wszystko razem, aby w sposób prosty i szybki poprzez np. wyszukanie po numerze seryjnym certyfikatu[mfn]jedna z przykładowych usług cyklicznych[/mfn] przypisanego do klienta można było odnaleźć, kto za jego odnowienie ma zapłacić, niezależnie od tego kto jest jego dysponentem. System powinien składować dane w bazie, umożliwiać dodawanie nowych rekordów, edycję i archiwizację danych; eksport danych do pliku csv/xml oraz import takich danych z plików csv/xml/eml.