Люди, пишушие код....

Все, что вы хотели знать о программизме, но боялись спросить.
Аватара пользователя
El Comandante
Маньяк
Сообщения: 1124
Зарегистрирован: 31 авг 2004, 15:16
Откуда: VanКУver, BC
Контактная информация:

Люди, пишушие код....

Сообщение El Comandante »

сабж.. скажите, в этой стране осталять в коде комментарии - это мегащедрость или что??? что по этому поводу говорит профессиональная этика? (больное)
Аватара пользователя
Проф. Преображенский
Графоман
Сообщения: 20276
Зарегистрирован: 08 ноя 2006, 11:10

Re: Люди, пишушие код....

Сообщение Проф. Преображенский »

El Comandante писал(а):сабж.. скажите, в этой стране осталять в коде комментарии - это мегащедрость или что??? что по этому поводу говорит профессиональная этика? (больное)
При чем тут страна? Давай уж сразу континент! :wink:
Судя по контексту, их тебе не оставили. Ну и ты не оставляй! :lol: Зачем нарушать сложившиеся традиции? :wink:
Аватара пользователя
Ursego
Пользователь
Сообщения: 66
Зарегистрирован: 19 май 2005, 12:42
Откуда: Toronto

Сообщение Ursego »

Оставляй для себя, будь хоть немного эгоистом. Вспоминается один оракловский SQL-файл: несколько скринов комментариев и одна строчка кода внизу.
Аватара пользователя
Stanislav
Mr. Minority Report
Сообщения: 45207
Зарегистрирован: 19 окт 2005, 16:33
Откуда: Moscow - Richmond - New Wesт - Burnaby - PoCo

Сообщение Stanislav »

Я всегда оставляю ровно столько, чтобы самому быстренько вспомнить, что я имел в виду (бывают сложнонавороченные алгоритмы) :-)
а так вообще код самоочевиден :-)
Аватара пользователя
Marmot
Графоман
Сообщения: 39279
Зарегистрирован: 17 фев 2003, 17:58
Откуда: Caulfeild
Контактная информация:

Re: Люди, пишушие код....

Сообщение Marmot »

El Comandante писал(а):сабж.. скажите, в этой стране осталять в коде комментарии - это мегащедрость или что??? что по этому поводу говорит профессиональная этика? (больное)
Профессиональная этика разрешает иметь полностью недокументированный код.
Это нормально, посмотрите например в код многих успешных open-source проектов.
По моим наблюдениям и личному опыту, коэффициент корреляции между качеством кода и количеством комментатиев равен нулю.
Я лично, предпочитаю self-documented code с правильным и описательными именами модулей, классов, методов и переменных.
При интенсивной иттеративной разработке комментари просто не успевают за изменениями в коде. Легче делать рефакторинг имён, IMO.
Zy
Маньяк
Сообщения: 4706
Зарегистрирован: 20 янв 2005, 19:11

Сообщение Zy »

По-моему, документировать код нет никакого смысла. Разве что на это отпускают реальные деньги, и это делает не программист, который его писал, иначе эти комментарии скажут немного.

Надо иметь sequence diagramm'ы, особенно если приложение построенно на интерфейсах.

Если код написан правильно - то, с учетом понимания общей картины, там будет все понятно. Если код написан плохо - то и документация не сильно спасет.
Аватара пользователя
Earl Grey
Маньяк
Сообщения: 2893
Зарегистрирован: 22 фев 2005, 15:07

Сообщение Earl Grey »

Я обычно помещаю общие структурные комментарии (так или иначе они появляются до того как куски получают детальную имплементацию).

Ну и обязательно всякие неочевидные вещи, типа

* вот здесь мы используем workarround потому что ...
* слева от "=" индекс i+1 (а не i, как справа) потому что ...
* всякие TBD

Ну и, конечно, селфдескриптив имена!
Аватара пользователя
ajkj3em
Маньяк
Сообщения: 2063
Зарегистрирован: 12 ноя 2006, 06:53

Сообщение ajkj3em »

Уникурсал Уникурсалыч писал(а):Ну и, конечно, селфдескриптив имена!

Код: Выделить всё

int a_loop_counter_that_is_incremented_by_1_comma_sometimes_by_2_or_4_comma_but_never_by_3;
:)

была байка про то как какие-то вояки писали что-то там на фортране (по-моему) и у них компилятор валился с совершенно непонятной ошибкой. код они показывать не хотели, поэтому заняло прилично времени выяснить, что они буквально восприняли строчку в документации, где было написано, что мол длина имен переменных неограничена. ну ясный пень, что лимит был и они его превысили. лимит однако был 4096 символов.
Аватара пользователя
El Comandante
Маньяк
Сообщения: 1124
Зарегистрирован: 31 авг 2004, 15:16
Откуда: VanКУver, BC
Контактная информация:

Сообщение El Comandante »

Я немного перефразирую вопрос. Я имел в виду, в бОльшей степени, корпоративную культуру а именно привычку оставлять после себя хоть сколько нибудь читабельную документацию ( скажем по русски -"пояснительные записки"). Софт не есть конечный продукт компании сам по себе, речь идет о внутренней документации ( конфиденшл)

********* тут вырезал******
Последний раз редактировалось El Comandante 28 дек 2005, 14:13, всего редактировалось 1 раз.
Аватара пользователя
Marmot
Графоман
Сообщения: 39279
Зарегистрирован: 17 фев 2003, 17:58
Откуда: Caulfeild
Контактная информация:

Сообщение Marmot »

El Comandante писал(а):Почему спросил - мне кажется у китайцев (в тч бананов) генетически заложена выживаемость ...
А у русских (украинцев, евреев, etc) значит генетически заложена вымираемость, так? :twisted:

Ты уверен, что туда попал, а то мы тут о программировании говорим, а ты о китайцах.
Понаехали тут, расисты всякие... :evil:
Аватара пользователя
El Comandante
Маньяк
Сообщения: 1124
Зарегистрирован: 31 авг 2004, 15:16
Откуда: VanКУver, BC
Контактная информация:

Сообщение El Comandante »

А у русских (украинцев, евреев, etc) значит генетически заложена вымираемость, так?

Ты уверен, что туда попал, а то мы тут о программировании говорим, а ты о китайцах.
Понаехали тут, расисты всякие...
а что так нервно? Дело не в китайцах. я делюсь своими наблюдениями, не более того.
А у "русских (украинцев, евреев, etc)" в основном, не принято выжигать напалмом вокруг себя жизненное пространсто - так, на всякий случай. Я, наверное, сильно обощаю. Все - ИМХО
Аватара пользователя
El Comandante
Маньяк
Сообщения: 1124
Зарегистрирован: 31 авг 2004, 15:16
Откуда: VanКУver, BC
Контактная информация:

Сообщение El Comandante »

ОК, по сображениям политкорректности убрал упоминание о китайцах.
( видимо, некоторые после слова "китайцы" дальнейший текст не воспринимают) :roll: Публично заявляю, что не имею ничего против них в целом.
Вопрос (третья попытка) - есть ли общие правила (традиции и тп) ведения внутренней проректной документации. Не отраслевые стандарты, а именно - общепринятые правила???
Vovchik
Маньяк
Сообщения: 2841
Зарегистрирован: 20 фев 2003, 09:15
Откуда: Vancouver

Сообщение Vovchik »

El Comandante писал(а):ОК, по сображениям политкорректности убрал упоминание о китайцах.
( видимо, некоторые после слова "китайцы" дальнейший текст не воспринимают) :roll: Публично заявляю, что не имею ничего против них в целом.
Вопрос (третья попытка) - есть ли общие правила (традиции и тп) ведения внутренней проректной документации. Не отраслевые стандарты, а именно - общепринятые правила???
Нету. Ввиду полного осутствия документации как таковой. Коментарии тут пишут тока юниоры - и тока в течение первого года на первой работе программером.
vg
Маньяк
Сообщения: 2803
Зарегистрирован: 29 май 2003, 22:29
Откуда: Магадан - Миссиссага

Сообщение vg »

Скажу, что все и так знают.
1) То, что в одном случае полезно, в другом, как минимум трата времени, особенно, если код не очень. Так, что на сколько комментировать код - дело конкретного проекта, конкретной конторы и калче.
2) Почти во всех книжках-самоучителях по программированию говорится о полезности этого дела.
3) Некоторые комментарии могум быть полезными (в минимальном кол-ве) и для понятности и структурирования кода, где это надо. Если комент используется в этом ключе, то я предпочитаю, типа

ораыоалвы;
ывадлыдаод;


//
// То вверху и внизу - код
//

dsfsf; gfldd;gd ldfgdg;
lsdk;skf ;ldsksfl sdlkslf;


4) Пример, когда IDE позволяет по максимуму использовать коментарии, XML-подобные форматирования, #region ... #endregion и другие средства структурирования, включая возможности "разворачивание" и "сворачивание" текста кода - очень удобно, особено в языках, почти "чисто ООП" (там кода не меряно может быть в одном файле и по разному поводу) - это MS Visual Studio IDE.

5) Работал над проектом здесь в Канаде. Там "один файл" начинал один, вставлял другой, ремонтировал третий кулибин. Конечно, VSS помогает, но когда он оказывается бессильным перед человеческой глупостью - комментарии могут помочь.

6) Конечно должен быть разумный минимум пояснений и украшений.
Аватара пользователя
Earl Grey
Маньяк
Сообщения: 2893
Зарегистрирован: 22 фев 2005, 15:07

Сообщение Earl Grey »

Vovchik писал(а):Коментарии тут пишут тока юниоры - и тока в течение первого года на первой работе программером.
Не обобщай!

У нас пишут спецификации разного уровня; data flow diagrams; installation protocols; readme; Installation guides etc.

Широко применяется практика Unit testing (с использованием NUnit) , дающая заодно практические образцы использования тех или иных компонентов.

Kонечно пишут не все, но ... не обобщай.
Ответить