Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.141.19.130] |
|
Страницы: (10) [1] 2 3 ... 9 10 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Я никогда не пишу комментарии к своему коду. Я считаю это занятие пустой потерей времени.
Я не люблю читать чужой код, если в нем есть комментарии. Они замедляут меня, т.к повторяют то, что написано в коде. Интересно ваше мнение. |
Сообщ.
#2
,
|
|
|
Цитата MIF @ Я никогда не пишу комментарии к своему коду. Я считаю это занятие пустой потерей времени. Больше времени потратишь, когда будешь вспоминать что там написано. Цитата MIF @ Они замедляут меня, т.к повторяют то, что написано в коде. Это неправильные комментарии. |
Сообщ.
#3
,
|
|
|
Предпочитаю комментировать, т.к. через некоторое время сложнее вникать, что там такое. Но комментарии не так, что чуть ли не на каждую строчку, а на блок кода, выполняющий какое-то логически законченное действие.
|
Сообщ.
#4
,
|
|
|
Цитата MIF @ Я никогда не пишу комментарии к своему коду. Я считаю это занятие пустой потерей времени. Да вы эгоист, батенька. Подумай о ближнем, которому, возможно придётся разбирать твои дебри. Цитата MIF @ Я не люблю читать чужой код, если в нем есть комментарии. Они замедляут меня, т.к повторяют то, что написано в коде. Ну-ну... Я думаю, надо примеры кода приводить для наглядности. Ну вот для примера тут как раз на глаза попалась функция. Как раз чужие исходники разбираю. Все комментарии удалил. Сколько надо времени, чтобы понять, что делает эта функция? int AxisData::GetPosInv( double Value ) { if ( Logarithmic ) { if ( Value == 0 ) return (int)(fabs(log10(Min))/Scale); else return (int)((log10(Max)-log10(Value))/Scale); } else return ( (int)((Max - Value)/Scale) ); } |
Сообщ.
#5
,
|
|
|
Цитата Medevic @ Цитата MIF @ Я никогда не пишу комментарии к своему коду. Я считаю это занятие пустой потерей времени. Больше времени потратишь, когда будешь вспоминать что там написано. Цитата MIF @ Они замедляут меня, т.к повторяют то, что написано в коде. Это неправильные комментарии. полностью согласна и с первым и со вторым. если комменты замедляют чтение - в топку такие комментарии. я сейчас работаю нас несколькими проектами, которые сущетсвовали уже до меня. и вот некоторые куски кода у меня просот приступы агрессии вызывают: либо нет комментов вообще, либо есть типо //это переменная типа int. длйы начала она инициилизируется на 0 int i=0; aaaaaaaaaa!!!! это как раз я и сама читать умею. а вот когда перед функцией написана строчка-две, что она (функция) делает - это толково Добавлено кстати, не только для других надо комментировать: гляньте в свой код 4-х летней давности, например. неужели все так понятно с лету? |
Сообщ.
#6
,
|
|
|
Цитата nastenka @ кстати, не только для других надо комментировать: Цитата nastenka @ гляньте в свой код 4-х летней давности, например. неужели все так понятно с лету? Мой код 4-летней давности это ваще жесть Ща ссылку кину на примерчик. Символьное дифференцирование Без комментариев там бы вообще атас был бы Добавлено Такие комментарии, конечно, излишние: tree_elem() // Конструктор структуры - присваивает начальные значения |
Сообщ.
#7
,
|
|
|
Цитата Nich @ Вернуть отмаштабированное расстояние от максимально допустимого значения. Использовать логарифмическую формулу (с исключением при входном параметер = 0) либо линейную в зависимости от значения глобальной (модульной) переменной.Сколько надо времени, чтобы понять, что делает эта функция? Сколько времени - засекать не стал, т.к. сейчас поздний вечер и я подштофе, производительность мозга невелика. Цитата nastenka @ вот когда перед функцией написана строчка-две, что она (функция) делает - это толково Имя функции должно обяснять, что она делает. Цитата nastenka @ Да. гляньте в свой код 4-х летней давности, например. неужели все так понятно с лету? |
Сообщ.
#8
,
|
|
|
Цитата MIF @ Сколько времени - засекать не стал Ну так это же ключевой момент |
Сообщ.
#9
,
|
|
|
Цитата Nich @ Ну, выложи еще кусок кода. Я завтра на работе на свежую голову прочитаю код и засеку время. Ну так это же ключевой момент Кстати, тест некорректен. Я утверждаю, что читаю код без комментов быстрее, чем код с комментариями. Выложи два куска кода одинаковой сложности, один с комментариями, другой - без них ... |
Сообщ.
#10
,
|
|
|
Я категорически ЗА комментарии в коде. За грамотные комментарии. Я еще понимаю людей, которые не используют венгерскую нотацию в именовании переменных, но код должен быть откомментирован. Элементарно перед описанием функции мне приятно видеть объяснение что эта функция делает. Это значительно упрощает поиск нужного куска кода.
А в больших проектах, над которыми трудятся несколько разработчиков, это просто незаменимо Очень распространено, например, следующее явление //++ 10.10.2005 by SeaGirl //Добавлена проверка и отображение украденных счетчиков //Согласно письму №ХХХ-ХХ от такой-то даты if CountersQuery.FieldByName('Status').AsInteger=10 then ... Иногда еще в комментариях разработчики могут обменяться впечатлениями о заказчике |
Сообщ.
#11
,
|
|
|
Цитата MIF @ Имя функции должно обяснять, что она делает. угу, и что она в каком случае возвращает - тоже имя должно делать? ну-ну |
Сообщ.
#12
,
|
|
|
я ЗА комменты, при чем грамотные
Вот неправильный Цитата а=1;//Присваиваем а 1 это правильные комменты Цитата //Проходим по всей колекции для подсчета тогото и сегото for i = 0 to object.length()-1 do ... ... loop return true; //заглушка кстати такие коменты намного ускоряют чтение кода можно пропускать целые секции... |
Сообщ.
#13
,
|
|
|
Цитата Комментировать ли код? но естественно смысловые комментарии.. не так давно пришлось писать в сжатые сроки, времени на коменты пожалел, а через месяц нужно было кое-что доработать, так в некоторых местах пришлось практически заново разбираться: зачем нужен "этот" код и что он делает так что коментарии рулят |
Сообщ.
#14
,
|
|
|
Цитата MIF @ Я не люблю читать чужой код, если в нем есть комментарии. Они замедляут меня, т.к повторяют то, что написано в коде. а если пользуешься чужой библиотекой и у тебя нет спецификации на нее а категорически за комментарии к интерфейсу любого модуля а вот к нутрянке... если писавший ее программер может ее понять без них, то это его дело я лично свой код, если не более 1000 строк, могу понять без комментариев (любой давности) дальше, конечно, тяжелее потом, смотря какого типа язык ИМХО ООП - более понятен для человека, нежели процедурный Цитата MIF @ Имя функции должно обяснять, что она делает. обязательно , как и имена переменных, и названия типов данных но вот Цитата nastenka @ и что она в каком случае возвращает действительно не всегда понятно особенно в чужом коде |
Сообщ.
#15
,
|
|
|
Про то, что возвращает функция.
Я даже знаю, что скажет скептический MIF на это. Можно ведь константами задать значения, которые может возвращать функция, дать этим константам понятные имена и вуаля. Но комментарии все равно необходимы. |