Имя: Пароль:
1C
1С v8
Короткие имена переменных
, , , ,
0 romix
 
30.09.16
18:27
1. Короткие имена недопустимы ни в каком виде 48% (11)
2. Допустимы типичные короткие имена (5-6 сокращений) 26% (6)
3. Допустимы однобуквенные счетчики цикла: i, j, x, y 26% (6)
Всего мнений: 23

"Система стандартов и методик разработки конфигураций для платформы 1С:Предприятие 8" пишет:
http://its.1c.ru/db/v8std/content/2149184103/hdoc
"4. Имена переменных не должны состоять из одного символа. Использование коротких имен переменных допускается только для счетчиков циклов".

В то же время:
http://its.1c.ru/db/metod8dev/content/2588/hdoc
Методическая поддержка для разработчиков и администраторов 1С:Предприятия 8 содержит такой пример:

тзДанные = РегистрыСведений.КурсыВалют.СрезПоследних(ВыбДата, );
Для Каждого Стр Из тзДанные Цикл
      Сообщить("Для валюты " + Строка(Стр.Валюта) + " курс на заданную дату: " + Строка(Стр.Курс) + ", кратность: " + Строка(Стр.Кратность));    
КонецЦикла;


Получается, что имена переменных могут быть двух- и трех-буквенными (тз, стр)? А счетчики цикла - однобуквенными (i, j..)?

Разлапистые имена переменных цикла типа ВыборкаДетальныеЗаписи (кстати, эквивалент ли это счетчика цикла с точки зрения стилистических рекомендаций?) - лично меня смущают - хочется иметь некоторый набор общеупотребительных сокращений для типичных случаев, чтобы не печатать и не читать с экрана много лишних букв.

Много повторяющихся переменных возникает при заполнении структур, при заполнении новой строки и при анализе выборки. Для них хочется использовать одно- и двухбуквенные переменные (например, "ст", "нс" и "вв", соответственно). Для таблицы значений допустимым выглядит имя или префикс тз, а для строки - стр.
99 romix
 
30.09.16
21:46
(91) Мозг-то всё равно читает буквы... Тут хочется облегчить жызнь мозгу. Но при этом, конечно, не ударяться в другую крайность, когда много всяких переменных типа тыр пыр. Счетное множество сокращений могло бы быть уместным, как м или с в физике.

(94) У меня тз, стр и ТабДок (последнее сокращение делает встроенный конструктор 1С).

(96) У меня всё точно так же (переменную выборки хочется сокращать до вв).
100 Морковка
 
30.09.16
21:47
Код должен быть читаемым, все остальное фигня. Одно дело когда у тебя какая-нибудь непонятная стр то и дело попадается в течение 500 строк, а другое дело какой-нибудь краткий счетчик для цикла в пару строк или переменная в коротенькой функции. Опять же длинное имя совсем не гарантия, что понятно что это такое Ну вообще культуру оформления кода характеризуют не только имена переменных
101 Смотрящий
 
30.09.16
21:48
(98) I и J это sчетчики циклов. Sтр это вsегда была sтрока
102 Злопчинский
 
30.09.16
21:50
(61) боюсь при сотне ячеек сборки это будет не сильно быстро?
103 Злопчинский
 
30.09.16
21:54
(64) я вот как раз думаю что бизнес приложения и должны так строиться, это само собой приведёт к стандартизации и модульностм
104 GedKo
 
30.09.16
21:58
(96) а если потом в цикл/выборку нужно вложить еще один цикл? сч1, выборка1?

Почему бы сразу не дать осмысленные имена?
105 romix
 
30.09.16
22:05
(98) Я сейчас проверил запросом в Гугле:


"для каждого" цикл site:its.1c.ru


Там много примеров именно сокращенного использования. Указание, что это именно "счетчик цикла", я сходу не нашел.


Для каждого СтрСписка из

Для каждого Стр из ОформленияСтрок Цикл

Для Каждого Стр Из тзДанные Цикл

Для каждого Стр из ОформленияСтрок Цикл

Для Каждого Сотр Из ОтмеченныеСотрудники Цикл

Для Каждого СтрСостава Из Состав Цикл

Для Каждого СтрокаТЧ Из ТабЧасть Цикл

Для Каждого ТекСтрокаСостав Из Состав Цикл

