Вход | Регистрация

  1  2
1С:Предприятие :: 1С:Предприятие 8 общая

Короткие имена переменных

Короткие имена переменных
Я
   romix
 
30.09.16 - 18:27
3. Короткие имена недопустимы ни в каком виде48% (11)
1. Допустимы типичные короткие имена (5-6 сокращений)26% (6)
2. Допустимы однобуквенные счетчики цикла: i, j, x, y26% (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..)?

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

Много повторяющихся переменных возникает при заполнении структур, при заполнении новой строки и при анализе выборки. Для них хочется использовать одно- и двухбуквенные переменные (например, "ст", "нс" и "вв", соответственно). Для таблицы значений допустимым выглядит имя или префикс тз, а для строки - стр.
 
 
   Смотрящий
 
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) я вот как раз думаю что бизнес приложения и должны так строиться, это само собой приведёт к стандартизации и модульностм
   GedKo
 
104 - 30.09.16 - 21:58
(96) а если потом в цикл/выборку нужно вложить еще один цикл? сч1, выборка1?

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

По сабжу:

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

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

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

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

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

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

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

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

1. Допустимы типичные короткие имена (5-6 сокращений)
   mistеr
 
115 - 01.10.16 - 13:58
(114) То есть ты предлагаешь ИХСИПТКПЗНКФНСПИ(), я правильно понял?
   DailyLookingOnASunse
 
116 - 01.10.16 - 16:06
(114),(115)
Нужны локальные псевдонимы модулей.
ОБЪЯВИТЬ МойЛюбимыйМодульРасчетовПоКоэффициентамОпределяемымВДругомМоемНелюбимомоМодулеКоторыйКлиентСерверАЛюбимыйМодульТолькоСерверПереопределяемый КАК МодульЛюбимий;

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

это повод для рефакторинга
   newbling
 
172 - 04.10.16 - 11:10
Для ЗамечательныйСчетчикДляПеребораОчередногоРандомногоМассива_i = 1 по 5 Цикл...
   novichok79
 
173 - 04.10.16 - 11:10
дровишек вам позабористее в аду, любители стр, эл, _сс и прочей куйни.
Если ЗначениеЗаполнено(_аа) Тогда
    Возврат ПолВнешСс(_аа, _мет_имя, _поиск);
КонецЕсли;
мета = _аа.Метаданные();
имя = мета.Имя;
пимя = мета.ПолноеИмя();
тип = Лев(пимя, Найти(пимя, ".") - 1);
рез = Неопределено;
Если тип = "Справочник" И ЗначениеЗаполнено(_владелец) Тогда
    в = Справочники[имя].Выбрать(, _владелец);
    Пока в.Следующий() Цикл
        Если Не в.ПометкаУдаления Тогда
            рез = в.Ссылка;
            Прервать;
        КонецЕсли;
    КонецЦикла;
КонецЕсли;

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

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

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

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

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

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

Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
    //{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

    // Данный фрагмент построен конструктором.

    // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

    Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ПриходнаяНакладная") Тогда
        // Заполнение шапки

        Для Каждого ТекСтрокаТовары Из ДанныеЗаполнения.Товары Цикл
            НоваяСтрока = Товары.Добавить();
            НоваяСтрока.Количество = ТекСтрокаТовары.Количество;
            НоваяСтрока.Товар = ТекСтрокаТовары.Товар;
        КонецЦикла;
    КонецЕсли;
    //}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

КонецПроцедуры


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

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


Платформа 1С:Предприятие 8.3 (8.3.8.2088)
  1  2

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует