Имя: Пароль:
1C
1С v8
Как назвать переменную?
🠗 (Волшебник 27.04.2021 12:32)
0 Hans
 
27.04.21
10:13
1. ДоговорНомер 83% (5)
2. НомерДоговора 17% (1)
Всего мнений: 6

ДоговорНомер или НомерДоговора?
1 Cyberhawk
 
27.04.21
10:14
По контексту использования.
Если там уже есть кучка других свойств договора, то так же и называй свой новый.
2 Bigbro
 
27.04.21
10:16
мне привычнее.

НомерДоговора
3 brainguard
 
27.04.21
10:16
(0) нд - хорошее название. Очень легко пишется, попробуйте
4 ДенисЧ
 
27.04.21
10:18
Если православно - то ВоИмяТвоёДаСвятитсяСейНомерДоговораИСопровождающиеДокументы
5 Ненавижу 1С
 
гуру
27.04.21
10:20
ИдентификаторСоглашения
6 HeKrendel
 
27.04.21
10:20
(4) Аминь добавить забыл
7 fisher
 
27.04.21
10:20
Зависит от контекста. Обычно наиболее естественным образом, т.е. "НомерДоговора".
Но если контекст перегружен сущностями, то бывает удобно их группировать по типу "ДоговорНомер", "ДоговорДата", "ДоговорУсловияВыполнения".
8 ДенисЧ
 
27.04.21
10:21
(6) Это слово пишется через 6 букв...
9 polosov
 
27.04.21
10:21
НомеръРяда
10 Злопчинский
 
27.04.21
10:22
Придерживаюсь (7)
11 brainguard
 
27.04.21
10:23
Изобретение имен длиннее двух букв свидетельствует о низкой квалификации разработчика
12 sitex
 
naïve
27.04.21
10:25
(11) Поржал. В типовых посмотри что твориться.
13 sitex
 
naïve
27.04.21
10:26
(12) + *творится.
14 brainguard
 
27.04.21
10:27
(12) Это свидетельствует о низкой квалификации разработчиков типовых конфигураций.
15 fisher
 
27.04.21
10:28
(11) Вы, случаем, не апологет ректального программирования?
16 brainguard
 
27.04.21
10:29
17 fisher
 
27.04.21
10:30
(16) Увы, это невозможно свести к тому абсурду, что вы задвинули.
18 rsv
 
27.04.21
10:32
(0) не все ли равно ?
19 Йохохо
 
27.04.21
10:32
(16) когда читаешь что то смотри на дату. конечно если нужна зарплата а не пенсия
20 1Сергей
 
27.04.21
10:33
(11) Купи монитор побольше
21 brainguard
 
27.04.21
10:34
(17) Это - не абсурд.
Если вы профессионал, тогда
1. Вы пишете программы так, как показано на первой картинке.
2. Всегда получаете смысл переменной не из ее имени, а из контекста.
22 Hans
 
27.04.21
10:34
(18) Чем опытней программист тем дольше он думает над именами переменных? Тру программист, Немчинский, говорит что над именем функции нужно думать дольше чем над ее разработкой.
23 Провинциальный 1сник
 
27.04.21
10:35
(11) А как же процессорвыводарезультатакомпоновкиданныхвтабличныйдокумент?
24 brainguard
 
27.04.21
10:36
(22) Над именем функции - да. Над именем переменной - нет.
25 fisher
 
27.04.21
10:37
(21)
1. true
2. false
(24) Параметры функции к переменным относим?
26 brainguard
 
27.04.21
10:38
(23) Разве это - имя переменной?
27 1Сергей
 
27.04.21
10:39
(26) А что?
28 brainguard
 
27.04.21
10:39
(25) Нет, конечно
29 brainguard
 
27.04.21
10:39
(27) Имя метода
30 fisher
 
27.04.21
10:40
Безусловно. Смысл переменной вытекает из контекста. Контекст и есть источник ее смысла.
Но пренебрегать таким мощным вспомогательным инструментом ускорения понимания смысла как имя переменной, отражающее ее сущность - это... Это вредительство. Потому что такой человек может никогда и не читать свой код. Зато придется другим.
31 rsv
 
