1. SQL / Говнокод #3367

    −861

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    errnum := 0;
    if (bitand(err, 1) != 0) then
    	errnum := -20027;
    end if;
    
    if (bitand(err, 2) != 0) then
    	if (errnum = 0) then
    		errnum := -20028;
    	else 
    		errnum := -20029;
    	end if;
    end if;

    Это PL/SQL
    Это мой первый вариант, я заменил его потом на этот, в одну строку:
    errnum := -20026 - (bitand(err, 1) + bitand(err, 2));

    Запостил: Oleg_quadro_, 01 Июня 2010

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

    • Офигеть... Тогда уж сразу:
      -20026 - bitand(err, 3)

      Хотя, ИМХО, первый вариант был кривоватый, но говнокодом на его фоне смотрится как раз-таки второй. Если из первого выкинуть Magic Number и немного пореfuckторить - будет как раз таки правильно.
      Ответить
    • оригинал лучше.

      когда доходит до кодов ошибок - тупее == лучше.

      по моему опыту, коды ошибок должны быть прописаны константами что бы их можно было потом простым поиском по файлам находить (grep -r).
      Ответить
    • Автор, оставь первый вариант, и все числа замени на константы нах срочно, а то потом будет намного хуже.
      Ответить
    • ой, зачем тут двоичная логика )
      Ответить

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