К чему это?

Все, что вы хотели знать о программизме, но боялись спросить.
Аватара пользователя
Kate
Мудрая свинья
Сообщения: 13981
Зарегистрирован: 06 апр 2005, 07:46
Откуда: От верблюда

К чему это?

Сообщение Kate »

Смотрю кусок кода, который написала два года назад, и думаю - какой идиот это писал? О чем я думала? Ладно-б просто баг недоглядела, но чтоб вот так всю логику СВОЮ не понять? Первый раз такое.

И че это значит? Нашло затмение? Я с тех пор поумнела? :) Как можно самому себя не понимать? Во, блин...
Аватара пользователя
Stanislav
Mr. Minority Report
Сообщения: 45331
Зарегистрирован: 19 окт 2005, 16:33
Откуда: Moscow - Richmond - New Wesт - Burnaby - PoCo

Re: К чему это?

Сообщение Stanislav »

Kate писал(а): Я с тех пор поумнела? :)
Да :D
Аватара пользователя
Kate
Мудрая свинья
Сообщения: 13981
Зарегистрирован: 06 апр 2005, 07:46
Откуда: От верблюда

Re: К чему это?

Сообщение Kate »

Stanislav писал(а):
Kate писал(а): Я с тех пор поумнела? :)
Да :D
Спасибо! :)
Аватара пользователя
dima
Житель
Сообщения: 690
Зарегистрирован: 19 фев 2003, 19:26
Откуда: Хабаровск->Toronto

Re: К чему это?

Сообщение dima »

Kate писал(а):Смотрю кусок кода, который написала два года назад, и думаю - какой идиот это писал? О чем я думала? Ладно-б просто баг недоглядела, но чтоб вот так всю логику СВОЮ не понять? Первый раз такое.

И че это значит? Нашло затмение? Я с тех пор поумнела? :) Как можно самому себя не понимать? Во, блин...
this called evolution
Аватара пользователя
Marmot
Графоман
Сообщения: 39293
Зарегистрирован: 17 фев 2003, 17:58
Откуда: Caulfeild
Контактная информация:

Re: К чему это?

Сообщение Marmot »

Kate писал(а):Смотрю кусок кода, который написала два года назад, и думаю - какой идиот это писал? О чем я думала? Ладно-б просто баг недоглядела, но чтоб вот так всю логику СВОЮ не понять? Первый раз такое.

И че это значит? Нашло затмение? Я с тех пор поумнела? :) Как можно самому себя не понимать? Во, блин...
У мня такое почти каждый день, а код всего месяцев двух от роду :)
Просто когда одновременно пишется 5-7 несильно связанных подсистем, мозг не успевает переключаться :)
Аватара пользователя
Jou-Jou
Графоман
Сообщения: 6075
Зарегистрирован: 09 июн 2005, 12:17
Откуда: Baku->Dubai->Burnaby

Re: К чему это?

Сообщение Jou-Jou »

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

Здорово помогало, когда приходилось возвращаться к коду.

И не только мне, но и другим.

А ещё - ненавидела чей-то код переделывать - вот где мучение было понять чего тот программист замыслил!... и ни одного коммента :evil: бр-р-рррр!
Rai
Маньяк
Сообщения: 1576
Зарегистрирован: 04 окт 2009, 15:23

Re: К чему это?

Сообщение Rai »

Jou-Jou писал(а):Когда я программировала (ох, давно это было!), приучила себе комменты вставлять повсюду
Я обычно в начале любого более или менее сложного модуля (ну, условно говорим) в комментариях описываю, что этот модуль вообще делает, какие ограничения на входе/выходе, каков общий алгоритм действия. И потом по ходу написания указываю, что вот эта функция реализует такую-то часть алгоритма, а эта -- такую.
Буквально на днях возвращался к коду пятилетней давности -- вообще никаких проблем. Прочитал, понял. Посмеялся, конечно, над кривизной реализации (сейчас бы все иначе сделал), но логика была понятна сразу после чтения комментариев.

Ну и жесткий code style помогает, конечно.
Аватара пользователя
AlexANB
Маньяк
Сообщения: 2904
Зарегистрирован: 17 фев 2003, 18:47
Откуда: Ontario

Re: К чему это?

Сообщение AlexANB »

