• Artykuły
  • Forum
  • Ciekawostki
  • Encyklopedia
  • Strategia - wzorzec projektowy



    Podstrony: 1 [2] [3] [4] [5]
    Przeczytaj także...
    Programista, zwany też potocznie koderem to osoba, która tworzy programy komputerowe w pewnym języku programowania. Termin ten może odnosić się także do specjalisty w jednej dziedzinie programowania. Większość programistów zna co najmniej kilka języków programowania (np. C, C++, Java), lecz specjalizuje się tylko w wybranych z nich. Nazwa głównego języka jest często dodawana do nazwy stanowiska, np. programista C++, aby podkreślić specjalizację.Typ – w językach programowania opis rodzaju, struktury i zakresu wartości, jakie może przyjmować dany literał, zmienna, stała, argument, wynik funkcji lub wartość.

    Strategiaczynnościowy wzorzec projektowy, który definiuje rodzinę wymiennych algorytmów i kapsułkuje je w postaci klas. Umożliwia wymienne stosowanie każdego z nich w trakcie działania aplikacji niezależnie od korzystających z nich użytkowników.

    Problem[ | edytuj kod]

    Rozważmy program generujący statystyki dotyczące podanego na wejściu kodu źródłowego takie, jak liczba wierszy, liczba klas itd. W mechanizmie generowania statystyk możemy wyróżnić część kodu specyficzną dla języka programowania, w którym napisany został kod oraz ogólną, niezależną od języka. Chcielibyśmy, aby nasz program był uniwersalny i obsługiwał wiele języków programowania, a także by w przyszłości istniała możliwość dodawania nowych.

    Instrukcja warunkowa jest elementem języka programowania, które pozwala na wykonanie różnych obliczeń w zależności od tego czy zdefiniowane przez programistę wyrażenie logiczne jest prawdziwe, czy fałszywe. Możliwość warunkowego decydowania o tym, jaki krok zostanie wykonany w dalszej kolejności jest jedną z podstawowych własności współczesnych komputerów – dowolny model obliczeń zdolny do wykonywania algorytmów (tj. równoważny maszynom Turinga) musi ją posiadać.Programowanie kontraktowe (ang. Design by contract, DbC) – w programowaniu, metoda organizowania kodu źródłowego programu w taki sposób, aby wynikało z niego nie tylko jak program ma działać, ale też w jaki sposób zweryfikować poprawność działania konkretnych elementów programu (funkcje, struktury, klasy, moduły, itp.). Programowanie kontraktowe jest związane z programowaniem obiektowym.

    Rozwiązaniem jest zastosowanie wzorca Strategia, gdzie algorytmy specyficzne dla języków programowania wydzielimy jako osobne klasy ze wspólnym interfejsem, który umożliwi programowi wyciąganie określonych informacji o kodzie źródłowym.

    Podstrony: 1 [2] [3] [4] [5]




    Warto wiedzieć że... beta

    W informatyce przepływ sterowania oznacza kolejność, w jakiej pojedyncze wyrażenia lub instrukcje są wykonywane w paradygmacie programowania imperatywnego. W języku programowania instrukcja przepływu sterowania może zmienić przepływ sterowania tak, aby wyrażenia wykonywane były w innej kolejności, niż ta, w jakiej są wypisane w kodzie źródłowym. Pojęcie przepływu danych jest prawie zawsze ograniczane do pojedynczego wątku aplikacji, ponieważ dotyczy ono wykonywania instrukcji po jednej naraz.
    HotSpot – maszyna wirtualna Javy, dostarczana przez firmę Oracle Corporation razem z pakietem Java Runtime Environment. Wykorzystuje między innymi takie technologie jak kompilacja w locie oraz optymalizacja adaptacyjna. Dla Javy Standard Edition oraz Enterprise Edition dostępna dla systemów Microsoft Windows, Linux oraz Solaris. Istnieją wersje przeznaczone dla Mobile Edition: CDC HotSpot Implementation (wcześniej CVM), CLDC HotSpot Implementation (wcześniej Monty).
    Erich Gamma (ur. 1961 w Zurychu) – szwajcarski informatyk, współautor książki Wzorce projektowe: elementy oprogramowania obiektowego wielokrotnego użytku.
    Definicja intuicyjna: Kod źródłowy to zapis programu komputerowego w formie czytelnej dla człowieka umożliwiający jego modyfikację i rozwój.
    W programowaniu obiektowym interfejs jest definicją abstrakcyjnego typu posiadającego jedynie operacje, a nie dane. Kiedy w konkretnej klasie zdefiniowane są wszystkie metody interfejsu mówimy, że klasa implementuje dany interfejs. W programie mogą być tworzone zmienne typu referencja do interfejsu, nie można natomiast tworzyć obiektów tego typu. Referencja może wskazywać na obiekt dowolnej klasy implementującej dany interfejs. Interfejs określa udostępniane operacje, nie zawiera natomiast ich implementacji i danych. Z tego powodu klasy mogą implementować wiele interfejsów, bez problemów wynikających z wielokrotnego dziedziczenia. Wszystkie metody w interfejsie z reguły muszą być publiczne.
    Pyłek (ang. Flyweight) znany także jako Waga Piórkowa jest jednym ze strukturalnych wzorców projektowych. Jego celem jest zmniejszenie wykorzystania pamięci poprzez efektywną obsługę wielu małych obiektów za pomocą współdzielenia. Należy do grupy wzorców skatalogowanych przez Gang Czterech.
    Agregacja (inaczej zawieranie się, gromadzenie) w programowaniu obiektowym to sytuacja, w której tworzy się nową klasę, używając klas już istniejących (często nazywa się to "tworzeniem obiektu składowego"). Nowa klasa może być zbudowana z dowolnej liczby obiektów (obiekty te mogą być dowolnych typów) i w dowolnej kombinacji, by uzyskać żądany efekt. Agregacja jest często określana jako relacja typu "zawiera" np. "samochód zawiera silnik" - gdzie "samochód" i "silnik" są klasami, oraz klasa "samochód" zawiera w sobie obiekt (czasami referencję czy wskaźnik) typu "silnik".

    Reklama

    Czas generowania strony: 0.036 sek.