Prijeđi na sadržaj

Antiobrazac

Izvor: Wikipedija

Antiobrazac (eng. anti-pattern) je pojam iz programskog inženjerstva koji označava obrazac kojeg se obično primjenjuje, ali je vrlo neučinkovit i/ili je vrlo kontraproduktivan u praksi.[1][2]

Izraz "anti-pattern" je izmislio Andrew Koenig 1995. godine,[3] nadahnuto Gang of Fourovom knjigom Design Patterns, koja je razvila koncept dizajna obrazaca u području softvera. Izraz se je široko popularizirao tri godine poslije knjigom AntiPatterns koja je proširila uporabu pojma izvan područja softverskog dizajna i u opću društvenu interakciju. Prema autorima potonje, potrebna su dva ključna elementa da bi se formalno moglo razlikovati antiobrazac od jednostavne loše navike, lošeg običaja ili loše zamisli:

  • ponavljani obrazac akcije, procesa ili strukture koji u početku izgleda dobro i korisno, a na kraju zapravo čini više štete nego koristi
  • refaktorirano rješenje postoji, jasno je dokumentirano u praksi i može se ponoviti

Izvori

[uredi | uredi kôd]
  1. Budgen, D. 2003. Software design. Addison-Wesley. Harlow, Eng.. str. 225. ISBN 0-201-72219-4 "Kao što je navodi Long (2001.), dizajni antiobrazaca su "očita, ali pogrješna rješenja opetujućih problema".
  2. Scott W. Ambler. 1998. Process patterns: building large-scale systems using object technology. Cambridge University Press. Cambridge, UK. str. 4. ISBN 0-521-64568-9 "...uobičajeni pristupi za rješavati opetujuće probleme koji su se pokazali neučinkovitima. Ove pristupe se naziva antiobrascima."
  3. Koenig, Andrew. ožujak/travanj1995. Patterns and Antipatterns. Journal of Object-Oriented Programming. 8 (1): 46.–48. Provjerite vrijednost datuma u parametru: |date= (pomoć); kasnije je ponovno objavljen u : Rising, Linda. 1998. The patterns handbook: techniques, strategies, and applications. Cambridge University Press. Cambridge, U.K.. str. 387. ISBN 0-521-64818-1 "Antiobrazac je kao bilo koji drugi obrazac, osim u tome što umjesto rješenja daje nešto što površno izgleda kao rješenje koje to u stvari nije."

Vanjske poveznice

[uredi | uredi kôd]