|
1 / 1 / 1
Регистрация: 13.02.2008
Сообщений: 18
|
|
Как лучше комментировать код?25.07.2008, 19:18. Показов 10718. Ответов 33
Метки нет (Все метки)
Здравствуйте. У меня есть вопросы по коментированию кода.
1. Какой язык лучше использовать для коментариев (русский или английский)? 2. Нужно ли коментировать действие каждой строки (вплоть до "I++ // увеличение значения i")? 3. Где лучше располагать коментарии: в коде или справа от кода?
0
|
|
| 25.07.2008, 19:18 | |
|
Ответы с готовыми решениями:
33
Как правильно комментировать код Как комментировать код на PHP
|
|
451 / 176 / 29
Регистрация: 12.12.2020
Сообщений: 1,367
|
|||||||||||
| 14.03.2025, 20:28 | |||||||||||
|
Надеюсь что в некрофилии не обвинят что такую тему откопал...
Я считаю что комментарии очень нужны и чем больше тем лучше. У меня прокомментирована практически каждая строчка, ну или смысловой блок. Я вообще сначала пишу словами че должна делать функция/метод, с указанием всяких нюансов и мыслей полезны, потом этот текст разбиваю на отдельные операции и уже к комментариям пишу код. Я не понимаю современной концепции что код должен комментировать сам себя. Сам себя он и так всегда комментирует, но что именно он делает в общем логике программы - вот это нужно комментировать. Отдельно добивают ораторы говорящие что если код не понятен то надо его переписать так что бы было понятно и не использовать комментарии. Причем последнее заявляется очень категорично. Я согласен лишь с часть что сложный код надо переписать на более простой Но комментарии все равно нужны ![]() Понятное дело что
Я согласен с предыдущим автором, что комментарии должны описывать логику кода в масштабах приложения. В коде даже становится проще ориентироваться, ты глазами бежишь и читаешь бегло и находишь то что надо. Причем иногда комментарии очень нужны. Современное программирование во всю использует потоки, обратные вызовы и прочую магию, код становится не линейным и отследить его иногда сложно. Нужно добавлять комментарий что вот тут мы ждем другой поток, тут мы получим данные по прерываю, а тут мы вызываем функцию, а она нам ответит через колбек. Или меняете вы запись в одной таблице, а записи в другой таблице меняются "сами" так как там foreign key. Вот как надо написать код что бы он это прокомментировал сам? Ну и каждую функцию/метод тоже подробно описать желательно, особенно если это не checkCRC, а что то более сложное с учетом каких-нить нюансов. Что касается языка, то если вы не пишите код который вы будете распространять на весь мир, то лучше использовать родной язык. Всякие check CRC можно и на английском писать, а более сложное описание с оборотами речи все же на родном лучше и пишется и читается. ЗЫ главное не лениться и менять коментарии если меняется код
0
|
|||||||||||
|
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,820
|
|||||||||||
| 15.03.2025, 12:44 | |||||||||||
1. Объяснение, почему выбрано такое решение (быстродействие, затраченная память, особенности железа, особенности пользователей, планирование дальнейшего развития кода). Эта инфа вообще никак не связана с кодом, в коде нет этих сведений. 2. Комментарии-заголовки. Они разбивают код на логические части. Отчасти связаны с кодом. 3. Некоторые сложные моменты, например, какие-то трудно воспринимаемые условия if.
0
|
|||||||||||
|
451 / 176 / 29
Регистрация: 12.12.2020
Сообщений: 1,367
|
||
| 15.03.2025, 19:02 | ||
|
Пример может немного не корректный, да, переменные надо называть так что было понятно, но иногда бывает что у нас принимаются данные, из которых мы "выдергиваем" только именно данные, без заголовков пакетов и контрольных сумм, а из этих данных выдергиваем нужные нам (например с устройcтва идет поток телеметрии, а нас интересует только данные по температуре) и получается у нас уже будут три счетчика принятых байт и будут называться они как то Received_bytes_packet, Received_bytes_data, Received_bytes_temperature и тут лучше прокомментировать кто из них кто... Вообщем я считаю что чем больше комментариев тем лучше, даже если они очевидные, то хуже не будет.
0
|
||
|
185 / 38 / 8
Регистрация: 14.04.2019
Сообщений: 238
|
|
| 15.03.2025, 22:27 | |
|
По поводу использования русского языка. После введения многобайтной кодировки
такой кошмар стал твориться, что лучше его избегать. Иначе рискуешь в любой момент увидеть кракозяблы вместо своего текста. У меня был случай, что я так и не смог понять, что произошло, что это за коды и откуда они взялись.
0
|
|
|
451 / 176 / 29
Регистрация: 12.12.2020
Сообщений: 1,367
|
|
| 16.03.2025, 00:13 | |
|
Как правило это выявляется сразу. То что все слетело, скорее всего надо было файл пересохранить в кодировке utf8, там вначале вроде два байта какие то добавляются, после этого все работает.
После введения многобайтной кодировки как раз все стало нормально, вот когда были 866, 1251 вот тогда проблемы иногда были
0
|
|
|
Модератор
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,900
|
||
| 16.03.2025, 01:20 | ||
|
0
|
||
| 07.04.2025, 17:11 | |||
Пройдет не так уж много времени, и, вероятно, Вы устанете писать примечания и придете к тем же выводам
Вместо того чтобы страдать фигней с примечаниями, гораздо лучше заняться именами переменных, ф-ций и др. На первый взгляд, все очень просто: имя подлиннее, попонятнее. Но это не так
0
|
|||
|
451 / 176 / 29
Регистрация: 12.12.2020
Сообщений: 1,367
|
||
| 07.04.2025, 20:31 | ||
|
0
|
||
| 07.04.2025, 21:06 | |||
|
Я доволен что "международный язык" - не мой родной. Англичанина корежит от "color" (без "u"), но одернуть-то нельзя. Над своим языком я бы такого издевательства не вынес. И английский подходит гораздо лучше, особенно учитывая устоявшиеся термины. Все эти "иконки", "щелкнуть мышкой", "потокобезопасность" и.т.п. просто ужасны Технический английский дисциплинирует, учит писать кратко и емко
0
|
|||
|
451 / 176 / 29
Регистрация: 12.12.2020
Сообщений: 1,367
|
|
| 09.04.2025, 15:10 | |
|
Дело в том, что комментарии пишутся не только для себя но и для других. У нас над одним проектом могут работать несколько разных разработчиков - один прошивку для плис делает, второй микроконтролер программирует, третий программу под винды пишет. И иногда есть необходимость "поделиться" кодом, чтобы человек который делает устройство "с той стороны" посмотрел что там не так, почему не работает и прочее. Да, можно описать протокол, описать все технические ньюансы, но в процессе разработки "концепция" может и измениться и проще дать ссылку на репозиторий. А тот кто, например, с плис работает, он в си может быть не бумбум, поэтому такие понятия как "код сам себя должен коментировать" тут вообще не в кассу. Там по смыслу конечно понятно что то, но когда есть комментарии то все становится понятно.
Ну и опять же многие IDE позволяют в хинтах давать описание функции и переменным, если к ним добавлены комментарии. Ну и уровень английского у всех разный и что бы не вызывать путаницу всякими receive_byte и received_byte нам и мне проще на русском общаться ![]() ЗЫ Ни к чему не призываю, написал что практикую сам, однако хочу заметить что излишне прокомментированный код поймут все, а тот который сам себя комментируют не только лишь все
0
|
|
|
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,820
|
|
| 09.04.2025, 19:44 | |
|
Самые настоящие комментарии - это про то, почему выбран именно этот алгоритм, а не другой (из-за скорости, из-за экономии памяти, из-за возможности распределения задач по ядрам). А просто повторять то, что написано в коде, это хрень собачья. нужно написать, на каком ядре исполняется некий кусок кода - это важно. А прочитать и разобрать некий код - это дело времени.
0
|
|
| 13.04.2025, 09:15 | ||
Ну вообще-то ф-ционал примечаний и доки разный, но если в Вашем проекте это устраивает - на здоровье. А может и кого-то еще устроит - но далеко не всех
0
|
||
|
451 / 176 / 29
Регистрация: 12.12.2020
Сообщений: 1,367
|
||
| 13.04.2025, 18:25 | ||
|
0
|
||
|
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,820
|
|
| 15.04.2025, 19:05 | |
|
Аналитики пишут user story перед началом разработки, техписы - раздел "Порядок действий" в РЭ - после разработки, на основе user story. Это не вся инфа, но база эксплуатационной документации.
Но комментарии кода с этим вообще не пересекаются. Иногда по ГОСТ требуют проектную документацию, и это ближе к комментариям, но тоже зачастую другое...
0
|
|
| 15.04.2025, 19:05 | |
|
Как правильно комментировать html код Комментировать код Комментировать код Комментировать код полностью Найти все натуральные числа, не превосходящие N, и делящиеся на каждую из своих цифр (комментировать код!) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|