1. Си / Говнокод #11842

    +141

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    #include "statements.h"
    #include "lexer.h"
    #include "conditions.h"
    #include "variables.h"
    #include "generator.h"
    #include "labels.h"
    #include "types.h"
    #include "errors.h"
    #include "io.h"

    В одном из cpp-файлов такой вот нехилый список инклудов.

    Запостил: Fai, 27 Сентября 2012

    Комментарии (6) RSS

    • Где здесь говно, fai?
      Ответить
      • Многа инклудов, половину можно хоть сейчас выбросить - они никак не используются. Остальные пересекаются, например labels.h включён в statements.h, variables.h и types.h.
        Ответить
        • То что они там что-то инклудят - деталь их реализации. Сегодня инклудят, а завтра уже нет. Поэтому правило хорошего тона - инклудить то, где описаны нужные тебе функции или классы, не вдаваясь в то, что они включили в себя.

          П.с. неиспользуемые инклуды действительно говно, хотя скорее всего являются последствиями рефакторинга.
          Ответить
          • s/инклудить то где/инклудить те модули, где/
            Ответить
    • Механизм инклюдов сам по себе говно, и ничего с этим сделать нельзя.
      Ответить
      • Это да. Костыль, с которым приходится мириться.
        Ответить

    Добавить комментарий