Как не нужно писать программы

Сегодня открыл для себя сайт, название и адрес которого в приличном обществе и произнести-то неудобно. Там собраны неэффективные, глупые, а иногда и просто абсурдные фрагменты компьютерных программ. На самых разных языках. Вот, например, китайский код на Java:

class GGPoint extends Object {

}


Для тех, кто не знаком с этим языком программирования поясню, что любой класс наследуется от Object, так что «extends Object» здесь избыточно. Да еще и собственных полей и методов новый класс не содержит. Так что вся эта конструкция практически абсурдна.

Думаю, даже программист начального уровня улыбнется вот на эти строчки (камент «Ну пожааалуйста!» особенно доставляет):

try:
    ix, iy, image = im.size[0], im.size[1], im.tostring("raw", "RGBA", 0, -1)
except SystemError:
    ix, iy, image = im.size[0], im.size[1], im.tostring("raw", "RGBX", 0, -1)


Или вот метод сортировки простых чисел, написанный на bash'e. Это уже не столько «говнокод», сколько свидетельство нестандартного мышления (я когда въехал — искренне поржал). Хотя неумение использовать утилиту sort чести автору не делает:

#!/bin/bash
function f() {
    sleep "$1"
    echo "$1"
}
while [ -n "$1" ]
do
    f "$1" &
    shift
done
wait


А вот над этим кусочком программы, я думаю, посмеется даже тот, кто не знаком с синтаксисом 1С.

Польза от этого сайта такая же, как от зеркала: все мы грешим иногда «быстренькими» решениями, на которые потом без слез не взглянешь. Так что поучиться на чужих ошибках очень даже полезно. Жаль только rss-ленты у них нет. Я бы подписался.

Комментарии (4)

RSS свернуть / развернуть
+
0
Список годов неплохо так вбит
avatar

Sergei_T

  • 23 марта 2012, 14:44
+
0
Примечательно, больше всего примеров говнокода на PHP — 2730
avatar

durman

  • 23 марта 2012, 18:43
+
0
Вот на эту тему классный материал: Witology и Auriga судятся за «адовъ говнокод». От души поржал.
avatar

yababay

  • 29 марта 2012, 14:35
+
0
Посмеялся, но конечно комментарии жесткие. Адовъ говнокод.
avatar

Sergei_T

  • 30 марта 2012, 18:07

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.