Jou-Jou писал(а):Когда я программировала (ох, давно это было!), приучила себе комменты вставлять повсюду, иначе через какое-то время и через какое-то количество кода уже не вспомнить было почему именно так, а не иначе :)
Я обычно не только комменты пишу, но и имена функциям и переменным даю осмысленные, "говорящие".

Никахих переменных типа "а123" !
Вместо этого всегда что-нибудь вроде "long_Arb_1_Trade_regime". Да, это длиннее, но помогает сильно.
Аватара пользователя
Stanislav
Mr. Minority Report
Сообщения: 45331
Зарегистрирован: 19 окт 2005, 16:33
Откуда: Moscow - Richmond - New Wesт - Burnaby - PoCo

Re: К чему это?

Сообщение Stanislav »

Marmot писал(а):
Kate писал(а):Смотрю кусок кода, который написала два года назад, и думаю - какой идиот это писал? О чем я думала? Ладно-б просто баг недоглядела, но чтоб вот так всю логику СВОЮ не понять? Первый раз такое.
И че это значит? Нашло затмение? Я с тех пор поумнела? :) Как можно самому себя не понимать? Во, блин...
У мня такое почти каждый день, а код всего месяцев двух от роду :)
Ну тут либо хреновый код, либо умнеешь слишком быстро... :roll:
Rai
Маньяк
Сообщения: 1576
Зарегистрирован: 04 окт 2009, 15:23

Re: К чему это?

Сообщение Rai »

AlexANB писал(а):Никахих переменных типа "а123" !
Вместо этого всегда что-нибудь вроде "long_Arb_1_Trade_regime". Да, это длиннее, но помогает сильно.
Я предпочитаю названия функций, где сначала идет глагол, а потом -- к чему относится, например:
void Add_Bomb(const float _x, const float _y);
void Update_Bombs(const float _dt);
void Render_Bombs();
//...
void Update_External_Effects(const float _dt);
Про "магические числа" лучше даже не упоминать -- злое зло :)
Аватара пользователя
Kate
Мудрая свинья
Сообщения: 13981
Зарегистрирован: 06 апр 2005, 07:46
Откуда: От верблюда

Re: К чему это?

Сообщение Kate »

Комменты хорошо конечно и по класике, но осмысленные имена переменных, процедур, методов и объектов, форматировние имеют большее значение, на мой взляд. Я коменчу каждый метод-процу + нетривиальные блоки, но имена и формат кода важнее. Не - я все понимаю, ну, то есть я свой код, как код понимаю. Я не врубаюсь в логику:) Вот что страшно. Может это раздвоение личности? Может, я в ту минуту была на Каморке?:)
Аватара пользователя
aissp
Маньяк
Сообщения: 2710
Зарегистрирован: 07 ноя 2005, 09:51

Re: К чему это?

Сообщение aissp »

бывало такое раньше когда пьяным писал.
Rai
Маньяк
Сообщения: 1576
Зарегистрирован: 04 окт 2009, 15:23

Re: К чему это?

Сообщение Rai »

aissp писал(а):бывало такое раньше когда пьяным писал.
Сейчас уже состояние значения не имеет? :)))
Rai
Маньяк
Сообщения: 1576
Зарегистрирован: 04 окт 2009, 15:23

Re: К чему это?

Сообщение Rai »

Kate писал(а):Комменты хорошо конечно и по класике, но осмысленные имена переменных
Тут простой момент -- я всегда исхожу из того, что с моим кодом, быть может, придется иметь дело другому человеку (и приходилось). Вот на этот случай и разжевываю. И код получается аккуратнее, когда думаешь, что его можешь увидеть не только ты.
Мало ли народу материлось на чужой код, который ну ни фига не понятен, даже при безупречном code style? При более или менее навернутой системе пройдет не один день, пока ниточки распутаешь.
Аватара пользователя
CdR
Графоман
Сообщения: 11245
Зарегистрирован: 11 окт 2004, 19:27
Откуда: Европа, центр, за углом направо.

Re: К чему это?

Сообщение CdR »

Вменяемые имена для функций/переменных/классов/методов/etc, аккуратное форматирование (казалось бы!?) -- и код будет не просто читабельным, а и понимабельным.
Самый злобный ньюанс, imho, это использование всяческих сокращений, unnamed functions и т.п. В чем выигрыш? Как правило -- только в компактности записи. Но новому человеку читать становится намного сложнее.
Ответить