Для Инд = 0 По Картинки.length - 1 Цикл

Для Каждого ТекСтрокаМатериалы Из Док.Материалы Цикл

Для Каждого ТекСтрокаТовары Из Товары Цикл

Для каждого КолонкаТП из Элемент.Колонки Цикл


Это всё поисковые находки из святая святых - сайта ИТС - its.1c.ru.
106 romix
 
30.09.16
22:18
(104) Вложенные циклы относительно редки, там уже уместны более полные имена (чтобы не перепутать одно с другим).

Да и уместно выкидывание обоих циклов в отдельную функцию и даже отдельный модуль (чтобы прыгать по F12 и возвращаться назад было удобнее).
107 b_ru
 
30.09.16
22:52
То ли дело САП - тама все имена переменных, таблиц и столбцов - не более 8 символов ascii и не волнует.

По сабжу:

Допустимы типичные короткие имена (5-6 сокращений)
108 Torquader
 
30.09.16
23:38
(107) Есть языки программирования где имена переменных могут состоять только из цифр, так что ASCII - это уже что-то.
Опять же, никто не мешает написать транслятор, чтобы изначально были длинные и красивые имена переменных, а на выходе, сочетания букв и цифр.

Что касается короткого имени, то если переменная упоминается только в нескольких смежных строках одного экрана, то ей и однобуквенное имя вполне подходит, а вот если уже несколько экранов или модульная, то тут нужно осмысленное имя.
Хотя, никто не мешает сделать общий объект модуля в переменной "Ы" - всем будет понятно, что это, если вверху в комментарии это написано.
109 Nirvana
 
30.09.16
23:52
1) Короткие имена допустимы для простых значений.
Н=0
Да="Да"

2) Имя переменной должно отражать её содержимое.
Для Каждого СтрокаДанных Из МатрицаДанных Цикл
Для Шаг=1 По 100 Цикл

3) Сокращения (типа "Стр", "Спр", "Таб", "Шаб") неприемлемы ни в каком виде.

4) Для одноразовых или локальных задач допустимы короткие имена переменных, вплоть до односимвольных. Однако чем более универсален модуль, чем более эта часть программы "расширяема", тем более подробными должны быть имена переменных.

5) Для переменных, которые не используются в алгоритме, но необходимы для синтаксической корректности, допустимы минимальные имена.
110 Torquader
 
30.09.16
23:54
(109) А что в 1С для "синтаксической корректности" НЕОПРЕДЕЛЕНО писать запретили ?
111 orefkov
 
01.10.16
00:19
(29)
>>  В 8-ке Телепата нету и поэтому нету смысла все переменные локальные с одной буквы начинать,
>> один фиг почти полностью набирать придется
Это не совсем так:
https://www.youtube.com/watch?v=J5fBCh9cugs
112 Nirvana
 
01.10.16
00:21
(110) В некоторых случаях переменная должна быть одним из обязательных параметров функции, и туда помещается определённое значение.
113 Torquader
 
01.10.16
00:27
(112) Если в 1С тебе это значение не нужно - можно написать НЕОПРЕДЕЛЕНО - система-то должна сообразить, что происходит.
А если значение нужно передать в функцию, то можно написать это значение.
Здесь же не php, где если указано, что передаётся по указателю - нужно передавать именно переменную.
114 Митяйский
 
01.10.16
09:30
ИменемХранителяСервераИПовелителяТонкогоКлиентаПойдиЗаНепонятноКакойФигнейНаСерверПовтИсп()

Код нечитаем из-за таких длинных портянок.
С пояснением назначения функции в сто раз лучше справляются комментарии.
Уникальность наименования также достигается за счет гораздо меньшего числа символов.

Так что единственная причина, по которой имеет смысл пользоваться такими переменными - это ЧтобыКодБылМаксимальноПохожНаСтандартныеПроцедурыТипаКакВБСПИлиТиповыхКонфигурацияхАОниКакРазЭтойРекомендации1СПридерживаются

Допустимы типичные короткие имена (5-6 сокращений)
115 mistеr
 
01.10.16
13:58
(114) То есть ты предлагаешь ИХСИПТКПЗНКФНСПИ(), я правильно понял?
116 DailyLookingOnA Sunse
 
