LINUX.ORG.RU
ФорумTalks

Польский код

 , ,


1

1

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

Между тем не так давно в Польше проходили выборы, и в сеть утекли исходники ПО, которое для визуализации результатов на веб-сайте использовалось. В общем, смотрите сами, это надо видеть. Индусы отдыхают.

P.S Код на C#, но это не главное. Главное - стиль и полет фантазии автора.

Ответ на: комментарий от KRoN73

- ГЛАВНОЕ! он был сделан и сдан вовремя.

Это главное только если код не планируется развивать и поддерживать.

это вообще главное.

если в час X одна группа представит приведённый рабочий «ужас», а вторая некий репозитарий с красивым проектом, поддерживаемым документированным кодом, но нерабочий - отгадай что будет включено в релиз, кто получит деньги и кого считать большим профессионалом?

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

Не смеши. Тут же дело не только в архитектуре. Та же задача решается примерно в 100 раз меньшим количеством строк == времени надо на 2 порядка меньше.

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

Пруф хоть кинь. А то сказать, что на любом другом можно, а на BASIC нельзя можно запросто =)

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

такое сплошь и рядом в программах для мк: локальные переменные дорого стоят, а разбивать по файлам смысла нет

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

То есть это не только наше локальное изобретение. Забавно. :)

mono ★★★★★
()
Ответ на: Нацпол же от int13h

Извини, но тут нет ничего вызывающего и оскорбительного. На «русский код», я думаю, тоже никто бы не обиделся.

mono ★★★★★
()

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

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

то есть вы представитель третьей группы товарищей, которые через месяц-другой после часа X, приходят и говорят что могли сделать лучше, быстрее и возможно дешевле :-)

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

Stack Overflow reputation correlates with a preference for spaces, too: users who have 10,000 rep or more prefer spaces to tabs at a ratio of 3 to 1.

Неудивительно, что код по ссылке с табами (ну хоть не смесь).

Ты опять выходишь на связь? И что это доказывает? Если мы говорим, что пользователи со скором >10k это профессиональные программеры, к мнению которых надо прислушиваться, то 25% программеров это нифига не погрешность, которую можно просто отбросить.
Например все вместе взятые программеры на C/C++ не смогут составить 25% от общего числа.

Если же скор на so нифига не значит, то эти цифры так же нифига не значат.

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

отгадай что будет включено в релиз

Очевидно, что менеджмент часто делает ошибки, сосредотачиваясь на сиюминутной прибыли и теряя перспективу. Такие случаи столь же часты, как и проигрыш более дальновидным компаниям в итоге.

и кого считать большим профессионалом?

Строго формально по определению в данном конкретном случае — менее квалифицированного программиста. Профессионализм и квалификация — не синонимы в общем случае. Денег может больше зарабатывать совершенно неквалифицированный разработчик.

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

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

Писать такое — вообще не проблема. Проблема потом такое разгребать.

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

Хз, я иррационально пишу код. Чтобы такое сидеть и набирать - да никогда в жизни не соглашусь.

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

А в TP перенос строк был, разве?

Я не помню, возможно нет. Но уверен, что редактор в TP был не единственным редактором.

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

мне коллеги показывали польский код, из забавного - switch на 200 условий и 300 if

Ну да, как-то так:

int foo(int value)
{
   if(value == 0) return 1;
   if(value == 1) return 2;
   if(value == 2) return 3;
   if(value == 3) return 4;   
}

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

Но уверен, что редактор в TP был не единственным редактором.

Тогда сразу терялся весь смысл TP. В DOS был очень накладным и утомительным цикл открытие редактора/редактирование/сохранение/компиляция/запуск/открытие редактора/исправление/сохранение/компиляция...

На том среды, типа TP/BC/QB45 и выезжали. Очень мало кто в здравом уме писал на TP, не пользуясь его редактором.

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

На том среды, типа TP/BC/QB45 и выезжали. Очень мало кто в здравом уме писал на TP, не пользуясь его редактором.

Я для просмотра сорцов не запускал TP или BC, а нажимал f3 в VC.

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

из забавного - switch на 200 условий и 300 if

Из творчества русского программиста. Бывшего коллеги по работе :)

Такого экрана два:

http://img205.imageshack.us/img205/6601/selection076.png

Такого — экранов 17 (да, код ручной, не машинной генерации):

http://img62.imageshack.us/img62/7199/029s.png

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

И чем же я вызвал такое утверждание? Ты точно видел комментируемый мной код? По-моему нет.

исходный посыл топика - в самой шапке

ваше утверждение: «Та же задача решается примерно в 100 раз меньшим количеством строк == времени надо на 2 порядка меньше.» сильно позже сдачи реального кода заказчику, и наверное(когда-там выборы УЖЕ прошли) на месяц позже снятия самого софта с эксплуатации.

всего в приведённом коде 3000 строк. в 100 раз меньше - это всего 30, а на «времени на 2 порядка» - это тоже в сто раз. Будьте поосторожнее в своих оценках :-)

PS/ просто топик дурацкий - обсуждать код, который по неведомым нам причинам именно таков какой есть, и к тому-же на 100% выполнил свою задачу - глупо. Осуждать квалификацию автора, который «мужик сказал - мужик сделал» и всё заработало вообще достаточно странно.

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

Я для просмотра сорцов не запускал TP или BC, а нажимал f3 в VC.

Между просмотром сорцов и написанием/отладкой есть две огромных разницы. F3 нажимали именно потому что так было намного быстрее. Также, как и запустить компиляицю/запуск из среды было намного быстрее, чем пользоваться внешним редактором и компилятором командной строки.

KRoN73 ★★★★★
()

гаспада, судя по тексту коммита это декомпилированный код

расходимся

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

если в час X одна группа представит приведённый рабочий «ужас», а вторая некий репозитарий с красивым проектом, поддерживаемым документированным кодом, но нерабочий - отгадай что будет включено в релиз, кто получит деньги

Потому большинство софта такое Г. Ибо всегда находятся идиоты готовые за мелкий прайс укладываться в непотребные сроки.

ya-betmen ★★★★★
()
Ответ на: комментарий от MKuznetsov

Стоп-стоп-стоп. Я опровергал конкретное утверждение. Если мы будем абстагироваться до опупения, то можно до чего угодно дойти.

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

Его. Хотя я против. Раньше он в этом всём сам разбирался, а теперь мне всё это в человеческий вид приводить. Процесс на годы, наверное (в фоновом режиме) :)

KRoN73 ★★★★★
()
Ответ на: Навеяло от Midael

Автор, кстати, индус :)

Трудолюбивые они. А программист должен быть ленивым :)

KRoN73 ★★★★★
()
Ответ на: комментарий от EXL
case 0x1012: //Tecla de Navegacion De Izquierda
        calcular=0;
        if (current > 1 ) { --current; update(); break; } else { break; }

        case 0x1013: //Tecla de Navegacion De Arriba
        calcular=0;
        if ( current > 3 ) { ------current; update(); break; } else { break; }

        case 0x1014: //Tecla de Navegacion De Derecha
        calcular=0;
        if (current < 36 ) { ++current; update(); break; } else { break; }

        case 0x1015: //Tecla de Navegacion De Abajo
        calcular=0;
        if (current < 34 ) { ++++++current; update(); break; } else { break; }


Чорт побери! Какие знакомые слова! Arriba, Abajo, Tecla. Я как в детство вернулся, когда на спектруме задавал управление в игре на испанском.

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