A számítógép-programozásban a spekulatív általánosság azt jelenti, hogy a programozó csapat a felhasználó megkérdezése nélkül eldönti, hogy valószínűleg milyen további fejlesztésekre lesz szükség, a terv alapján pedig akár egész modulok is készülhetnek. Előfordulhat az is, hogy a programozó úgy gondolja, hogy megvalósít egy képességet a programjában, ami azonban sikertelennek bizonyult. Az így elkészült elemeket pedig megőrzik, hátha jó lesz valamire, talán egy másik képességre, vagy a felhasználó meggondolja magát, és mégis kérni fogja.

A programozók ritkán bizonyulnak jó jósnak vagy pszichológusnak, sőt, a képességeiket sem mindig ismerik; ha véletlenül netán szükség is lenne valami effélére, az addigi erőfeszítések egyszerűen nem érik meg, mert jóval kisebb mértékben kell, vagy annyira másként, hogy csak egy kis részét tudja hasznosítani. A modulok lecsatlakoztathatók, a fölös osztályok integrálhatók, a fölös metódusok, adattagok, paraméterek törölhetők. Az egyes elemek törlése során ügyelni kell a tesztekre is, melyeket szintén át kell alakítani, hogy ne teszteljék ezeket az elemeket.

Kivételt kell tenni a keretrendszerekkel, ahol is a keretrendszernek magának nem kell minden részét felhasználnia. Az a kliensek részére van.

Az eredmény kisebb, jobban átlátható, könnyebben karban tartható kód.

Forrás Refractoring Guru

Kategória:Programozási antiminták