Имя: Пароль:
1C
1C 7.7
v7: Автоматические комментарии в коде
,
0 bas28000
 
24.10.12
14:14
Многие наверняка работают с базой в качестве разработчика в компании с другими программистами, и поэтому встает вопрос отслеживания изменений в коде и вообще понимания того, кто куда и когда что добавил и тд.

Кто как решает этот вопрос? Есть хотя бы какие-то полу или полностью родные средства для вставки, например, автоматических комментариев с опознавательными знаками в конец и начало выделенного фрагмента кода? Так чтобы можно было выделить свой кусок кода, нажать комбинацию клавиш и он пометился в начале и в конце комментариями вида: // внес bas28000 в 12:43:56 12.12.12?
1 Скользящий
 
24.10.12
14:14
в семерке в опенконфе есть.
2 bas28000
 
24.10.12
14:15
А что это?
3 Скользящий
 
24.10.12
14:15
У меня вот так работает по нажатию на альт *
               //[*]Антон, 24.10.2012
               //ТекОтгрузкаПоКонтрагенту = БИ.ДО("62.1","С",,спр_Контрагенты.ТекущийЭлемент());
               ТекОтгрузкаПоКонтрагенту = БИ.ДО("62.1","С",,спр_Контрагенты.ТекущийЭлемент());
               //[*]_
4 bas28000
 
24.10.12
14:15
Какой-то кастомный вариант конфигуратора? Глючит? Отзывы? :) Дайте посмотреть, пожалуйста.
5 GLazNik
 
24.10.12
14:16
(0) шаблоны и опенконф...
но комментарии в таком виде зло...
Копайте в сторону разборки мдешника и используйте нормальные средства контроля версий.
6 Скользящий
 
24.10.12
14:16
ищи опенконф лайт пак. есть на инфосрате.
7 GLazNik
 
24.10.12
14:17
(2) гугл ищет на раз....
8 Скользящий
 
24.10.12
14:17
удаление
//    ТаблицаПечТабЗнач = СоздатьОбъект("Таблица"); //[-]Антон, 24.10.2012
9 Скользящий
 
24.10.12
14:18
добавление.    
КоличествоКолонокТабЗнач = ТаблицаЗначений.КоличествоКолонок(); //[+]Антон, 24.10.2012
10 Скользящий
 
24.10.12
14:19
Настраивается тут.
http://gyazo.com/8eb628682dd6d782b439570a1dc1ae31
11 bas28000
 
24.10.12
14:19
(9)(8) - а это автоматически делается или как? Или по аналогии с (3) Alt + "+/-/*"?
12 GLazNik
 
24.10.12
14:19
(3)(8)(9) Оно конечно хорошо, когда изменений мало, но вот когда система постоянно модифицируется на протяжении нескольких лет, то нное количество подобных комментариев это кошмар...
13 Скользящий
 
24.10.12
14:20
контрл альт  + - * по умолчанию. Можно настроить на другие клавиши. Ну и в опенконфе еще до фига других вкусностей.
14 chief accountant
 
24.10.12
14:20
(12) для кого как, для меня - норм
15 Mikeware
 
24.10.12
14:21
(12) Зато можно прослелить "хотелки руководства". Порой очень ржачно...
16 GLazNik
 
24.10.12
14:32
(15) как их проследить? когда в комментарии стоит дата и автор... а если кто-то забыл поставить комментарий? а если один и тот же код правили несколько раз?
Вот через систему контроля версий можно. Хотя мороки поболе..
17 Mikeware
 
24.10.12
14:39
Ну так и видно - в 2009 добавлено, через 2 месяца - заремлено. Подымаешь служебки, и смотришь - кто распорядился убрать. Делаешь копию, и ...
18 akaBrr
 
24.10.12
14:42
(17) знакомо :)
19 Stim
 
24.10.12
14:42
в 8ке делает на раз-два
20 pumbaEO
 
24.10.12
14:45
(19) как ?
21 akaBrr
 
24.10.12
14:46
(19) вопрос был про 7.7
22 GLazNik
 
24.10.12
14:46
(17) от объемов зависит... если кодит 5-6 разработчиков, и каждый день вносят какие-то изменения... то ваше "и..." занимает приличное время...
По личному опыту... первое время так и было... кроме того, в описание к объекту даже писали какие реквизиты добавили/убрали и зачем... но потом из этого всего получился такой бедлам... потом перешли на CSV, потом на SVN... сейчас наверное имеет смысл смотреть в сторону Git
(19) еще б нормальный механизм был бы...
23 chief accountant
 
24.10.12
14:48
(22) ну для франчей может и актуально
24 GLazNik
 
24.10.12
14:51
(23) нет, не франч.
25 Stim
 
24.10.12
14:52
26 Mikeware
 
24.10.12
14:54
(22)Это да.... версионки рулят...
27 pumbaEO
 
24.10.12
14:55
(25) так не интерестно, но это познается только в сравнении.
28 chief accountant
 
24.10.12
14:57
(24) 5-6 разработчиков каждый день вносят какие-то изменения - это тогда кто?
29 GLazNik
 
24.10.12
15:01
(28) а по вашему только франч может коллективно разрабатывать? Кроме того, как по мне, то что-то типа (3) в продаваемом продукте это не айс
30 chief accountant
 
24.10.12
15:04
(29) теоретически могут конечно фришники объединиться, но это из области фантастики
31 Stim
 
24.10.12
15:06
в восьмерке:
пишу в коде "я" (без кавычек)
жму кнтрл +Q

получаю строку
// Иванов Иван ООО "Франчи без границ" 24.10.2012 15:05:00
32 ADirks
 
24.10.12
15:06
(22) а чего в Git такое есть, что надо в ту сторону смотреть?
33 Mikeware
 
24.10.12
15:09
(31) неправильно...
34 Stim
 
24.10.12
15:11
(33) что неправильного?
35 GLazNik
 
24.10.12
15:12
(32) а черт знат :) модно нынче вроде... я ж добавил, что "наверное"... сейчас я не особо в теме...
(30) это далеко не так... есть еще фикси... кроме того эти фикси могут привлекать как фри, так фра (и тут механизмы контроля версий встают еще более остро)
36 MMF
 
24.10.12
15:13
(3)(8) вот так и рождается ховнокод
37 chief accountant
 
24.10.12
15:14
(35) фикси не бывает по 5-6 разработчиков в одной конторе
38 Mikeware
 
24.10.12
15:14
(34) должно быть "франчи без башни" :-))
39 Mikeware
 
24.10.12
15:15
(37) 5-6 на клюшках, да на одной системе - малореально...
2, максимум 3..
40 chief accountant
 
24.10.12
15:18
(39) тык я ему это и талдычу, а он мне мозг парит
41 GLazNik
 
24.10.12
15:23
(37) вы сильно заблуждаетесь. искренне желаю вам поработать в подобной конторе... возможно это и не ваше, но подобный опыт больше нигде и не взять...
(39) а на восьмерке реально? по клюшкам сейчас может и маловероятно, но наличие тем говорит мне что они все еще активно используются... так что....
то, о чем я говорю, происходило лет 5 назад

Суслик есть. Видите ли вы его или нет...
42 Mikeware
 
24.10.12
15:34
(41) 6 человек - это не сопровождение, это фактически разработка. разработка - это все-таки не фикси, это франчи...
На восьмерке - скорее всего, реально. ибо многословная она до одури.
43 GLazNik
 
24.10.12
15:45
(42) а это было не только сопровождение... в том числе было и развитие системы своими силами (на сколько экономически выгодно было это решение не мне судить). Кроме того, если мы начнем рассматривать вариант сопровождения своими силами (ну там мелки ошибки поправить, отчетик нарисовать), а разработке серьезного функционала сторонними, то вопрос контроля версий встает более остро.
44 chief accountant
 
24.10.12
15:48
(42) +1
контора заказала конфу, человек пять над ней парились и в конце-концов продали заказчику, фикси принял, и сел за доработки.
(41) наперкуа ему ваши конроли версий и комменты
45 chief accountant
 
24.10.12
15:49
(44) в смысле комменты разработчиков
46 chief accountant
 
24.10.12
15:52
(41) "желаю вам поработать в подобной конторе" - да нет уж, спасибо, работа рядовым прогом для меня давно в прошлом
47 GLazNik
 
24.10.12
16:01
(44) ...и сел за доработки.... потом возникла необходимость еще одной волны серьезных доработок, на которые своих сил не хватает... тут вариант или мы расширяем штат, или привлекаем очередную контору... но вот беда... текущая деятельность никуда не делась...
(46) учитывая ваш "широкий" кругозор, гордиться тут особо нечем...
48 chief accountant
 
24.10.12
16:05
(47) контора полюбасу не будет расширять временно штат прогов, ибо работа разовая. Завязывай по ушам ездить. Привлекали сторонних прогов.
"учитывая ваш "широкий" кругозор, гордиться тут особо нечем..." - мне пох
49 Mikeware
 
24.10.12
16:06
(47) два землкеопа копают колодец три дня потому, что он очень узкий. смогут ли его выкопать за пол-дня шесть землекопов?
©
50 GLazNik
 
24.10.12
16:34
(49) тут не линейная зависимость. 6 человек выкопают быстрее, но не за пол дня. Так же и с разработкой. Если натравить толпу разработчиков на один документ, то быстрее не будет, а только медленнее, но если грамотно распределить ресурсы, то почему бы и нет... все зависит от количества задач и ресурсов на их выполнение.
51 ADirks
 
24.10.12
17:19
(37) Когда работал в Сибирском Береге, нас как раз было 6 человек. И таки да, это была разработка-разработка. А вообще, контроль версий должен быть, даже если разработчик всего один. Как можно без этого жить, я просто уже не представляю.
52 akaBrr
 
24.10.12
17:30
(51) несмотря на использование контроля версий, комментирование кода все равно ведь присутствовало?
53 ADirks
 
24.10.12
17:45
(52) Конечно, но не в таком же виде как в (3) например. Комментарии в коде нужны не для отслеживания изменений, а для понимания самого кода. В идеале бы надо писать код так, чтобы было понятно и без комментариев, но не всегда получается. И не у всех.
54 МишКа
 
24.10.12
17:50
(53) "не всегда получается" и "не у всех получается" надо заменить на "не всем понятно"
55 GLazNik
 
24.10.12
17:56
(53) Поддерживаю. но не согласен с этим утверждением: "...чтобы было понятно и без комментариев...". В достаточно большой системе это просто не возможно. Ну взять хоть б процедуры/функции? Как узнать что она возвращает? Какие параметры возможны на входе? И как вообще мы сможем ее использовать в своих целях? Каждый раз смотреть код? Или отказаться от использования существующих процедур и писать свою?
56 ADirks
 
24.10.12
17:56
(54) Не надо. А надо культуру написания кода повышать.
57 akaBrr
 
24.10.12
18:01
(55) название функции должно говорить, что она делает
58 ADirks
 
24.10.12
18:05
(55) Ну я же и говорю, что не всегда получается. Но стремиться к этому стоит.
Есть разные методы сделать код понятным. ООП например. Применение осмысленных префиксов (aka Венгерская нотация). Не писать процедур/функций которые на один экран не помещаются. На эту тему много понаписано.
В код всё равно приходится смотреть постоянно, даже в свой собственный, чё уж там. А вот для того, чтобы быстро по коду шариться, есть ОпенКонф + куча скриптов.
59 МишКа
 
24.10.12
18:08
(57) Зачем?
60 МишКа
 
24.10.12
18:09
(56) Когда-то я тоже так думал. ))))))))))
61 GLazNik
 
24.10.12
18:10
(60) и что случилось? :)
62 ADirks
 
24.10.12
18:10
(+58) например вот эта статейка мне нравится http://www.joelonsoftware.com/articles/Wrong.html
63 МишКа
 
24.10.12
18:11
(61) С опытом приходит понимание.
64 GLazNik
 
24.10.12
18:13
(63) понимание чего?
65 Злопчинский
 
24.10.12
18:15
(64) что проблемы не в клозетах, а в головах
66 МишКа
 
24.10.12
18:18
(64) Понятный код имеет значение только для обучения.
67 МишКа
 
24.10.12
18:19
+(66) Правильнее было бы написать - "понятный"
68 Злопчинский
 
24.10.12
18:20
(66) угумс.. быдлокод он же по принципу наваял и бросил...
69 ilerm
 
26.10.12
12:21
Бросьте кто-нибудь код шаблона для 1сv7, что бы дата в текст комментария подставлялась.
70 ADirks
 
26.10.12
12:49
шаблон: ///******************************** ADirks {ДАТА#dd.mm.yyyy} ************

в каком-нить скрипте (традиционно это telepat.vbs) д.б. обработчик

Sub Telepat_OnTemplate(Name, Text, Cancel)
   Text = DatePatternReplace(Text)

   .....
End Sub

'функция ищет все вхождения строки  {ДАТА(#dd.mm.yyyy)} и заменяет их на текущую дату
Function DatePatternReplace(Text)
   Set CS = CreateObject("OpenConf.CommonServices")
   Set RE = New RegExp

   RE.Pattern = "{ДАТА#([^)]*)}"
   RE.Global = true

   DatePatternReplace = ""
   pos = 1
   Set Matches = RE.Execute(Text)
   For Each Match in Matches
       format = Match.SubMatches(0)
       DatePatternReplace = DatePatternReplace & Mid(Text, pos, Match.FirstIndex - pos + 1) & CS.FormatDate(Now(), format)
       pos = Match.FirstIndex + Match.Length + 1
   Next
   DatePatternReplace = DatePatternReplace & Mid(Text, pos)
End Function
71 akaBrr
 
26.10.12
12:55
(66) ну ну, возвращаешься к своему коду через полгода и ни хрена не понимаешь
72 МишКа
 
26.10.12
13:28
(71) Это у тебя понималка не развита. Тренируйся дальше.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс