Poltergeist (programowanie komputerowe)
W programowaniu komputerowym poltergeist (lub wóz cygański ) to krótkotrwały, zazwyczaj bezstanowy obiekt używany do przeprowadzania inicjalizacji lub wywoływania metod w innej, bardziej trwałej klasie. Jest uważany za antywzorzec . Oryginalna definicja pochodzi od Michaela Akroyda 1996 - Konferencja Object World West:
- „Tak jak wóz cygański lub poltergeist pojawia się i znika w tajemniczy sposób, tak samo dzieje się z tym krótkotrwałym obiektem. W konsekwencji kod jest trudniejszy do utrzymania i dochodzi do niepotrzebnego marnowania zasobów. Typową przyczyną tego antywzorca jest zły projekt obiektu. "
Poltergeista często można rozpoznać po jego imieniu; są często nazywane „manager_”, „controller_”, „supervisor”, „start_process” itp.
Czasami klasy poltergeist są tworzone, ponieważ programista przewidział potrzebę bardziej złożonej architektury. Na przykład poltergeist powstaje, jeśli ta sama metoda działa zarówno jako klient , jak i wywołujący we wzorcu polecenia , a programista przewiduje rozdzielenie tych dwóch faz. Jednak ta bardziej złożona architektura może w rzeczywistości nigdy się nie zmaterializować.
Poltergeistów nie należy mylić z długowiecznymi, niosącymi stan obiektami o wzorcu , takim jak model-widok-kontroler lub wzorce oddzielające warstwy, takie jak delegat biznesowy.
Aby usunąć poltergeista, usuń klasę i wstaw jej funkcjonalność do wywołanej klasy, prawdopodobnie przez dziedziczenie lub jako mixin .
Zobacz też
- Brown, William J. (1998). „Rozdział 5: Antywzorce programistyczne” . AntiPatterns: oprogramowanie do refaktoryzacji, architektury i projekty w kryzysie . Nowy Jork, USA: John Wiley & Sons. ISBN 0-471-19713-0 .
Linki zewnętrzne