A számítógép-programozásban a primitívmánia azt a jelenséget írja le, amikor egyszerű feladatokra primitíveket, mint egy-egy számot, stringet, karakterkódot használnak ahelyett, hogy egyszerű objektumokat, például felsorolásokat (enum) hoznának létre. Habár ezeknek rendszerint van nevük, a varázsszámokhoz hasonlóan könnyű megfeledkezni a jelentésükről, például elfelejteni, hogy melyik számhoz milyen mértékegység tartozik. Ebben akkor sem lehetünk biztosak, ha az elnevezés tartalmazza a mértékegységet, mivel így nincs típusellenőrzés sem. A problémát néha azzal próbálják megoldani, hogy az összetartozó primitíveket asszociatív tömbökbe helyezik. Egyes primitívek akár metódusokat is tartalmazhatnak.

A sietség pillanataiban a fejlesztő kapkodásának eredményeként jöhet létre, hiszen sokkal könnyebb egy primitív mezőt és hozzá megjegyzést írni, mint megalkotni egy alkalmas osztályt, melyet később bővíteni lehet például átváltással.

A kódszag megoldható azzal, ha az összetartozó primitívekből osztályt építünk. Ha szükséges, akkor a primitívek helyett az új osztályú objektumokat lehet átadni. A már eleve meglévő asszociatív tömbök megkönnyítik az összetartozó primitívek megtalálását. Szükség esetén bevezethetők szülő osztályok, és alkalmazhatók az állapot vagy stratégia programtervezési minták.

A refraktorálással a kód rugalmassága megnő, jobban érthetőbbé és szervezettebbé válhat. és a kódduplikációk is egyszerűbben megtalálhatók.

Forrás Refractoring Guru

Kategória:Programozási antiminták