LiveHelp
:: О компании :: Портфолио :: Основные услуги :: Дополнительные услуги :: Информация

Shitcode или как нельзя кодить

В сети есть много примеров индусского, японского и прочего неправильного кода. В качестве хохмы я решил разместить здесь пару интересных подборок.

Говорят что программистам из Индии деньги платят за количество строчек кода которые они написали(редко обращая внимание на качество). Вот пример одной из конструкций:

if ($x == 0) {
// Do 1…
}
elseif ($x!=0) {
// Do 2…
}
else {
//
// А вот здесь чистые деньги :)
//
}

Очень интересная регистрация пользователя:

class user {
    private function register() { throw new Exception_UserFuckinRegistered();  }
}

$user = new user();

try {
    $user->register();
} catch (Exception_UserFuckinRegistered $e) {
    header('Location: profile.php');
    exit;
}

Видимо в другом коде столько аналогичного бреда, что успешная регистрация считается исключительной ситуацией

А вот вариант того, как неграмотные программисты используют переменные в PHP:

if(is_numeric($email) && !empty($email)){
    $email = $this->query("SELECT email FROM users WHERE id=".$email);
    if($email && mysql_num_rows($email)>0){
        $email = mysql_fetch_row($email);
    $email = $email[0];
    }
}

Очень интересная установка временного лимита в CMS 1С-Битрикс (из класса разбора CommerceML):

//This is an optimization. We assume than no step can take more than one year.
if($time_limit > 0)
$end_time = time() + $time_limit;
else
$end_time = time() + 365*24*3600; // One year

Один из самых веселых примеров кода, который я когда-либо встречал. Как сказано в комментарии, этот код пытается найти в строке подстроку «Nothing», «Successful», «Password» или «Failed», причём регистр первой буквы неважен.

protected void parseSummaryLines()
{
   //...

   // NOTE: First letters are ommited in order to
   // support capitalized words as well
   String RESULT_GOOD_TEXT_1 = "othing"; // Nothing
   String RESULT_GOOD_TEXT_2 = "uccessful"; // Successful
   String RESULT_BAD_TEXT_1 = "assword"; // Password
   String RESULT_BAD_TEXT_2 = "failed"; // Failed

   //...
}

Можно относиться к нему по-разному. С одной стороны, можно усмотреть в этом *овнокод. С другой стороны, это простое и лаконичное решение, только если пользователь не введет все буквы в верхнем регистре. Кстати первая буква в искомом слове может быть вообще любой (Zassword, Lailed и пр). Но в любом случае, получившееся в результате «Жопослово» (assword) — это шедевр ...

Назойливая реклама:

Если вы умеете правильно кодить и создавать качественные сайты, то вам может быть интересно как продвинуть сайт. А информацию о продвижении сайта можно узнать, как бы это не тривиально не звучало, на сайте uratop.ru.

Share this

Мы на других сайтах

F P V