LINUX.ORG.RU
ФорумTalks

Немного о «программистах от сохи»


0

0

Работаю, ищу ошибку, возникшую в чужой процедуре, и решил привести статистику по ней (чтобы молодежь поучилась как не надо писать):

Количество строк в процедуре - 1251

Количество параметров - 26

Количество вложенных процедур - 12, из низ 6 имеют длину менее 20 строк

Количество глобальных переменных - 6

Средняя длина названия процедуры - 14 символов, максимальная - 20

Количество полей с нарастающим итогом только в одной таблице - 18

И эти люди считают, что они написали "качественный продукт"???

Ой что будет если я найду автора этого "шедевра"...

★★★★★

>Количество глобальных переменных - 6

Про остальное понимаю что плохо и так не делаю, а чем плохи глобальные переменные?

K48 ★★★★
()

>Средняя длина названия процедуры - 14 символов, максимальная - 20

По-моему, вполне нормально.

WFrag ★★★★
()
Ответ на: комментарий от K48

>а чем плохи глобальные переменные?

код становится нетиражируемым

Pi ★★★★★
()
Ответ на: комментарий от Sun-ch

> Наверное вижул бейсик? Даша его преподает :)))))

:)))) провокаторов на кол

Bazarov
()

Ну кроме глобальных переменных и вложенных процедур (правда за это уже надо наказывать) все не так плохо, если эти кучи символов употребляются на понятные имена.

Shaman007 ★★★★★
()

И вправду, систма какая? Если ООП, то за процедуры такой длины расстреливать надо :)

shuthdar ★★★
()

> Ой что будет если я найду автора этого "шедевра"...

хехе .. а что будет если ты его не найдешь? кто тебе расскажет что процедура делает? ;))

lg ★★
()
Ответ на: комментарий от lg

А куда он нах денется?

Студентик какой-нибудь несчастный, все равно на экзамен к Даше прийдет.

Sun-ch
()

Даша! Автор программы - В.С.Луговский. На ЛИСПЕ Mauhuur писАл, наверное.

anonymous
()

> Количество строк в процедуре - 1251

может это какой нибудь мегапроект

2no-dashi, выложи эти исходники, мы тоже посмеемся :)

JB ★★★★★
()

Количество глобальных переменных - 6 
- принципиально не всегда плохо


Средняя длина названия процедуры - 14 символов, максимальная - 20
- если название понятное, то это не минус

JohnRus
()
Ответ на: комментарий от K48

Тем, что каждая глобальная переменная - это дополнительные трудности в отслеживании (и отладке) сайд-эффектов. А недоязычки типа C++ не умеют выставлять в сигнатурах функций те объекты, которые потенциально могут быть функцией изменены...

anonymous
()
Ответ на: комментарий от Shaman007

Вот как раз вложенные процедуры - не так уж и плохо, раз уж нормальных замыканий нет.

anonymous
()
Ответ на: комментарий от anonymous

Херня. У Луговского на Лиспе процедуры и за 15000 строк бывают. В такую бодягу макры раскрываются. И на Java у него то же самое бывает, см. тред, где он на JIT в Mono и Sun JRE гнал.

anonymous
()
Ответ на: комментарий от anonymous

> У Луговского на Лиспе процедуры и за 15000 строк бывают.

Значит гнать вшею такого "крутого программиста", как профессор Луговский надо. Сразу видно, что Махор "титиретик"-ЛАМО, не написавшее в жизни ничего практически полезного.

anonymous
()
Ответ на: комментарий от anonymous

А обоснуй. Чем плохо, если код в 50 строк макропроцессором раскрывается в процедуру в 15000 строк, если это - оптимально (громадная таблица локальных переходов, что быстрее, чем вызов функции).

anonymous
()
Ответ на: комментарий от anonymous

А теперь подсчитаем во сколько строк ассемблерного кода раскрывается маленький приплюснутый метод в 10 строк...

anonymous
()

> Количество строк в процедуре - 1251

И комментарии, небось, в виндовой кодировке -- cp1251... ;-)

Obidos ★★★★★
()

>процедуре

>Количество вложенных процедур

Судя по термином - pascal. По описанию похоже на сырцы из Delphi ?

kosmonavt
()
Ответ на: комментарий от kosmonavt

> Судя по термином - pascal.

PL/SQL.

> По описанию похоже на сырцы из Delphi ?

Не-а, борланды свои библиотеки куда лучше пишут. Это "Корпоративная информационная система <<Парус>>", процедура начисления амортизации :-) Поэтому, кстати, и код показать не могу - типа чужая собственность.

no-dashi ★★★★★
() автор топика
Ответ на: комментарий от no-dashi

О... Это пепец. Им надо отрезать пипки и заставить сожрать, сырыми и без соли.

anonymous
()
Ответ на: комментарий от no-dashi

>Не-а, борланды свои библиотеки куда лучше пишут

Зато в Builder 6 у них полный пипец. Выравнивание структур WinAPI в хидерах не на 2, а на 8 байт. Неделю баг ловил, пока не дошло, что не мой это баг.

kosmonavt
()
Ответ на: комментарий от kosmonavt

>в хидерах

Если исходники лора будут когда-либо открыты, то первая фича, которую я реализую самолично, будет перманентный автобан за употребление слова "хидеры" в сообщении.

Запоминаем:

хидоры - на gay.ru
хедеры - на linux.org.ru!

K48 ★★★★
()
Ответ на: комментарий от kosmonavt

> Выравнивание структур WinAPI в хидерах не на 2, а на 8 байт

Это фигня, детали реализации :-) Вот когда микрософт пишет typedef enum .... typename - вот это едйствительно писец...

no-dashi ★★★★★
() автор топика
Ответ на: комментарий от no-dashi

> Корпоративная информационная система <<Парус>>

Гы! я угодал! зри в удолёных.

anonymous
()
Ответ на: комментарий от no-dashi

Я так и подумал, что это PL/SQL. Существует целая армия PL/SQL-only программистов, не способных писать модульные программы. Это отчасти объясняется убожеством язычка. Что касается цифр - я видел код (на PL/SQL) и похуже. Кстати, практически все самописные банковские системы примерно такого качества.

Cantor ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.