Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];

Вниз

Ненавижу разбирать чужие исходники !!!   Найти похожие ветки 

 
Mike B.   (2002-12-11 17:33) [40]

Мне как то раз пришлось дорабатывать программу, которая писалась в течение нескольких лет по меньшей мере тремя разными программистами, и ни один из этих паразитов не думал не только о своих возможных последствиях, но и похоже вообще не думал.
Написана эта дрянь была на Турбо Паскале.
Про модули похоже никто из них не знал - программа представляла из себя огромный массив сплошного, плохо форматированного текста и к началу моей работы над ней уже не могла даже скомпилироваться - памяти не хватало :-) Комментарии были местами, названия переменных и подпрограмм двух типов: один "разработчик", на зывал все переменные примерно так: X, X1, XX и т.д., другой, по крайней мере пытался делать что-то осмысленное(типа okno, pechat и т.п)
В тех местах где по логике вещей должны были быть динамические струтктуры, применялись массивы огромной размерности (чтоб хватило :-), вместо записей несколько массивов, как бы связанных между собой общим индексом.
При ближайшем рассмотрении выяснилось, что куча кода просто дублируется, ну и т.д. В общем можно было брать ее и нести студентам - показывать как не надо писать программы.
А мне эту гадость нужно было дополнить новыми возможностями в предельно сжатые сроки :-)
В общем у меня были веселые три недели, и если я когда нибудь встречусь с авторами, то просто убью их голыми руками.


 
Romkin   (2002-12-11 17:44) [41]

Всего три?! Это мало ;-)


 
han_malign   (2002-12-11 17:45) [42]

Mike B. © (11.12.02 17:33)
- случаем не POSM??? правда к этому чуду проложило руки гораздо больше народа, включая: ассемблериста, которого заставили писать на ООП; реального кодокопателя(иногда по ошибке называют хакерами); генерального директора; да и без меня не обошлось...


 
Mike B.   (2002-12-11 17:49) [43]

> Romkin ©
Зато какие :-)
han_malign ©
Нет :-) Даже не знаю что такое POSM. Программа была для сбора и обработки данных с измерительных устройств


 
Игорь Шевченко   (2002-12-11 17:51) [44]

Аналогичный случай был в Тамбове. Три программиста писали три разных части проекта. Каждый знал про ООП и про наследование форм. В результате получилось три иерархии форм. Надо ли говорить, что 80 процентов кода в каждой решали одну и ту же задачу, но каждый с набором своих вывертов, с другими абсолютно несовместимо. В проекте около 100000 строк.


 
han_malign   (2002-12-11 17:56) [45]

Mike B. © (11.12.02 17:49)
POSM(ПОСМ) - пакет обработки сигналов модифицированный (с)НПП Мера
предыдущая версия ПОС
я под ПОСМ рекордер/магнитограф писал, с возможностью подключения мониторинговых примочек


 
Mike B.   (2002-12-11 17:57) [46]

> Игорь Шевченко ©
О чем вы говорите, какое ООП! Например тот кто разработывал интерфейс пробелему описания окон решил таким образом. Завел несколько массивов, типа таких: okna, cvet_fona, cvet_teksta и т.д. по всем "свойствам" этих окон, размером тысяч в десять элементов, а потом надо создать окно - в первый пишет его номер, во второй по тому же индексу цвет фона и т.д и так с ними работает - надо окошко открыть/закрыть идет по всем этим массивам, выбирает характеристики окон и в нужном порядке все перерисовывает - в общем чудо, а не программа


 
Ketmar   (2002-12-11 18:27) [47]

мда... какие вы ужасы рассказываете... а я их на ночь читаю %-)
а идеально написанный код - это мой. правда, через 3 дня я в своем коде уже ничего не понимаю, но это же не важно? %-) ну чем, например, плохо название переменной ahirotry43? сразу понятно, что она используется только в for"ах.

а если серьезно - вот сейчас работаю с человеком, который вообще не признает локальных переменных. как факт. мотивирует тем, что "глобальные - быстрее". 3.1415926ец. не дай демоны мне когда-то придется его исходники ковырять... а сделать ничего не могу - не начальник я. хотя, видимо, стоит поднять вопрос о стандартизации кода. внутри моей команды (Piranha) такой недавно поднялся, в итоге пришли к Borland-Style для оформления (+ немножко от Кармака), некоторым стандартизованным именам переменных (для циклов, например), стандартным комментариям в начале модулей и ты ды... надо бы и на конторе такое предложить...

Satanas Nobiscum! 11-Dec-XXXVII A.S.


 
OlegMsc   (2002-12-11 18:54) [48]

Работал с парнем, который считал, что его стиль - экстремальное программирование. При решении проблемы, предыдущий код не просматривался, алгоритм не разбирался. Создавались новые процедуры, призванные решить только конкретную проблему, но зачастую, нарушавшие ход всего процесса. В результате, ошибки появлялись везде, где еще вчера все было гладко... После трех месяцев работы, вся команда дружно выпнула товарища в большой мир из тесного офиса.
P.S. Месяца три после этого проект работал, выдавая раз в час Access Violation...


 
Igorek   (2002-12-11 19:10) [49]

А как вам такой кусок?
Result := (i + (abs(i div c) + 1) * c) mod c;
;-)


 
Anatoly Podgoretsky   (2002-12-11 20:34) [50]

Result := I mod C, поскольку x * c mod c = 0


 
Игорь Шевченко   (2002-12-12 10:06) [51]

OlegMsc © (11.12.02 18:54)

О пользе экстремального программирования, однако :-)))
Не люблю я все, что связано со словом "экстремальный", пусть даже и программирование. Подсознательно...


 
Igorek   (2002-12-12 10:56) [52]


> Anatoly Podgoretsky © (11.12.02 20:34)

Вы не разобрались в скобках.
Result := (i + (abs(i div c) + 1) * c) mod c;
т.е. (i + x*c) mod c



Страницы: 1 2 вся ветка

Форум: "Потрепаться";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.55 MB
Время: 0.008 c
14-99314
hatchy
2002-12-10 12:00
2002.12.30
Вообще облом с messagebox...


1-99048
Balkon
2002-12-19 11:47
2002.12.30
SHBrowseForFolder и кнопарь New


1-99104
PONTIY
2002-12-20 07:17
2002.12.30
Как в форму добавить в качестве поля незарегистрированный класс?


1-99052
LongIsland
2002-12-19 12:18
2002.12.30
Глюки или я ...?


14-99252
zzet
2002-12-11 17:19
2002.12.30
исскуство быть счастливым 8-)))





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский