Имя: Пароль:
1C
1С v8
Как вы вставляете комментарии в коде?
0 impulse9
 
22.11.16
09:16
Часто возникает необходимость в чужом коде вставлять свои правки. Как вы их обозначаете?

Всегда делал так:

//<Фамилия Дата>
// Описание
Исправленный текст кода
//Оригинальный текст кода
1 impulse9
 
22.11.16
09:17
// </Фамилия Дата>
2 VladZ
 
22.11.16
09:18
// Фамилия Дата
// В следующей строке вставляю пояснение (почему именно так).
3 Lama12
 
22.11.16
09:22
//ОРГ_ФИО_Дата_Номер заявки
где ОРГ - префикс организации сотрудниками которой вносится изменение
ФИО - фамилия, имя, отчество разработчика
Дата - дата внесения изменений
Номер заявки - номер заявки на разработку согласно которой вносятся изменения.
4 nordbox
 
22.11.16
09:27
Я тупо пишу // Это мои правки
а в конце
//********************************
5 torgm
 
22.11.16
09:27
Некоторых комментаров я бы убивал, у одного моего клиента
был примерно такой кусок кода

// zААd [
// Таня  20130614
// ФЕД заявка 47
// Атория [ ]
// //катеж
//+++
//Процедура СоздатьПКО() Экспорт
Функция СоздатьОплатуПлатежнойКартой() Экспорт
6 b_ru
 
22.11.16
09:34
(5) Если бы там было написано
// Запупкин Александр Алексеевич [

// Татьяна Михайловна Жожобкина 14.06.2013
// Феоктистов Евлампий Дондукеевич по заявке № 47 от 29.02.20лохматого

это на что-то бы повлияло?

Как правило если получаешь подобный код в наследство, быстро выучиваешь, что допустим ЗАД обычно писал по делу, а Таня лепила костыли, а большего и не требуется. А если код не по наследству, так недолго и выяснить что означают каждая из пометок.
7 torgm
 
22.11.16
09:51
(6) То что это все пришлось вычищать на 20 строк кода функции, 100 строк комментариев и закоментированых строк вперемешку.
8 catena
 
22.11.16
09:55
(7)У меня есть обработка. Ну не 20 строк, побольше, но объем комментариев, наверное, 1:1 к коду. Местами куски переписки вставлены, ссылки на заявки в разных базах и на почтовики. Потому что нужно знать, с какого заказчика спрашивать по каждой строчке. Работает уже четвертый год, до сих пор не рискую чистить.
9 h-sp
 
22.11.16
10:11
(8) руки таким комментаторам надо поотрывать. Комментарий должен быть кратким. Как выстрел.
10 Peltzer
 
22.11.16
10:11
Пользуюсь префиксом //++, чтобы облегчить поиск для всех разрабов в одной базе, а не искать пофамильно.
11 Peltzer
 
22.11.16
10:13
Формат такой:

//++ МРВ 22.11.2016
//Комментарий о содержании правки
//Текст, который был до правки
Текст после правки
//-- МРВ 22.11.2016
12 Jokero
 
22.11.16
10:27
//Jk++ 22.11.2016
  КостыльНомер127(ПуляДляКолена);
//Jk--

общие пояснительные комментарии о смысле жизни редко пишу, в 1С код простой, в нем и так все видно.
13 Одинесю
 
22.11.16
10:30
(0) а начало и завершение правки?
14 Мимохожий Однако
 
22.11.16
10:34
(0)посмотри как сделано в БСП. И продолжай в том же духе. Во внешних обработках я макетах создаю текстовый макет "История", в который пишу все комментарии по мере модификации обработки.
15 Timon1405
 
22.11.16
10:34
//Текст, который был до правки
остается на пару версий обновлений продакшена, потом из модуля выпиливается, история остается в хранилище, а в модуле чистый код
в остальном все примерно как у всех. используем шаблон(повешен на хоткей)
// < Добавление <?"", ДатаВремя, "ДФ=yyyy.MM.dd"> <?"", ПолноеИмяПользователя>
// <?"Комментарий">
<?>
// > Добавление <?"", ДатаВремя, "ДФ=yyyy.MM.dd"> <?"", ПолноеИмяПользователя>
16 Лефмихалыч
 
22.11.16
10:37
//<< Крафтер - 22.11.2016 - СадовскийЛМ

//>>
это для блоков кода.


Процедуры функции помечаю только сверху. То есть без закрывающего тэга и только перед объявлением.
Стараюсь внутри функций не комментить измененные строки, т.к это засоряет и обубоживет код. Когда понадобится узнать, что конкретно изменено, - есть хранилище, которое гораздо лучше покажет, чем эти комментарии
17 aka AMIGO
 
22.11.16
10:38
Кроме простых "было" и "стало" еще желательно
1. найти свои правки
2. не только найти, но и искать с определенной датой.
Второе особенно желательно, т.к. правок много, найти нужное - уже проблема.
18 newbling
 
22.11.16
10:39
//+ ФамилияИмя
// что, зачем - если может быть непонятно
// старый код
новый код
//- ФамилияИмя
19 aka AMIGO
 
22.11.16
10:39
У меня 7-ка, работает опенконф, в нём есть удобные "Авторские комментарии".. спасибо разработчикам, позаботились..
20 newbling
 
22.11.16
10:40
мне ещё ни разу не нужны были даты изменений, а постоянно на них глазеть при добавлении надоедает - ну не держатся даты в голове никак.
21 aka AMIGO
 
22.11.16
10:41
Пример авто-замены кода:
        //*ВМ@MyCompany, 26-06-2014 15:14:49
        //        ТЗСчет.КолПоСчетуЖРВ = РегЖР.СводныйОстаток(ТЗСчет.Товар,ВыбСчет,Верхний,"Количество");
        // -------- заменено на:
        ТЗСчет.КолПоСчетуЖРВ = РегЖР.СводныйОстаток(ТЗСчет.Товар,ВыбСчет, ,"Количество");
        ///ВМ@MyCompany, 26-06-2014 15:14:49
22 aka AMIGO
 
22.11.16
10:43
(20) а мне вот именно сейчас нужны, т.к. курочу обработку, сохраненную в виде внешнего отчета, потом её проблема будет вставить обратно.. правда, небольшая, но рассердит :)
23 newbling
 
22.11.16
10:45
(22) не, ясное дело, что в некоторых случаях, когда может понадобиться дата изменений, их вставлять нужно. Но с тех пор, как я срулил из франча, не пригождалась ни разу.
24 Garykom
 
гуру
22.11.16
11:21
Когда уже 1С встроит CVS (https://ru.wikipedia.org/wiki/CVS) внутрь платформы, чтобы в базе можно было историю изменений видеть конфигурации (а не только конфа поставщика, конфа бд, конфа тек).

Причем чтоб хранение в сжатом виде (для уменьшения объема) и для бинарных файлов (разных дров в макетах) по хешу проверял изменения а не дублировал в архив.
25 Вафель
 
22.11.16
11:25
(24) Так это же хранилище
26 Wirtuozzz
 
22.11.16
11:34
Сейчас пишу так:
//{Иванов И.И.
//Доп.Описание ....
//...
//Иванов И.И.}

Раньше было похоже как в (3)
27 Garykom
 
гуру
22.11.16
11:35
(25) В курсе отличная штука, предлагается то его по дефолту включать в конфе.

А комментарии в коде запретить, точнее чтобы только в хранилище они писались. Настучал коммент, нажал кнопочку и они раз и все в хранилище и привязаны к версии кода.
28 ildary
 
22.11.16
11:39
(24) в новом конфигураторе на основе Эклипса. Осталось дождаться.
29 PLUT
 
22.11.16
11:54
(19) в снегопате под 8-ку тоже есть авторский комментарий. автор постарался
30 Morkovkinator
 
22.11.16
12:02
(18) Так же.
Иногда в конце строки ставлю метки. Типа того //*1. Для поиска в тексте, но потом, как правило, удаляю.
31 mkalimulin
 
22.11.16
12:10
(0) У тебя видимо с ЧВС проблемы.
32 Это_mike
 
22.11.16
12:24
(7) борешься с лишней массой HDD ?
33 patria0muerte
 
23.11.16
03:39
У нас, например принятно писать комментарии в шапке модуля.

Т.е.
//
// Дата Пользователь
//  Изменена функция такая-то затем то
//  Изменены связанные функции такие-то затем-то
//

А в самом коде - самый минимум, если требуется обьяснить какие-то "магические числа" или нестандартные решения.

Если меняется типовой код, то вставляем специальный тег, в нем комментим старое, и вставляем новое.

Т.е. главное чтобы было описано в общих чертах: что и зачем было сделано. В какой именно строчке - не важно.
34 oslokot
 
23.11.16
06:39
(0)  комменты надо писать так, чтобы они все нашлись глобальным поиском по конфе
35 ifso
 
23.11.16
08:23
у вендора эталон комментирования (включая help)
остальное от наскального селфи до грязного белья для пакапаца
не?
36 kumena
 
23.11.16
08:26
> комменты надо писать так, чтобы они все нашлись глобальным поиском по конфе

предлагаю текст - "Здесь был Вася!"
37 DrZombi
 
гуру
23.11.16
08:28
(0) Пишу просто:

//Данный код вызывает бурное подозрение, того, что писать сего ГУАНО был невменяем :)
//Поправить при возникновении проблем...
38 DrZombi
 
гуру
23.11.16
08:29
(36) Поддерживаю, гарантирует уникальность выявления данной записи для анализа бедствия :)
39 DrZombi
 
гуру
23.11.16
08:29
(33) Устанете писать :)
40 _stay true_
 
23.11.16
08:40
Либо матом, либо так:

//[Фамилия]-ГГГГ-ДД-ММ-Н
//Закоментированный чужой код
//Краткое описание что как и для чего
МойГуанокод
//[Фамилия]-ГГГГ-ДД-ММ-К
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан