Здравствуйте, IT, Вы писали:
IT>Здравствуйте, nen777w, Вы писали:
N>>Я N>>Я N>>Я N>>Я... Я
IT>Это ты непроизвольно шифт задеваешь, когда 'я' набираешь или что-то религиозное?
Понимаешь, Д' Артаньян пишется с большой буквы, даже с двух больших букв.
Здравствуйте, nen777w, Вы писали:
N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
вам пар спустить или проблему решить? кстати, вспомнилась классика:
Любой русский программист, после пары минут чтения кода, обязательно вскочит
и произнесет, обращаясь к себе: переписать это все нафиг. Потом в нем
шевельнется сомнение в том, сколько времени это займет, и остаток дня
русский программист потратит на то, что будет доказывать самому себе, что
это только кажется, что переписать это много работы. А если взяться и
посидеть немного, то все получится. Зато код будет красивый и правильный. На
следующее утро русский программист свеж, доволен собой и без единой запинки
докладывает начальству, что переписать этот кусок займет один день, не
больше. Да, не больше. Ну, в крайнем случае, два, если учесть все риски. В
итоге начальство даст ему неделю и через полгода процесс будет успешно
завершен. До той поры, пока этот код не увидит другой русский программист.
А в это время, в соседних четырех кубиках, будет ни на секунду не утихать
работа китайских программистов, непостижимым образом умудряющихся прийти
раньше русского программиста, уйти позже, и при этом сделать примерно втрое
меньше. Эта четверка давно не пишет ничего нового, а только поддерживает
код, написанный в свое время индусом, и дважды переписанный двумя разными
русскими. В этом коде не просто живут баги. Здесь их гнездо. Это гнездо
постоянно воспроизводит себя при помощи любимой китайской технологии
реиспользования кода — copy/paste. Отсюда баги расползаются в разные стороны
посредством статических переменных и переменных, переданных по ссылке (ведь,
китайский программист не может смириться с неудобствами вызванными тем, что
он не может изменить значение внешнего параметра). Вспоминая об этих
переменных и ссылках, русский программист, как правило, на время теряет дар
английской речи, и переходит к какой-то помеси русского и китайского. Он
давно мечтает переписать весь кусок, над которым работают китайцы, но у него
нет времени. Он уже переписывает два больших куска, и доказал начальству
необходимость переписать третий. Кроме того, русский программист боится
обидеть китайцев. Они могут решить, что он пытается вытеснить их с работы. К
слову сказать, напрасно боится, поскольку китайцы уже так решили.
На китайцах висят серьезные баги, о которых знает начальство и постоянно их
торопит. Китайцы уважают начальство и потому перевешивают баги друг на друга
очень торопливо. Они знают, что все попытки починить приведут к появлению
новых багов, еще худших. И в этом они правы. Разобраться в том, в каком
порядке меняются статические переменные, и как приобретают свои значения,
способен только один человек на фирме — индус. Но он пребывает в медитации.
Поэтому, когда всю четверку уволят во время сокращения... А кого еще
увольнять? Русский — еще не переписал свой кусок, а индус — главная ценность
фирмы — он редко обращает внимание на проект, но когда обращает, все
понимают, что так как он, архитектуру никто не знает. Так вот, когда
китайцев увольняют, у их кода возможны две основные судьбы. Первая — он
попадет к русским, и его перепишут. Вторая — он попадет к местному,
канадскому программисту.
О, канадский программист это особый тип. Он, ни на минуту не задумываясь,
как рыцарь без страха и упрека, бросится фиксить самый свирепый баг
китайского кода. Этот Баг живет там уже три года, и китайцы уже четырежды
(каждый по разу) сообщали начальству, что он пофиксен. Но Баг каждый раз
возвращался, как Бетмен в свой Готхем.
Итак, канадский программист, воспитанный на героической патетике
американского футбола — бросаться в бой головой вперед, сделает то, чего
китайцы не рисковали делать в течении трех долгих лет. Он, при помощи
дебагера, отследит место, где статическая переменная приняла значение -1
вместо правильного 0, и решительным движением заведет рядом вторую
переменную с правильным значением. Баг погибнет в неравной схватке с героем.
Но победа будет достигнута тяжелой ценой. Работать перестанет все, включая
только что переписанный русским программистом код. Это повергнет русского
программиста в задумчивость на целых два дня, после чего он сделает, в
общем-то, предсказуемый вывод о том, что дизайн с самого начала был
неправильным, и все надо переписать. На это нам нужна неделя. Да, неделя, не
больше.
Канадский программист смело бросится налаживать все, и станет еще хуже, хотя
казалось бы... Эта суета выведет из медитации индуса, который придумает и
вовсе гениальное решение — отбранчить код. Согласно его плану, мы теперь
будем поддерживать две версии одного и того же кода — одну работающую, но с
Багом, другую без Бага, но не работающую. Русский программист, услышав об
этом плане, сломает линейку об стол и обзовет жену дурой, но на митинге
возразить не решится.
К счастью, все это не сильно влияет на дела фирмы, поскольку продукт
продается и так. Поэтому менеджмент ходит в целом довольный и не устает
напоминать всем, что они отобраны как лучшие среди лучших. И что мы давно
доказали свою способность выпускать продукт тем, что выпускаем его иногда.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, nen777w, Вы писали:
N>Здравствуйте, HolyNick, Вы писали:
HN>>А чем не нравится enum ошибок? N>enum нравится. не нравится то что некоторые коды ошибок в этом enum объявленны для наверно... хз чего вообще. т.е. их реально не используют.
так на будущее наверное сделали. просто TODO или коммент забыли добавить?
я наоборот ненавижу — кто-нибудь что-то увидит, решит что это я от тупости написала, не спросит зачем я это сделала, и молча удалит. потом ругаешься с человеком и ролбэкаешь
Здравствуйте, зиг, Вы писали:
зиг>Здравствуйте, alpha21264, Вы писали:
A>>>>К стати, а тебе сколько лет? D>>>Для атоса слишком много, а для графа де ла фер слишком мало. А ты с какой целью интересуешься?
A>>Ну... Хочу навык усовершенствовать... Есть такая наука — психолингвистика, A>>которая гласит, что по тому что человек говорит (пишет) про него много чего сказать можно. A>>По твоему сообщению выходит что тебе где-то 22-25 лет. Угадал?
зиг>а мне сколько???
12.05.2011 19:07, nen777w пишет:
> > Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Когда будешь устраивать вздрючку не забывай здесь писать, по крайней
мере я попкорном запасаюсь.
Здравствуйте, nen777w, Вы писали:
N>Во общем есть у нас проект, внутренний для заказчика. Пишем уже версию 3. N>Я пока с начала проекта делал адаптацию к 2008-й студии, потом занимался написанием всякого разного рода вспомогательных библиотек. N>Теперь вот понадобилось прикрутить кой чего в другой части к которой Я дела не имел, в том что понаписывали другие "орлы". N>Открываю код и вижу откровенную кашку-какашку, или другими словами говнокод... N>В некоторых местах реально хуже того что Я встречал у индусов, (они у нас тоже ошиваются). N>Мне к этой какашке надо прикрутить кой чего своего, и теперь дилема, переписывать за ними всёравно нужно будет, код который уже есть как Я уже сказал какашка, реально зло берёт когда видишь это, отношения c коллегами тоже портить не хочется. N>Даже если сказать что это г.. нужно переписать переписывать это буду Я (специфика проекта такая). По натуре вроде чел Я не конфликтный, как мне кажется, если это конечно лично меня и моих интересов не касается.
N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
попробуй сперва узнать почему Орлы так написали? Бывает, что банально нет времени и приходится писать говнокод, а потом делать рефакторинг этого всегою
Здравствуйте, pvirk, Вы писали:
P>Здравствуйте, denisko, Вы писали:
A>>>По твоему сообщению выходит что тебе где-то 22-25 лет. Угадал? D>>Неа, лет на 5 промахнулся.
P>17-20?
12. Ну и каково быть поиметым школотой? (с) Картман.
Здравствуйте, denisko, Вы писали:
D>Здравствуйте, alpha21264, Вы писали:
A>>И вообще... Тебе сколько лет? Яйца курицу не учат, знаешь ли D>Фигасе, а ты тот самый какакодер? Скандалы, интриги, расследования?
Кино посмотри. "День радио".
"Ты че? половину бака слил?!!! Предупреждать надо!!! Я вторую половину слил..."
Здравствуйте, blackhearted, Вы писали:
B>Интересно, а хоть кто-то конгда-то реально говорил такое? Мол, код слишком сложный, я не разбираюсь. B>Я имею в виду разработчиков выше junior уровня. B>Или у вас везде идеальный код и никаких костылей нет? B>Может кто-то из менеджеров такое слышал от, например, senior developer? B>Как реагировали?
Ну я регулярно говорю что-то в духе "вот этот модуль писал тот-то, я тут ни в зуб ногой, прийдется потратить столько-то на въезжание; рекомендую таск передать тому-то" или "я с этим никогда не работал в отличии от того-то, лучше спросить его-то" сказать не стесняюсь. Вообще говоря, самый страшный грех разработчика — вводить менеджера в заблуждение. Конечно, есть юниор-менеджеры и г**рулевые, которые могут воспринять подобное как проявление лени или недостаток квалификации. Ну дык, чай мы не крепостные.
Во общем есть у нас проект, внутренний для заказчика. Пишем уже версию 3.
Я пока с начала проекта делал адаптацию к 2008-й студии, потом занимался написанием всякого разного рода вспомогательных библиотек.
Теперь вот понадобилось прикрутить кой чего в другой части к которой Я дела не имел, в том что понаписывали другие "орлы".
Открываю код и вижу откровенную кашку-какашку, или другими словами говнокод...
В некоторых местах реально хуже того что Я встречал у индусов, (они у нас тоже ошиваются).
Мне к этой какашке надо прикрутить кой чего своего, и теперь дилема, переписывать за ними всёравно нужно будет, код который уже есть как Я уже сказал какашка, реально зло берёт когда видишь это, отношения c коллегами тоже портить не хочется.
Даже если сказать что это г.. нужно переписать переписывать это буду Я (специфика проекта такая). По натуре вроде чел Я не конфликтный, как мне кажется, если это конечно лично меня и моих интересов не касается.
Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Здравствуйте, nen777w, Вы писали:
N>решил что молча пока что перепишу. дальше если меня будут носом тыкать в этот проект буду бузить, и устраивать вздрючку.
Вот если ты так сделаешь, то тебя ВЗДРЮЧАТ. И правильно сделают.
И вообще... Тебе сколько лет? Яйца курицу не учат, знаешь ли
N>Теперь вот понадобилось прикрутить кой чего в другой части к которой Я дела не имел, в том что понаписывали другие "орлы". N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Нужно ввести новую метрику, отношение количества межорловых передач кода к количеству переписываний.
Здравствуйте, alpha21264, Вы писали:
A>Здравствуйте, denisko, Вы писали:
D>>Здравствуйте, alpha21264, Вы писали:
A>>>И вообще... Тебе сколько лет? Яйца курицу не учат, знаешь ли D>>Фигасе, а ты тот самый какакодер? Скандалы, интриги, расследования?
A>Кино посмотри. "День радио". A>"Ты че? половину бака слил?!!! Предупреждать надо!!! Я вторую половину слил..."
A>К стати, а тебе сколько лет?
Для атоса слишком много, а для графа де ла фер слишком мало. А ты с какой целью интересуешься?
Здравствуйте, Kernan, Вы писали:
N>>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку? K>попробуй сперва узнать почему Орлы так написали? Бывает, что банально нет времени и приходится писать говнокод, а потом делать рефакторинг этого всегою
Если нынешний код и правда Г (а не заготовка для дальнейшего развития, которую наш герой понять ниасилил или промежуточный вариант рефакторинга старой талелки макарон), то "не было времени" — очень гнилая отмаза. Стопроцентный индикатор рук из жопы, когда даже при наличии времени код все равно получается с запахом.
Здравствуйте, nen777w, Вы писали: N>Открываю код и вижу откровенную кашку-какашку, или другими словами говнокод... N>Мне к этой какашке надо прикрутить кой чего своего
инкапсуляция — одна из основ ООП. Меня, например, совершенно не волнуют внутренности кода который я собираюсь использовать. меня интересует только его интерфейс. я не сомневаюсь например что имплементация винапи это аццкое кумарное месиво гавна, но какая разница, если оно работает как задокументировано? зачем лезть и тратить свое время на бесполезную работу? вы думаете что можете сделать лучше? так и тот кто писал тот код, тоже наверняка считает, что он пишет лучше вас.
N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Сейчас дрючить уже поздно и продуктивно. Лучше разобраться как такой код попал в проект. Кто делал code review, кто писал тесты, и т.д. Сделайте так, чтобы в будущем эта ситуация не повторялась и заработаете себе гораздо больше бонусов к карьере, чем если будете брюзжать и тащить все на себе.
Здравствуйте, nen777w, Вы писали:
HN>>А чем не нравится enum ошибок? N>enum нравится. не нравится то что некоторые коды ошибок в этом enum объявленны для наверно... хз чего вообще. т.е. их реально не используют.
Скорее всего в процессе N-го переписывания, какие-то коды перестали использоваться, из енума забыли убрать или просто на всякий случай оставили, вдруг опять понадобятся.
Во проблему нашёл. Тебе несколько байт в исходниках жалко?
Здравствуйте, nen777w, Вы писали:
N>Теперь вот понадобилось прикрутить кой чего в другой части к которой Я дела не имел, в том что понаписывали другие "орлы". N>Открываю код и вижу откровенную кашку-какашку, или другими словами говнокод... N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Вздрючить, однозначно!
Прямо так и спроси у орлов: "Орлы мои, сколько я буду за вами подтирать? Нафига такой говнокод плодить?"
Здравствуйте, nen777w, Вы писали:
cli>>Класс не наследуется? N>удивительно да? N>класс занимается экспортом неких данных из БД в XML, а в другом файле в MianFrame.cpp (приложение гуёвое) существет такой же экспорт, просто с небольшим отличием! классно, не правда ли?
Думаю, стоит спросить у человека который этот код написал почему именно так. По идее он мог планировать унаследовать один от другого, а времени как всегда не хватило.
Здравствуйте, alpha21264, Вы писали:
A>И вообще... Тебе сколько лет? Яйца курицу не учат, знаешь ли
Фигасе, а ты тот самый какакодер? Скандалы, интриги, расследования?
Здравствуйте, nen777w, Вы писали:
N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Чтобы такого не было, необходимо периодически проводить код-ревью.
Умалчивать не стоит. Во-первых, сам можешь чего-то недоглядеть.
Во-вторых, если не будет такого обмена опытом, то качество кода будет оставаться приблизительно на одном и том же уровне.
Главное не начинай так: "Я тут у тебя в коде порылся... Представляешь, тут столько г***?!".
Будь максимально дипломатичен.
12.05.2011 19:26, nen777w пишет:
> > решил что молча пока что перепишу. дальше если меня будут носом тыкать в > этот проект буду бузить, и устраивать вздрючку.
Ну и дурак будешь. Таким образом, ты просто будешь один за всех все
писать, а зарплаты повышать будут остальным.
А бузить начнешь, еще и косится на тебя будут.
Если на вашей конторе начальство набрало столько безграмотных, то они
этому начальству зачем-то нужны.
Так что, лучшее для тебя, это сделать только то, что просят, а если
вклиниться в тот код не получается, лучше так и скажи начальству, что
там код очень сложный, у меня не получается, пусть лучше тот, кто писал,
то и добавляет функциональность.
Соответственно начальство тебе даст задачу другую, которую ты в срок
сделаешь и вытрясешь себе повышение.
13.05.2011 14:53, blackhearted пишет:
> > Интересно, а хоть кто-то конгда-то реально говорил такое? Мол, код > слишком сложный, я не разбираюсь.
Я говорил и не раз. Особенно, когда чей-то говнокод подсовывали.
> > Как реагировали?
Расстраивались. Облом-с выходил. Потом успокаивались. Кушать-то манагеры
тоже хотят.
Здравствуйте, nen777w, Вы писали:
N>>>с какогота х-ра виртуальным деструктором (пустым) cli>>Класс не наследуется? N>удивительно да?
вы всё ещё на 4004 работаете? знаете, недавно уже 8-разрядные процессоры появились...
виртуальный деструктор — это правило хорошего тона. как раз на тот случай, если класс будет наследоваться. считать это хорошим тоном или нет — ваше дело, а вот обижаться на человека что он следует другим стандартам кодирования — это признак отсутствия опыта командной работы
Здравствуйте, Философ, Вы писали: Ф>Да, это интересно! Как-то раньше даже не подозревал, что крутые перцы считают ниже своего достоинства занятие гуем. И да, это пожалуй критерий — таким нехитрым способом можно вычислить крутого перца.
это интересно было лет 30 назад, дедуля. сейчас уже все написано. будущее за GPGPU. нечего время свое тратить на всякую шнягу.
Здравствуйте, nen777w, Вы писали:
N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Вздрючка — всегда плохо. Переписывание — почти всегда плохо. Переписывать надо тогда, когда есть объективная причина для этого (тормозит, нельзя добавить нужный функционал, падает, зависает и т.п.) Эстетические критерии идут лесом, особенно если продукт активно кем-то используется.
У меня иногда возникает желание сесть и переписать EMF & GMF но здравый смысл берет верх
Здравствуйте, Vzhyk, Вы писали:
V>12.05.2011 19:07, nen777w пишет:
>> >> Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку? V>Когда будешь устраивать вздрючку не забывай здесь писать, по крайней V>мере я попкорном запасаюсь.
не.. ну как вам это... класс частью открытых (самизнаетедлячего) частью закрытых членов, с какогота х-ра виртуальным деструктором (пустым), с одной единственной не виртуальной функцией, и конечно же!!! те мемберы котрые в классе инициализируются и используются в этой самой функции, потому как левая пятка писавшего это чудо диктует что локальные переменные нынче вышли из моды. + enum из кодов ошибок этой саммой функции часть которых объявленна просто для фонаря... или с хитрым замыслом оставить о себе память?
решил что молча пока что перепишу. дальше если меня будут носом тыкать в этот проект буду бузить, и устраивать вздрючку.
Здравствуйте, cli, Вы писали:
cli>Здравствуйте, nen777w, Вы писали:
N>>с какогота х-ра виртуальным деструктором (пустым)
cli>Открытым, закрытым?
открытым конечно! cli>Класс не наследуется?
удивительно да?
более того если брать по логике — класс занимается экспортом неких данных из БД в XML, а в другом файле в MianFrame.cpp (приложение гуёвое) существет такой же экспорт, просто с небольшим отличием! классно, не правда ли?
Более того!!! как оказалось класс который готовит данные для экспорта шоб вы думали.... ? Ага! Может показать MessageBox! Во как!
Здравствуйте, HolyNick, Вы писали:
HN>А чем не нравится enum ошибок?
enum нравится. не нравится то что некоторые коды ошибок в этом enum объявленны для наверно... хз чего вообще. т.е. их реально не используют.
короче пойду Я наверно сейчас домой, а завтра утричком молча перебарабаню эту какашку. сори за пост... нужно было выпустить пар.
Здравствуйте, denisko, Вы писали:
D>Здравствуйте, IT, Вы писали:
IT>>Здравствуйте, nen777w, Вы писали:
N>>>Я N>>>Я N>>>Я N>>>Я... Я
IT>>Это ты непроизвольно шифт задеваешь, когда 'я' набираешь или что-то религиозное? D>Понимаешь, Д' Артаньян пишется с большой буквы, даже с двух больших букв.
ха-ха-ха
На самом деле уже спрашивали, отвечаю ещё раз — мне так нравится. Вас это беспокоит, хотите об этом поговорить?
Здравствуйте, denisko, Вы писали:
D>Здравствуйте, alpha21264, Вы писали:
A>>Здравствуйте, denisko, Вы писали:
D>>>Здравствуйте, alpha21264, Вы писали:
A>>>>И вообще... Тебе сколько лет? Яйца курицу не учат, знаешь ли D>>>Фигасе, а ты тот самый какакодер? Скандалы, интриги, расследования?
A>>Кино посмотри. "День радио". A>>"Ты че? половину бака слил?!!! Предупреждать надо!!! Я вторую половину слил..."
A>>К стати, а тебе сколько лет? D>Для атоса слишком много, а для графа де ла фер слишком мало. А ты с какой целью интересуешься?
Ну... Хочу навык усовершенствовать... Есть такая наука — психолингвистика,
которая гласит, что по тому что человек говорит (пишет) про него много чего сказать можно.
По твоему сообщению выходит что тебе где-то 22-25 лет. Угадал?
N>>На самом деле уже спрашивали, отвечаю ещё раз — мне так нравится. Вас это беспокоит, хотите об этом поговорить? IT>Да.
Хорошо. Тогда на этом и закончим.
Здравствуйте, alpha21264, Вы писали:
A>>>К стати, а тебе сколько лет? D>>Для атоса слишком много, а для графа де ла фер слишком мало. А ты с какой целью интересуешься?
A>Ну... Хочу навык усовершенствовать... Есть такая наука — психолингвистика, A>которая гласит, что по тому что человек говорит (пишет) про него много чего сказать можно. A>По твоему сообщению выходит что тебе где-то 22-25 лет. Угадал?
N>На самом деле уже спрашивали, отвечаю ещё раз — мне так нравится. Вас это беспокоит, хотите об этом поговорить?
Нет, тысяча чертей! Но я смеюсь с каждой такой канальи.
Здравствуйте, nen777w, Вы писали:
N>не.. ну как вам это... класс частью открытых (самизнаетедлячего) частью закрытых членов, с какогота х-ра виртуальным деструктором (пустым), с одной единственной не виртуальной функцией, и конечно же!!! те мемберы котрые в классе инициализируются и используются в этой самой функции, потому как левая пятка писавшего это чудо диктует что локальные переменные нынче вышли из моды. + enum из кодов ошибок этой саммой функции часть которых объявленна просто для фонаря... или с хитрым замыслом оставить о себе память?
Постепенно приводить в нормальный вид. Зато это всё работает и неплохо оттетстировано. Если это не так — то тогда зачем этот код вообще нужен.
А причины, почему код такой, могли быть разные: когда писал опыта ещё не было, он может ещё студентом подрабатывал. А возможно надо было что-то быстро налабать. И кстати, не факт, что этот язык у него основной.
Здравствуйте, зиг, Вы писали:
зиг>я наоборот ненавижу — кто-нибудь что-то увидит, решит что это я от тупости написала, не спросит зачем я это сделала, и молча удалит. потом ругаешься с человеком и ролбэкаешь
а всего-то надо внедрить в процесс код ревью и никаких истерек не будет.
V>Так что, лучшее для тебя, это сделать только то, что просят, а если V>вклиниться в тот код не получается, лучше так и скажи начальству, что V>там код очень сложный, у меня не получается, пусть лучше тот, кто писал, V>то и добавляет функциональность. V>Соответственно начальство тебе даст задачу другую, которую ты в срок V>сделаешь и вытрясешь себе повышение.
Интересно, а хоть кто-то конгда-то реально говорил такое? Мол, код слишком сложный, я не разбираюсь.
Я имею в виду разработчиков выше junior уровня.
Или у вас везде идеальный код и никаких костылей нет?
Может кто-то из менеджеров такое слышал от, например, senior developer?
Здравствуйте, nen777w, Вы писали:
N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
короче так как вы крутая контора, сто пудов у вас весь код лежит в версионном хранилище.
далее, ищете того "орла" который закинул эту какашку. Затем получаете ВСЕ коды этого "орла" и
анализируете их. Далее станет понятно стоит вздрючить или нет.
Может правда, человек делал впопыхах временный костыль. А может перманентно так пишет код.
Я так кстати в своё время обнаружил кто отпустил в мою сторону в виде комментария ничем не обоснованный матерный
пасквиль...гы гы, оказался мой тим лид — гнилушка. Привычка у него такая была, увидит код с которым не согласен — сразу писать с матерными словечками.
Надо было в морду дать, я решил что слишком много чести и увольнулся.
Я знаю, как управлять Вселенной. И скажите, зачем же мне бежать за миллионом?!(c)
S>Я так кстати в своё время обнаружил кто отпустил в мою сторону в виде комментария ничем не обоснованный матерный S>пасквиль...гы гы, оказался мой тим лид — гнилушка. Привычка у него такая была, увидит код с которым не согласен — сразу писать с матерными словечками. S>Надо было в морду дать, я решил что слишком много чести и увольнулся.
вообще тут аккуратнее надо быть blame команда показывает последнего менявшего данную строку, но это изменение могло быть, скажем, перемещением кода в другое место или чем-то таким же безобидным.
А ты сразу по морде и увольняться..
Здравствуйте, __kot2, Вы писали:
__>Здравствуйте, nen777w, Вы писали: N>>Открываю код и вижу откровенную кашку-какашку, или другими словами говнокод... N>>Мне к этой какашке надо прикрутить кой чего своего __>Меня, например, совершенно не волнуют внутренности кода который я собираюсь использовать.зачем лезть и тратить свое время на бесполезную работу?
[qute]
Модульность это хорошо, и меня совершенно не волнует то, как работает модуль, если он работает. Функции это хорошо, и меня совершенно не волнует то, как работает функция, если она работает так как описано в документации. Меня совершенно не волнуют внутренности кода который я собираюсь использовать.
[/qute]
В каком месте сдесь ООП?
Всё сказанное выше — личное мнение, если не указано обратное.
Для этого нужно изменить код контрола, в частности, добавитьнужный функционал.
Изменить код модели, в частности, добавить нужный функционал.
[добавить] — это именно то, о чем писал ТС.
Однако, добавить нужный функционал частенько не получается: структура кода не позволят, нужно немного изменить логику работы кода (пока не меняя функционал), нужно изменить структуру кода.
(То, что стоит после нужно лежит в области определения слова Рефакторинг.)
И только потом писать нужную фичу.
Всё сказанное выше — личное мнение, если не указано обратное.
Здравствуйте, Философ, Вы писали: Ф>Здравствуйте, __kot2, Вы писали: Ф>Бывает, что на контрол нужно добавить виджет.
свят-свят (перекрещиваюсь), открестился я уже от всякой гуйни, ни дай бог опять к ней вернуться (три раза сплевываю через плечо).
Здравствуйте, __kot2, Вы писали:
__>Здравствуйте, Философ, Вы писали: Ф>>Здравствуйте, __kot2, Вы писали: Ф>>Бывает, что на контрол нужно добавить виджет. __>свят-свят (перекрещиваюсь), открестился я уже от всякой гуйни, ни дай бог опять к ней вернуться (три раза сплевываю через плечо).
Что, слишком сложно?
Всё сказанное выше — личное мнение, если не указано обратное.
Здравствуйте, nen777w, Вы писали:
N>Во общем есть у нас проект, внутренний для заказчика. Пишем уже версию 3. N>Я пока с начала проекта делал адаптацию к 2008-й студии, потом занимался написанием всякого разного рода вспомогательных библиотек. N>Теперь вот понадобилось прикрутить кой чего в другой части к которой Я дела не имел, в том что понаписывали другие "орлы". N>Открываю код и вижу откровенную кашку-какашку, или другими словами говнокод... N>В некоторых местах реально хуже того что Я встречал у индусов, (они у нас тоже ошиваются). N>Мне к этой какашке надо прикрутить кой чего своего, и теперь дилема, переписывать за ними всёравно нужно будет, код который уже есть как Я уже сказал какашка, реально зло берёт когда видишь это, отношения c коллегами тоже портить не хочется. N>Даже если сказать что это г.. нужно переписать переписывать это буду Я (специфика проекта такая). По натуре вроде чел Я не конфликтный, как мне кажется, если это конечно лично меня и моих интересов не касается.
N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Зачем сразу дрючить? Поговори. Если по нормальному всё будет. То уладите. Нет покажи начальнику и спроси с какой стороны к этой кучке гавна привентить свои фекалии чтобы видел масштаб бедствия.
Здравствуйте, alpha21264, Вы писали:
A>Здравствуйте, nen777w, Вы писали:
N>>решил что молча пока что перепишу. дальше если меня будут носом тыкать в этот проект буду бузить, и устраивать вздрючку.
A>Вот если ты так сделаешь, то тебя ВЗДРЮЧАТ. И правильно сделают. A>И вообще... Тебе сколько лет? Яйца курицу не учат, знаешь ли
У нас такое в порядке вещей. Нанимают вчерашнего студента. ПШП ваятеля. который узнаёт что такое ява. И с криками ФСЁ ГАВНО. Начинает переписывать,проект. Под дружные сюсюканья начальников.
Здравствуйте, Философ, Вы писали:
Ф>Здравствуйте, __kot2, Вы писали:
__>>Здравствуйте, Философ, Вы писали: Ф>>>Здравствуйте, __kot2, Вы писали: Ф>>>Бывает, что на контрол нужно добавить виджет. __>>свят-свят (перекрещиваюсь), открестился я уже от всякой гуйни, ни дай бог опять к ней вернуться (три раза сплевываю через плечо).
Ф>Что, слишком сложно?
не сложнее чем туалеты чистить. никто этим заниматься не хочет. на буй обычно студентов посылают для зарабатывания экспириенс пойнтов.
Здравствуйте, __kot2, Вы писали:
__>Здравствуйте, Философ, Вы писали:
Ф>>Что, слишком сложно? __>не сложнее чем туалеты чистить. никто этим заниматься не хочет. на буй обычно студентов посылают для зарабатывания экспириенс пойнтов.
Да, это интересно! Как-то раньше даже не подозревал, что крутые перцы считают ниже своего достоинства занятие гуем. И да, это пожалуй критерий — таким нехитрым способом можно вычислить крутого перца.
Всё сказанное выше — личное мнение, если не указано обратное.
BZ>вы всё ещё на 4004 работаете? знаете, недавно уже 8-разрядные процессоры появились...
BZ>виртуальный деструктор — это правило хорошего тона. как раз на тот случай, если класс будет наследоваться. считать это хорошим тоном или нет — ваше дело, а вот обижаться на человека что он следует другим стандартам кодирования — это признак отсутствия опыта командной работы
Там если вы читали не только с виртуальными деструкторами проблема. Там вообще проблема, одна сплошная. Ладно хрен с ними.
Ф>>Что, слишком сложно? __>не сложнее чем туалеты чистить. никто этим заниматься не хочет. на буй обычно студентов посылают для зарабатывания экспириенс пойнтов.
Вот вот... мне вот пришлось, как раз за студентами прибирать.
Но Я поступил по другому.
Первые две простыни Я вычистил и переписал, а глядя на 3-ю просто забил, реально нервы портить нафик надо, дописал туда что мне надо и так и оставил вонять.
Потому как если это никому нафиг не нужно то с чего бы это стало нужно мне. Афтар в зоне досягаемости, так что это его проблемы.
N>>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку? S>короче так как вы крутая контора
С каких это пор Luxoft крутая контора?
S>, сто пудов у вас весь код лежит в версионном хранилище. S>далее, ищете того "орла" который закинул эту какашку. Затем получаете ВСЕ коды этого "орла" и S>анализируете их.
Вот реально заняться больше нечем. Посмотреть можно разве что только что бы в КУ набросать.
S>Далее станет понятно стоит вздрючить или нет. S>Может правда, человек делал впопыхах временный костыль. А может перманентно так пишет код.
У меня нервы вчера сдали. Потом когда вышел продышаться решил что если это нафиг до этого никому не нужно было, то нафига это мне.
У меня есть свои собственные проекты. Там Я пишу код как нужно. А работа это работа.
Здравствуйте, nen777w, Вы писали:
N>С каких это пор Luxoft крутая контора?
так люксофт вроде всегда гордился тем что у них процесс выстроен по самому высокому уровню, нет?
и если да, то как могла такая кака попасть в головную ветку?
N>У меня нервы вчера сдали.
я на текущем месте со столькими тоннами говнокода встретился что если бы принимал близко к сердцу то уже бы давно в ящик сыграл от разрыва мозжечка.
думаю это усё не стоит наших нервов
Я знаю, как управлять Вселенной. И скажите, зачем же мне бежать за миллионом?!(c)
Здравствуйте, sumson, Вы писали:
S>Здравствуйте, nen777w, Вы писали:
N>>С каких это пор Luxoft крутая контора?
S>так люксофт вроде всегда гордился тем что у них процесс выстроен по самому высокому уровню, нет? S>и если да, то как могла такая кака попасть в головную ветку?
У люксофта это идивидуально от проекта к проекте, у Одесского люксофта это очень идивидуально. Долго рассказывать почему, так сложилось со временем.
N>>У меня нервы вчера сдали. S>я на текущем месте со столькими тоннами говнокода встретился что если бы принимал близко к сердцу то уже бы давно в ящик сыграл от разрыва мозжечка. S>думаю это усё не стоит наших нервов
Здравствуйте, nen777w, Вы писали:
N>Во общем есть у нас проект, внутренний для заказчика. Пишем уже версию 3. N>Я пока с начала проекта делал адаптацию к 2008-й студии, потом занимался написанием всякого разного рода вспомогательных библиотек. N>Теперь вот понадобилось прикрутить кой чего в другой части к которой Я дела не имел, в том что понаписывали другие "орлы". N>Открываю код и вижу откровенную кашку-какашку, или другими словами говнокод... N>В некоторых местах реально хуже того что Я встречал у индусов, (они у нас тоже ошиваются). N>Мне к этой какашке надо прикрутить кой чего своего, и теперь дилема, переписывать за ними всёравно нужно будет, код который уже есть как Я уже сказал какашка, реально зло берёт когда видишь это, отношения c коллегами тоже портить не хочется. N>Даже если сказать что это г.. нужно переписать переписывать это буду Я (специфика проекта такая). По натуре вроде чел Я не конфликтный, как мне кажется, если это конечно лично меня и моих интересов не касается.
N>Чо делать? Пойти спустить пар и молча переписать или устроить вздрючку?
Дали мне код одного китайца, постоянно исключения вылетали, и получалось я виноват, типа GUI не пашет. Взял поставил вес код китайца в try/catch и как тока ошибка — сообщение типа невронная сеть китайца не пашет. И все, китаец пусть исправляет свой код.
А вообще чужие какашки чистить хуже нет, лучше не трогать.
М>Он, при помощи М>дебагера, отследит место, где статическая переменная приняла значение -1 М>вместо правильного 0, и решительным движением заведет рядом вторую М>переменную с правильным значением.
И для доступа к ним будет написан метод, который начнёт работать с двумя переменными вместо одной.
Потому и говорят, что ООП — нагромождение костылей. И что число взаимосвязей в такой программе растёт по гиперболической кривой, плавно переходящей в экспоненту.
Так сокрытие данных же?
Или вы так давно пишете на ФЯ, без указателей и переменных общего пользования, что даже не помните, откуда берётся говнокод?
Он происходит от данных. Отлитых в гранит и незыблемо покоящихся на месте.
А современное программирование — напоминает диснеевский мультик "Белоснежка и семь Гномов", где главная героиня изображает из себя Примадонну и ни хрена же не делает, а семеро козлов вокруг неё прыгают и бегают (даже без выходных).
Здравствуйте, nen777w, Вы писали:
N>с какогота х-ра виртуальным деструктором (пустым), с одной единственной не виртуальной функцией, и конечно же!!!
Так виртуальный деструктор это нормально. Вот если бы не было других виртуальных функций, то можно было бы и поэкономить на спичках. А так какая разница.
Если человек пишет плохой код, то пусть он лучше ВСЕГДА использует виртуальные деструкторы. Никаких исключений.
Здравствуйте, BulatZiganshin, Вы писали:
BZ>Здравствуйте, nen777w, Вы писали:
N>>>>с какогота х-ра виртуальным деструктором (пустым) cli>>>Класс не наследуется? N>>удивительно да?
BZ>вы всё ещё на 4004 работаете? знаете, недавно уже 8-разрядные процессоры появились...
BZ>виртуальный деструктор — это правило хорошего тона. как раз на тот случай, если класс будет наследоваться. считать это хорошим тоном или нет — ваше дело, а вот обижаться на человека что он следует другим стандартам кодирования — это признак отсутствия опыта командной работы
а знаете, на i586+ отлично работает джава и сишарп
// sarcasm mode off
есть правило — "не писать лишнего".
"virtual" это не просто слово которое можно приписать к любой функции. оно имеет вполне конкретные причины для использования —
1. возможность полиморфного вызова
2. возможность использования dynamic_cast
3. форсированное инстанцирование шаблонов
4. ???
профессионалы это знают, и когда они видят слово "virtual", они ожидают что оно было применено вследствие одной из причин из списка выше
class Foo { public: virtual ~Foo() {} };
означает то что Foo не final и что где-то будет "delete foo;" (в т.ч. внутри "smart_ptr<Foo>")
если это не так, то это вызывает недоверие к коду, создается впечатление, что тот кто писал код не знает что он пишет, возможно далее в коде будут другие странные места.
если стандарт кодирования говорит, что надо писать код, который вызывает удивление у людей читающих код, то это плохой стандарт кодирования
Здравствуйте, IT, Вы писали:
IT>Это ты непроизвольно шифт задеваешь, когда 'я' набираешь или что-то религиозное?
На самом деле, безотносительно Фримена, это — безотказный и очень простой старый-добрый способ протроллить практически любой социум. Эльфинг, кстати, тоже возможен. Достаточно каждое сообщение к Тебе адресовывать именно так