01.10.16
16:06
(114),(115)
Нужны локальные псевдонимы модулей.

ОБЪЯВИТЬ МойЛюбимыйМодульРасчетовПоКоэффициентамОпределяемымВДругомМоемНелюбимомоМодулеКоторыйКлиентСерверАЛюбимыйМодульТолькоСерверПереопределяемый КАК МодульЛюбимий;

РезультатРасчета = МодульЛюбимый.КоэффициентПодразделения(Подразделение)*МодульЛюбимый.КоличеяствоСотрудниковПодразделения(Подразделение);

ОБЪЯВИТЬ;
117 impulse9
 
01.10.16
16:22
Ребята, делающие короткие имена переменных, что вы делаете с этой кучей свободного времени, которое вы сэкономили?

Короткие имена недопустимы ни в каком виде
118 KSergey1C
 
01.10.16
17:52
(0) > Получается, что имена переменных могут быть двух- и трех-буквенными (тз, стр)? А счетчики цикла - однобуквенными (i, j..)?


"тз" - это не имя переменной, а тип переменной.

А "стр" - это  и есть фактически счетчки цикла, хотя конечно правильнее стрДанные

Длина же переменных зависит от сложности программы.

Если у тебя простая обработка, которую не предполагется переделывать то и короткие имена допустимы.
119 Fragster
 
гуру
01.10.16
18:57
(116) попробуй так:
Любимый = МойЛюбимыйМодульРасчетовПоКоэффициентамОпределяемымВДругомМоемНелюбимомоМодулеКоторыйКлиентСерверАЛюбимыйМодульТолькоСерверПереопределяемый;
РезультатРасчета = Любимый.Х()*Любимый.У()+Любимый.Й();
120 Fragster
 
гуру
01.10.16
18:57
даже пародия на интеллисенс работать будет
121 orefkov
 
01.10.16
19:36
(120)
Ну, зря вы так про "пародию". Для языка без жёсткой типизации интеллисенс в восьмёрке довольно хорош. Это я вам как человек, кодивший на javascript в разных IDE говорю.
122 lvz
 
01.10.16
19:51
Согласен со стандартами 1С.
и с (100).

Допустимы однобуквенные счетчики цикла: i, j, x, y
123 DailyLookingOnA Sunse
 
01.10.16
20:10
(119)
О, точно, забыл про ссылки на модули.
Складываем в дальнюю память, вдруг меня кодить куда возьмут.
124 Nirvana
 
01.10.16
21:00
(113) А я, кажется, так когда-то пробовала, и это заканчивалось ошибкой типа <<Переменная недоступна для записи>>.
125 romix
 
01.10.16
21:01
(117)  У вас нет завала с задачами в Редмайне?
126 Лефмихалыч
 
01.10.16
21:16
Единственное короткое имя, которую использую - это
Для СчЦ=0 по 10 Цикл

всё. Когда есть вложенные циклы, тогда счетчики называю именами того, что они считают.

И ни когда не использую эти венгерские угондгрёбищные префиксы. Их придумали мудаки.

В именах переменных избегаю вообще название типов, чтобы код сам себя документировал, исходя из своего смысла, а не из типов переменных. Хотя при этом переменные вида МассивСсылок или СписокПараметров в допускаю - это маленькое и допустимое зло.

Короткие имена недопустимы ни в каком виде
127 IamAlexy
 
01.10.16
22:26
массив = новый массив;
128 romix
 
01.10.16
22:30
(126) А что делает этот цикл? Долбит 10 раз?
Востребованность цикла Для (не Для Каждого) сомнительна. Зачем именно для него короткие переменные, если он почти никогда реально не используется...
129 Nuobu
 
02.10.16
14:07
(125) Короткие имена не влияют на скорость выполнения задачи.

Короткие имена недопустимы ни в каком виде
130 Лефмихалыч
 
02.10.16
22:55
(128) >А что делает этот цикл?
какая погода на твоей планете, Ромикс? тебе знакомо словосочетание "для примера"? Этот конкретный - вообще ни чего.

>Востребованность ... сомнительна. Зачем бла-бла-бла
вот ровно потому, что редко используется, лично я и допускаю только для него короткое имя для счетчика.
131 novichok79
 
02.10.16
22:58
Иногда, когда разбираю код предыдущего программиста в базе, хочется вот встретить его, взять за плечики и так потрясти пару раз сильно, и спросить ЗАЧЕМ?

Короткие имена недопустимы ни в каком виде
132 orefkov
 
03.10.16
00:34
Если код функции умещается на пол-экрана, а ее название ясно и чётко говорит о её назначении, то длина названий переменных внутри функции уже не так важна. Тем более в нынешних конфигураторах, где выбранная переменная сразу подсвечивается по тексту.
Вывод - держите названия своих функций большими, а сами их - маленькими.
PS: Это был совет для идеального мира...
133 Torquader
 
03.10.16
01:14
(132) Идеальный мир ? В Программировании ?
Сферического коня в вакууме вам, а не идеальный мир.
134 orefkov
 
03.10.16
01:31
(133)
А хрен ли тогда обсуждать длину названий переменных в 1С? Один фиг идеала не будет. И благо бы типичный одинэсник копался в своём коде, где он называет переменные как ему надо. Но нет - жизнь типичного одинэсника наполнена копанием в коде прошлых товарищей (там он хоть как-то может переписать под идеал), и в коде типовых от 1С - там он вообще никак на названия переменных не повлияет. И что тогда тут обсуждать?
135 IamAlexy
 
03.10.16
01:37
про

ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокументИмениБорисаГеоргиевичаНуралиева


уже шутили?
136 orefkov
 
03.10.16
01:44
(135)
Святым не шутят!
137 Nuobu
 
03.10.16
09:11
(134) Так тут как раз и обсуждается, что легче переписывать, когда переменные названы длинными именами.
138 DailyLookingOnA Sunse
 
03.10.16
09:15
(137)
Легче, когда по названию можно понять смысл.
В очень длинных именах искать смысл так же тяжело, как и в однобуквенных.
139 aka AMIGO
 
03.10.16
09:21
СПС - справочник склады
СПФ - справочник фирмы
Рег.. - регистр
РегОст - регистр остатков
РегЖР - регистр железный резерв
ы - счетчик цикла

У каждого кодера есть свои предпочтения в названиях переменных
Следовать советам сабжа нужно только в одном случае - когда кодер работает в команде. Раздрай в наименованиях - путь к шумихе и неразберихе.
Я ковыряюсь в конфе один. Привычке изменять не намерен :)
140 senior
 
03.10.16
09:22
За "ТЗ" и "СЗ" - по рукам

Короткие имена недопустимы ни в каком виде
141 aka AMIGO
 
03.10.16
09:22
+139 моего пункта в голосовалке нет, потому - молчу :)
142 aka AMIGO
 
03.10.16
09:24
(140) А, да! у мепня есть наследство от предыдущего кодера, в нём ТЗ и СЗ - глобальные переменные.
Потому к ним подставляю от одной до нескольких букв
143 Лефмихалыч
 
03.10.16
09:25
(138) это ложь
очевидно, что второй вариант при любых раскладах более информативен:

Для каждого С из ТН Цикл

Для каждого СтрокаТаблбицы из ТаблицаНоменклатуры Цикл
144 DailyLookingOnA Sunse
 
03.10.16
09:26
(143) тоже ложь
СтрокаТаблицы - это очень длинное?
145 aka AMIGO
 
03.10.16
09:27
(143) я пишу обычно Стр
146 impulse9
 
03.10.16
09:28
(143)
Для Каждого СтрТЗНоменклатура из ТЗНоменклатура Цикл
КонецЦикла;
147 Лефмихалыч
 
03.10.16
09:29
(144) про "очень" речи не было ни в топике, ни где-то еще в ветке. Короткое - это С, СТ, стч и прочее сокращенное говно, а "СтрокаТаблицы" - это не короткое имя.
148 aka AMIGO
 
03.10.16
09:32
(145) + ну, и СтрТ для конкретизации в локальной процедуре или модуле

(147) ну уж ты уж сказанул.. Для скорости набора достаточно трёх-четырёх букв.
Расписывать модуль в виде текста романа "Война и мир" Льва нашего Толстого - это далеко не кошерно.
149 Лефмихалыч
 
03.10.16
09:36
(148) куда ты будешь девать все то время, которое сэкономишь на скорости своего набора?
150 aka AMIGO
 
03.10.16
09:37
(149) у меня много задач :)
151 aka AMIGO
 
03.10.16
09:38
+150 Это ещё не считая сидения в форуме :)
152 DailyLookingOnA Sunse
 
03.10.16
09:38
(147)
Для меня длинное - это в полстроки и далее.
А так я вслепую по-русски набиваю, переменная в два слова  это норма.
153 senior
 
03.10.16
09:39
Короткие имена это как если едешь по трассе, а вместо "Урюпинск" на указателе "УРП", а те кто называет "ТЗ", "СЗ" - это как вместо "Урюпинск" на указателе бы писали "поселок" или "город"
154 Лефмихалыч
 
03.10.16
09:41
(152) контекст обсуждения задается постом с номером 0, а не твоим восприятием. В (0) короткими названы такие переменные, которые состоят из одного символа или из сокращенных слов.
155 aka AMIGO
 
03.10.16
09:43
ЗначениеНДСкЗачетуВСуммеПоступившегоТовараПоНакладнойПоставщика = Сумма / (100+ЗначениеНДСдляТовараНаДатуПоступленияТовара) * ЗначениеНДСдляТовараНаДатуПоступленияТовара;

Действительно, так гораздо читабельнее  :)
156 Лефмихалыч
 
03.10.16
09:45
(155) ну, так точно понятно, что ты вычисляешь и на основании чего. А это и есть - самодокументируемость кода
157 Лефмихалыч
 
03.10.16
09:46
+(156) не надо спрашивать автора или шерстить стэк вызовов, чтобы понять, что имеется в виду и почему.
158 aka AMIGO
 
03.10.16
09:47
(156) (157) Да, тут ты прав на 100%, вот этот момент - действительно, интересный: Самодокументируемость
159 Рэйв
 
03.10.16
09:53
У меня:
Для перебора ТЗ -всегда Стр
Для Перебора массивов , СЗ или струтур - всегда Эл
Для Перебора документов - вседа Док

При вложенности просто добавляется цифра уровня.
Вполне комфортно с этим живу.

Допустимы типичные короткие имена (5-6 сокращений)
160 Рэйв
 
03.10.16
09:54
а это только для простых циклов (не коллекций)

Допустимы однобуквенные счетчики цикла: i, j, x, y
161 Лефмихалыч
 
03.10.16
09:54
(159) гори в аду :)
162 Рэйв
 
03.10.16
09:55
(161) а ты попробуй - тебе понравится:-))
163 Serg_1960
 
03.10.16
10:02
Автор ностальгирует по временам, когда во многих языках длина имени лимитировалась 8 символами? Видать забыл/не знал каково это, когда имена переменных, все имена функций и процедур в сложной программе должны были быть уникальны...
164 senior
 
03.10.16
10:03
(162) попробовали во времена нетленок на 7.7, наелись
165 Лефмихалыч
 
03.10.16
10:11
(162) я из этого вырос лет 10 назад
166 ovrfox
 
03.10.16
10:20
Если короткое имя описывает суть переменной, то почему бы и нет?
Для себя я решил так - внутренние для процедуры (лучше для текущих 50 строк процедуры) переменные могут иметь короткие имена, просто отражающие их суть (ТЗ, Стр, спПарам).
Имена, которые передаются между процедурами, должны быть более точными (ТЧТовары, тзДопРеквСотрудники).
Глобальные переменные должны использовать вообще без сокращений (ТаблицаДокументовДляПроведения, ФлагУдаленияПартий)
Т.е. очень простой вариант - чем дальше сожно увидеть, тем крупнее пишем.

Допустимы типичные короткие имена (5-6 сокращений)
167 Рэйв
 
03.10.16
10:40
(165)А я привык. Зачем чтото менять если мне так удобно?
168 eryomin
 
03.10.16
11:05
Вспомнился анекдот:
"Приходит индеец к вождю и говорит:
- Мне не нравится мое имя. Оно у меня длинное и некрасивое. И вообще в нашем роду все имена длинные и некрасивые. Вот у белых людей все имена короткие и красивые: Гарри, Джон, Боб…
А в нашем роду… Я хочу сменить свое имя!
Вождь подумал и индейцу отвечает:
- У белых людей имена короткие и не красивые. А в нашем роду все имена длинные и очень красивые. Вот я – Зоркий Сокол, моя жена – Быстроногая Лань. Так что ты неправ, Бычий Куй!"
169 orefkov
 
03.10.16
12:36
одинэсники всё к куям сведут
170 romix
 
04.10.16
10:48
(153) Есть 2-3 символьные сокращения для стран, аэропортов... Например, Домодедово - DME, Шереметьево - SVO.

Критична не сама таблица (ну пусть она будет не тз, а ТаблицаТовары, я согласен), а переменная для ее выборки.

Как говорится, не так опасно знамя, как его древко.

Если переменная повторяется в пределах видимости по 50 раз, не случай ли это для её сокращения...
171 Лефмихалыч
 
04.10.16
10:50
>Если переменная повторяется в пределах видимости по 50 раз, не случай ли это для её сокращения...

это повод для рефакторинга
172 newbling
 
04.10.16
11:10
Для ЗамечательныйСчетчикДляПеребораОчередногоРандомногоМассива_i = 1 по 5 Цикл...
173 novichok79
 
04.10.16
11:10
дровишек вам позабористее в аду, любители стр, эл, _сс и прочей куйни.

Если ЗначениеЗаполнено(_аа) Тогда
    Возврат ПолВнешСс(_аа, _мет_имя, _поиск);
КонецЕсли;
мета = _аа.Метаданные();
имя = мета.Имя;
пимя = мета.ПолноеИмя();
тип = Лев(пимя, Найти(пимя, ".") - 1);
рез = Неопределено;
Если тип = "Справочник" И ЗначениеЗаполнено(_владелец) Тогда
    в = Справочники[имя].Выбрать(, _владелец);
    Пока в.Следующий() Цикл
        Если Не в.ПометкаУдаления Тогда
            рез = в.Ссылка;
            Прервать;
        КонецЕсли;
    КонецЦикла;
КонецЕсли;

Возврат ПолВнешСс(рез, _мет_имя, _поиск)

Короткие имена недопустимы ни в каком виде
174 newbling
 
04.10.16
11:11
(173) да всё же понятно
175 novichok79
 
04.10.16
11:12
(174) доооааа, при рассмотрении, буквы сливаются в неудобочитаемое нечто.
176 newbling
 
04.10.16
11:14
если прочитать быстро, то звучит как Болгарский. Пимя мета рез тип полвнешсс
177 novichok79
 
04.10.16
11:14
(174) всего-лишь маленький кусок кода, при дальнейшем чтении забываешь - что было в _аа, что в _сс. там сложная универсальная обработка, поэтому в _аа и в _сс может быть что угодно.
178 newbling
 
04.10.16
11:16
ну я не вижу ничего страшного во всяких переборках юзать стрВыб или при заполнении построковом нСтр
179 newbling
 
04.10.16
11:17
Главное чтоб было читаемо, чтоб мог зайти через неделю, открыть и вдуплить о чём шла речь
180 novichok79
 
04.10.16
11:19
(178) ладно при несложных переборах, а когда весь модуль написан вот так? получается неподдерживаемый и нечитаемый код. ну если конечно, следующий программист - не великий сокращатель, читай, знатный любитель извращений.
181 newbling
 
04.10.16
11:24
Когда сложные, тут да, много сокращений тоже плохо. Всё хорошо в меру.
182 newbling
 
04.10.16
11:25
выше

Допустимы типичные короткие имена (5-6 сокращений)
183 orefkov
 
04.10.16
11:28
Я одного не могу понять - как обсуждение того, какими должны быть переменные и каковы ваши личные предпочтения в их именовании - помогут в ситуации, когда вам УЖЕ достался такой код? Просто поднять своё самомнение, мол "прошлый прогер был мудак, а я его лучше"? Или слабая надежда, что он прочитает эту ветку, осознает, каким он был мудаком и исправится? Нет, они не исправляются, эффект Даннинга — Крюгера, знаете ли.
184 cybfyv
 
04.10.16
11:31
(183) поплакать же хочется
185 Гаврилин Игор
 
04.10.16
11:37
Использую что-то вроде ТЗ, стр, сч, ТабДок... А в 95% случаев НовыйДокументПоступление или ТекущийОкладСотрудника очень удобно, один взгляд и сразу понимаешь о чем речь. Ну и комменты помогают.

Короткие имена недопустимы ни в каком виде
186 cybfyv
 
04.10.16
11:39
Комменты. ммм....
Кто-то реально пишет комменты к коду?
187 novichok79
 
04.10.16
11:40
(183) тут больше некая сублимация своей ненависти... я понимаю, что если кодер давно пишет одним образом, очень сложно что он внезапно станет писать по-другому.
188 novichok79
 
04.10.16
11:41
(187) ненависть - слишком сильное слово, неприязнь. я бы сказал.
189 Это_mike
 
04.10.16
11:41
(186) бывает. Описания функций/процедур, и пояснения "непрозрачных" на первый же взгляд кусков, либо обход/использования "тяжелого наследства"
190 Это_mike
 
04.10.16
11:42
(183) ну, чтоб самого таковым не посчитали...
191 Гаврилин Игор
 
04.10.16
11:44
(186) Конечно. Нас несколько разрабов, если правишь код - обязательно указываешь кто и по какой причине. И для себя тоже что-то типа: "Здесь сделаем срез по счетчикам за предыдущие три месяца, потому что маркетологи опять придумали какую-то муйню с аналитекой..." )))
192 orefkov
 
04.10.16
11:44
(184)
Вот. В этом вся наша суть. Собрались, поплакали на форуме. Разошлись дальше делать всё то же самое. А вот какие-нибудь американцы бы что сделали?
Запилили бы тут же какойнить комитет, который бы полгода проработал, и выдал бы рекомендации по стандарту именования переменных. Дали бы этому документу звучное имя, что-то типа "стратегическая именовательная инициатива свободных коммерческих интеллектуалов" (СИИСКИ) , придумали бы логотип, товарный знак. Продвигали бы её и пиарили, добивались бы включения в гос.стандарты, сертификацию сделали, "Программист, следующий СИИСКИ", "ПО стандарта СИИСКИ", денежку бы брали за сертификацию, выбивали бы из работодателей надбавки для работников, постигших СИИСКЕ. Поле деятельности обширное, тащемто. Ладно, что-то понесло меня перед обедом.
193 Fragster
 
гуру
04.10.16
12:50
(192) так ведь всё есть: http://its.1c.ru/db/v8std#browse:13:-1:72:73
194 DrZombi
 
гуру
04.10.16
13:07
Мне побоку... я не привередлив... Могу и матерный код воспринимать, как должное :)

Допустимы однобуквенные счетчики цикла: i, j, x, y
195 Nuobu
 
04.10.16
13:22
(193) У меня не открывается, т.к. нету подписки. А вот бэст практисэс гуглится:
https://msdn.microsoft.com/en-us/library/ff926074.aspx
196 romix
 
06.10.16
10:17
(183) В текущем стандарте расплывчатые формулировки - я вот например не совсем понимаю, что там со счетчиками цикла можно делать официально, и каких именно циклов. Поиск примеров по самому сайту ИТС дает сокращенные переменные циклов (и тех, и этих). То есть, это не плохая практика, а официальная.
197 spiteful41
 
06.10.16
10:35
Обычно называю счетчик строки исходя из имени таблицы, например, если имя таблицы ПоказателиОтчета, то счетчик строк будет СтрокаПоказателиОтчета

Короткие имена недопустимы ни в каком виде
198 romix
 
07.10.16
16:20
Сейчас обратил внимание, что встроенный конструктор движений и ввода на основании платформы 1С делает сокращения вот такого вида:


Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
    //{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ
    // Данный фрагмент построен конструктором.
    // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
    Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ПриходнаяНакладная") Тогда
        // Заполнение шапки
        Для Каждого ТекСтрокаТовары Из ДанныеЗаполнения.Товары Цикл
            НоваяСтрока = Товары.Добавить();
            НоваяСтрока.Количество = ТекСтрокаТовары.Количество;
            НоваяСтрока.Товар = ТекСтрокаТовары.Товар;
        КонецЦикла;
    КонецЕсли;
    //}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ
КонецПроцедуры


А конструктор печати делает сокращения такого вида:


ТабДок.Вывести(ОбластьТовары, ВыборкаТовары.Уровень());


Платформа 1С:Предприятие 8.3 (8.3.8.2088)
AdBlock убивает бесплатный контент. 1Сергей