Хотите посмотреть на код, от которого хочется плакать кровавыми слезами? Исходный код Вакана... Я когда-то его выпросил у автора в рассчёте исправить баги.
Только посмотрите на TfUser.DicSearch... TfUser.RenderText... Да на что угодно! Эти простыни непрокомментированного кода! Эти сотни переменных с именами s, i, w, f, buf, ws, wss, wcs, l, ls, dp, tp, jtt, dot, s2, s3! Эти затычки для экспшнов повсюду, где (автор удивлённо пожимает плечами) почему-то случаются эксепшны... Эти названия компонентов Label1-Label123! Это ДНК. Никому не ясно, как в нём работает, что в нём работает, и зачем оно в нём работает.

Функция перебирает строку по символу (на самом деле, по 4 символа):
if i<=9 then se.Add(inttostr(9-j)+'0'+inttostr(i)+'F'+copy(s,1,i*4)) else se.Add(inttostr(9-j)+inttostr(i)+'F'+copy(s,1,i*4));
Если номер символа меньше девяти, то мы добавляем куда-то... какую-то хрень с нулём в середине. Если больше девяти, то без нуля. Что? Почему?! Почему девять? Что это за нули? Что это за F? Куда мы их добавляем? В чём смысл жизни?! Есть ли бог?! Почему мы сравниваем с девятью i, а вычитаем из девяти j?! Все эти вопросы оставлены без ответа.

На всякий случай скажу, что к автору Вакана претензий нет - он не обязан был публиковать код, и когда я просил его открыть, то сказал, чтоб он не стеснялся кривого кода, я разберусь; этим сейчас и занимаюсь. Но того, что код кошмарный, это не меняет.

@темы: Компьютеры

Комментарии
21.11.2012 в 16:38

дрыхнущий
пахнет магическим преобразователем кодировок.
22.11.2012 в 02:20

Мужчины с Марса, женщины - с Венеры, программисты - из другой галактики.
22.11.2012 в 02:54

chi yo ta ni ke ra ha to ho ra su te no ha te ki ra to na ri ha shi te
Мужчины с Марса, женщины - с Венеры, программисты - из другой галактики.

(=<`:9876Z4321UT.-Q+*)M'&%$H"!~}|Bzy?=|{z]KwZY44Eq0/{mlk**hKs_dG5[m_BA{?-Y;;Vb'rR5431M}/.zHGwEDCBA@98\6543W10/.R,+O<
22.11.2012 в 04:50

Crawling Chaos, /\[{2,3}([^\|\]\[\s]+)(?:\|([^\|\[\]]+))?\]{2,3}/iu
25.11.2012 в 02:00

Не быстрее будет свой аналог написать?
25.11.2012 в 03:57

Гость, тут много функций... И вообще, Things you should never do, part I: throwing your code away.

Расширенная форма

Редактировать

Подписаться на новые комментарии