Prima di tutto il link

ANTI IF CAMPAIGN

Poi discutiamo del fatto che l’if, come molti costrutti della programmazione imperativa, si presta all’abuso. Il software deve essere pensato per essere mantenibile e non una collezione ingestibile di pezze. Questo, come molte altre cose in informatica, si raggiunge col buon senso. Non è che sostengo, come la persona nel link qua sopra, che gli IF non vadano mai usati. Ma quando ce n’è uno lungo 780 caratteri, vuol dire che la progettazione di quel pezzo di software ha fallito. O non c’è mai stata.

L’ If è una delle strutture base, insieme al ciclo senza contatore e al GOTO ( si il dannato GOTO ). La programmazione alla fine si basa su questo. O se vogliamo ricondurla al’assembler JE o JNE … chi ha usato un disassemblatore X86 sà a cosa mi riferisco. Non si dimenticano i salti condizionati. Ma non si può esprimere concetti complessi in modo immediatamente comprensibile tramite di essi. Se ci metti 2 – 3 condizioni va bene. E’ chiaro e leggibile. Se ne metti 30 immischiate in un casino di parentesi e OR / AND  ci metto 3 ore a campire cosa significano e 5 minuti a fargli-fare-cio-che devo fare. E generalmente quest’ultimo scenario deriva da pezze attaccante di volta in volta da programmatori che per voglia o per obbligo hanno applicato la filosofia del minimo-sforzo (e risultato appena sufficiente)