Hlavní navigace

Názor ke zprávičce GCC 5 kompiluje rychle, pořád ale zaostává za Clangem od Petr M - - Pokud se jedna o rozsahle projekty, existuje...

  • Aktualita je stará, nové názory již nelze přidávat.
  • 11. 11. 2014 13:11

    Petr M (neregistrovaný)

    - Pokud se jedna o rozsahle projekty, existuje distribuovana kompilace.

    To jistě, můžu si třeba matematickou knihovnu nebo grafiku hodit do knihovny, definovat API a buildovat konkrétní knihovnu + aplikaci beze změn ostatních částí. Make to podporuje a nenní s tím problém. Nemá to ale smysl třeba pro 20 zdrojáků.

    - Pokud se jedna o uzivatelske aplikace, pak rychlost kompilatoru je irelevantni a pokud na ni poukazuji developeri jako na nutnost testu syntaxe, pak budto pouzivaji hloupy editor, nebo pracuji na spatne pozici.

    Ale ono platí "Cokoliv se samo děje, dobře se děje". Ušetřím si tím nějaký čas a eliminuju lidský chyby, takže ušetřím náklady.

    Když píšu nějakou složitější funkcioanlitu, natvrdo hodím funkce a do nich kostry z (ne)existujících funkcí, protože odpovídají úrovni abstrakce. Chci todo list? Build, v reportu chyb seznam toho, co mám implementovat a ještě to v projektu není... něco dopíšu, zase build, ono se to samo aktualizovalo...

    Nebo jiná forma automatickýho debilníčku:
    #if COSI
    ...
    #elif COSI_DALSIHO
    ...
    #else
    #error na cosi jsi zapomnel
    #endif
    Můžu vidět v IDE zašedlý všechno mimo #error. Ale jenom v případě, že je to zrovna na obrazovce. Po buildu to vidím, ať je to kdekoliv.

    Pak jsou i další důvody - statická aserce odhalí, že je v tabulce jiný počet prvků, než v enumu pro indexování, Statická analýza podle MISRA je taky z principu kompilace kódu, ...

    A je rozhodně lepší kód, který se hlídá sám při kompilaci, než se spolehnout na syntax highlight nebo featury konkrétního IDE. Projekt / modul z něho se může udržovat třeba dalších pět, deset let a migrovat třeba na jinou platformu, takže opovrhovat kompilátorem a jeho schopností hledat chyby bych osobně považoval za nebezpečnější, než 20x denně mačkat na BUILD.

    Dobrý pogramátor se chybám aktivně brání a cokoliv mu s tím pomůže, je vítáno. V rozumných mezích (čas, peníze) samozřejmě.