Школоло / Говнокод #3125 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
/// До этой строчки еще больше 1000 строк кода (И это всё в ОДНОЙ процедур)
 finally
    if Main.RecordCount > 0
    then Main.First;
    Main.EnableControls;
    Panel2.Color:=clLime;
    lbTimeSpend.Caption:='Âðåìÿ çàòðà÷åíî:'+TimeToStr(time()-TimeWork);
  end;

  Exit;

  try
    if TmpCollect_Skd.IsSelectAll then
    begin
      Askd_count := TmpCollect_Skd.RxDBGrid1.DataSource.DataSet.RecordCount;
    end
 /// После этой строки еще более 1000 строк кода всё в этой же процедуре!

Продолжим. Вот так люди используют Exit;

Запостил: goodron goodron, (Updated )

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

  • Соль нужна. Напостил тут блин с три короба.
    Слабо было написать так? :
    //код...
    Exit;
    //никогда не выполняющийся код...
    Ответить
    • Так не интересно, если всё выкинуть, то будет слишком банально.
      Ответить
    • Это не говнокод. У самого такое было, например, какой-то функционал не нужен - проще выход из функции написать, чем кусок комментировать. Или переписывал функцию, чтобы видеть что раньше было, перед старым куском ставился выход.
      Ответить
      • Так это одно когда какое-то условие верно и там выход, а тут в любом случае выход.
        Ответить
        • В моих случаях выход был всегда, просто таким образом отрезал старый/не нужный код
          Ответить
      • Но как только такое попадает в production, оно становится 100% говном.
        Ответить
      • Хорошие мальчики пишут «невъебенно» с твёрдым знаком.
        Ответить
        • Ну я не такой уж и хороший... Чуть чуть хороший. 🙂
          Ответить
              • Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?Где здесь РЎ++?
                Ответить
  • Самое главное же здесь Âðåìÿ çàòðà÷åíî:!
    Именем Âðåìÿ çàòðà÷åíî: объявляю говнокод удачным!
    Ответить
    • такой глюк возможен при копировании между разными программами, не обязательно что в коде так и есть
      Ответить
      • Не совсем. Это официальный глюк броланда, продукции броланда, и софта, написанного на продукции броланда. Эти чумовые сосиски что-то намудрили, поэтому:
        - из продукции броланда (цбуилдер, делфы) во всё, что угодно, кроме продукции броланда русский текст вставляется вот таким образом.
        - из продукции броланда и софта, написанного на продукции броланда в аналогичные им продукты вставляется просто зашибись.
        В этом случае автор при копировании открыл окно с дельфёй, а магии не делал.
        Если нужно вставить из продукции броланда в приличное приложение, нужно выполнить следующие магические действия:
        - переключить раскладку в окне на "русский";
        - скопировать из нужного окна нужный текст, выделив его;
        - можно безопасно вставлять в любое приложение, кодировка верная.

        Инфа 100%, я гарантирую это как цбуилдерник со стажем.
        Ответить
        • За способ с переключением раскладки огромное спасибо.

          Но это встречается не только в продукции борланда. Например, есть такая программка Homesite для верстки сайтов, при копирование русского текста, например, в ворд наблюдается точно такой же глюк
          Ответить
          • > и софта, написанного на продукции броланда
            Macromedia Homesite 5.5, что подвернулась под руку:
            Borland Delphi 4.0 - 5.0
            Ответить
        • "продукции броланда" - это эвфемизм? 🙂

          а я знал, что в борланде говнокодеры сидят
          Ответить
        • Бредятина... Но чтобы понять это надо избавляться от "что-то намудрили" и магии, которая антагонистична пониманию...
          Просто, когда выполняется копирование в клипборд из неюникодных приложений, то происходит автоматическая перекодировка в юникод, причем кодовая страница выбирается по текущей включенной раскладке для окна из которого происходит копирование. Обратное происходит еще интереснее... Но в этом нет сиплюсплюса, потому всемпох...
          Ответить
          • В этом есть магия броланда, которые не осилили юникот.
            Ответить
            • procedure TForm1.FormCreate(Sender: TObject);
              var
              s: string;
              begin
              s := 'редиска';
              end;

              end.

              Может быть давайте обсудим еще почему в TPfW не было поддержки юникода?
              Ответить
      • такой глюк возможен при копировании между разными быдлопрограммами, не осилившими юникод, не обязательно что в коде так и есть
        fixed
        Ответить
  • не факт, что человек открывал исходник именно в Дельфях, и еще неизвестно каким браузером он пользуется. по-этому глюк кодировок вполне объясним. а по поводу кода, то ниче нет плохого в использовании exit, было интереснее посмотреть на несколько строк из той тысячи сверху. что-то мне подсказывает, что там обработка базы данных вручную. если так, то похоже на гавнокод
    Ответить
  • Это не говнокод, это говнокамент...
    Лучше бы обернули в {$IFDEF NOT_DEFINED}/{$ENDIF}, а еще лучше юзать системы контроля версий и вытирать атавизмы из исходников без боязни невозвращения
    Ответить
  • это не говнокод)
    с Exit просто косяк.
    А вообще, говнокод должен быть краток, суров, безжалостен и беспощаден.
    Ответить

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

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8