27.04.21
10:40
(22) надобно вопрос закрыть и забыть.
32 1Сергей
 
27.04.21
10:40
(29) Объекта
33 rsv
 
27.04.21
10:42
+(31) имя функции не компенсирует если в ней
сто циклов вместо одного запроса с топ 1
34 fisher
 
27.04.21
10:44
Хотя если ты апологет дядюшки фаулера и любая функция у тебя не длиннее шести строк, тогда нам есть о чем поговорить.
35 brainguard
 
27.04.21
10:47
Еще раз, чтобы всем понятно было.
Вы придумываете имя ПЕРЕМЕННОЙ. Это имя должно действовать в пределах 5-10 строк кода.
Если у вас так не получается, тогда медитируйте на https://ru.wikipedia.org/w/index.php?curid=6775969 усерднее.
Требование к имени одно. Оно должно быть легко РАЗЛИЧИМО в этих 5-10 строках кода.
Факультативное требование - оно должно быть абстрактным. Потому что настоящий профессионал никогда не вникает в смыслы имен. Он их пропускает мимо сознания. И правильно делает. Например, он ни на минуту не усомнится в том что вот здесь:

СуммаАиБ=A*Б

он имеет дело с произведением. И никогда не допустит ошибки
36 Mikeware
 
27.04.21
10:50
калимулин пробил очередное дно...
37 1Сергей
 
27.04.21
10:50
(35) хотел бы я увидеть мало мальски крупную конфигурацию, где переменные используются в пределах 10 строк
38 ДенисЧ
 
27.04.21
10:50
(35) А ты уверен, что там произведение? А если это с++ и оператор * переопределен?
39 fisher
 
27.04.21
10:53
(35) Упаси бог работать с тобой в одной команде. В том что ты говоришь - есть крупицы смысла. Но в сумме - это суспензия. Взвесь смысла в дисперсионной среде бреда.
Профессионала никогда не обманет неправильное имя переменной. Он его прочекает. Но за правильное имя переменной он своему коллеге проставит пива, потому что он облегчил ему жизнь. А за неправильное - набьет морду. Фигурально выражаясь.
40 1Сергей
 
27.04.21
10:55
Блин, я столько раз правильно называл переменные, но  пива мне так никто и не налил :(
41 fisher
 
27.04.21
10:59
(40) Я самому себе регулярно наливаю. Когда долго работаю на одной кодовой базе. Только тссс... Волшебник такое не прощает.
42 1Сергей
 
27.04.21
11:01
безалкогольное же ;)
43 fisher
 
27.04.21
11:03
(36) А точно! Это же он задвигал теорию, что чем меньше смысла в именах переменных, тем шире мозг у программиста и потому такой программист круче? А теперь, вишь, уже новую теорию под свой "стиль программирования" подогнал.
44 DrZombi
 
гуру
27.04.21
11:03
Называй как хочешь, ты автор, тут ты заказываешь :)

ДоговорНомер
45 mikecool
 
27.04.21
11:05
(6) славящие правь амона не поминают!
46 Вафель
 
27.04.21
11:05
если сущность договор есть, то договор номер, а если нет, то номердоговора
47 brainguard
 
27.04.21
11:05
(39) А за "неправильное" имя следует проставлять 50-летний коньяк. Потому что "правильное" имя тянет коллегу на дно нубства. А "неправильное" имя поднимает на вершины абстрактного мышления.
Расслабьтесь, коллеги )))
48 Кац
 
27.04.21
11:10
Сначала объект, потом реквизиты. Всегда так делаю (по привычке)

ДоговорНомер
ДоговорДата
ДоговорГФУ
ДоговорПартнер

и т.д.

ДоговорНомер
49 fisher
 
27.04.21
11:13
(47) Слушай. Я есть где просветлиться твоим продакшн-кодом из шестистрочных функций, не требующих осмысленных имен переменных? Ты просто порвешь мой шаблон. Потому что обычно получается все ровно наоборот. Открываешь очередную простыню - и мать моя женщина... Сплошные непристойности между сoupling и сohesion. Прям во все отверстия.
Рефакторинг чужого кода я обычно так и начинаю - понял, что означает очередное "к2" и сделал очередную автозамену. А по ходу осознания общего смысла уже декомпозицию человеческую делаешь.
50 acanta
 
27.04.21
11:15
На страстной седьмице шла вторая пятница...
Ученые обсуждали сколько лет после изобретения компьютера просуществует профессия инженер.
Поскольку профессия программист вполне обходится без приставок.
51 Провинциальный 1сник
 
27.04.21
11:18
(35) "он ни на минуту не усомнится в том что вот здесь: СуммаАиБ=A*Б он имеет дело с произведением"
На тему произведения и суммы. Тема раскрыта. Просвещайтесь (пока не запретили)! )
https://www.youtube.com/watch?v=BwPT8_bB8dY
52 ADirks
 
27.04.21
11:24
(49) Ты угадал :))
Я конечно не знаток кода автора, но как-то помнится он вывешивал свои портянки. Про длину переменных нихрена не помню, но код был - лаша лапшой.
53 Paint_NET
 
27.04.21
11:28
(11) Вот ты и продемонстрировал свою квалификацию. Код должен быть читабельным, переменные - информативные, а копрокодеры, которые используют однобуквенные переменные не только в итераторах, но и в основном теле кода, должны гореть в аду.
54 Paint_NET
 
27.04.21
11:31
По теме - также придерживаюсь (7), и это не только к 1С относится.
55 fisher
 
27.04.21
11:33
(53) Я с какого-то периода даже в итераторах перешел на длинные мнемонические (за редкими исключениями). Зря я, что ли, слепой десятипальцевый осваивал :)
56 Paint_NET
 
27.04.21
11:35
(55) Дело хозяйское, конечно, но мне так удобнее эти итераторы вычленять при беглом просмотре кода. Если одна буква - то точно итератор, а не хрен пойми что :)
57 Kassern
 
27.04.21
11:37
Есть же правила образования имен переменных о чем спор?
https://its.1c.ru/db/v8std/content/454/hdoc
58 Paint_NET
 
27.04.21
11:48
(57) В обоих случаях назначение переменной понятно и однозначно. Вопрос лишь удобства группировки в варианте 1.
59 fisher
 
27.04.21
11:51
(56) Выражения во вложенных циклах легче читаются.
60 Kassern
 
27.04.21
11:53
(58) Я про сообщения (3) (14) (35)
61 mistеr
 
27.04.21
11:56
(35) Давай пример своего правильного кода. Повосхищаемся.
62 spiller26
 
27.04.21
12:02
соглашусь с (48)
пДоговорНомер
А так называй как хош

ДоговорНомер
63 Bigbro
 
27.04.21
12:03
(48) Реквизиты то да.
но речь про переменную.
64 Paint_NET
 
27.04.21
12:26
(60) Аа, да там даже комментировать нечего.
65 Oftan_Idy
 
27.04.21
12:26
(0) Какая нафиг разница ?
66 Cthulhu
 
27.04.21
12:30
(65): для ускорения понимания (при чтении кода) того, что содержится в переменной.
последовательность "наименование объекта - детализация" тоже кажется оптимальнее. да и по алфавиту более близкое по смыслу будет стоять рядом (в списочных представлениях объектной модели)..

ДоговорНомер
67 Irbis
 
27.04.21
12:31
Первое слово отвечает на вопрос что и существительное, остальное потом.

ДоговорНомер
68 Hans
 
27.04.21
12:31
вот и вывели правило  >>> последовательность "наименование объекта - детализация"
69 fisher
 
27.04.21
12:33
(68) Это доменный принцип наименования. В интернете примерно также :)
Но в понятном контексте это лишнее и рулит естественный язык.
70 Hans
 
27.04.21
12:39
Надо значит читать совершенный код, чистый код. Может там это есть.
71 Hans
 
27.04.21
12:42
(65) Надо в одной парадигме программировать. Сегодня так, завтра так напишешь. Бардак будет.
72 Mikeware
 
27.04.21
12:50
(71) ©анекдот про врача, строителя и программиста
73 Жан Пердежон
 
27.04.21
13:38
вроде не пятница
74 Hans
 
27.04.21
14:25
Стас, ты зачем мою ветку топишь? Не хочешь что бы я выходил из гугл программистов?
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс