Имя: Пароль:
1C
 
Английский язык кода
0 quest
 
25.02.09
05:07
Что-то в поледнее время стало удобней писать/читать листинги на английском чем на русском (после одного товарища наследство). А как вам английский в коде? Это вообще гуд?
1 Trance_1C
 
25.02.09
05:16
(0) У меня на английском как-то компактней и стройней код выходит, а вцелом тож самое. На нашем великом и могучем лучше книги писать а не программы. :)
2 Андрюха
 
25.02.09
05:26
Мне чет на инглише не вкатывает, может привык
3 rie
 
25.02.09
05:27
(0), (1) Завидую я вам. Знать в совершенстве английский, включая английскую финансовую, бухгалтерскую, налоговую и т.д. терминологию... Об этом я даже не мечтаю.
4 Kavar
 
25.02.09
05:29
Когда начал работать с 1С пытался на английском писать. т.к. другие языки программирования знал.
Но, со временем, на русский перешел.
Ибо, от русского совмем отказаться нельзя - названия объектов, сообщения итдитп на русском.
Совсем не прикольно раскладку туда-сюда менять на ходу.
5 quest
 
25.02.09
05:31
(3) не о терминологии и именовании объектов метаданных речь. Вот пример кода
function ReturnUniqueValues(table,who,columnName)
   var y;
   //? assertType(Table,"valueTable")
   //? assertNotEmpty(Table)
   y = Table.Copy();

   was = false;
   for each x in table do
       if x[columnName] = who then
           was = true;
           rowY= y.Add();
           for each row in Table.Columns do
               rowY[row.Name] = x[row.name];
           enddo;
       else
           if was then
               was = false;
               rowY= y.Add();
               for each row in Table.Columns do
                   rowY[row.Name] = x[row.name];
               enddo;
           endif
       endif
   enddo;
   
   return rowY;
endFunction

проще читается чем по русски или сложнее?
6 quest
 
25.02.09
05:33
(4) как-то даже перстал замечать. Было бы еще автодополнение независящим от выбраного языка в конфигураторе - была бы сказка
7 rie
 
25.02.09
05:57
(5) Для столь простого кода - безразлично, что по русски, что по английски.
Впрочем, и здесь я не уверен в удобстве выбора идентификаторов. Конструкция

for each row in Table.Columns do

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

И ведь такими функциями ограничиться невозможно. И возникнет либо трудночитаемый двуязычный текст, либо жуткие идентификаторы типа ViyavlennayaNiedostacha. Либо же лазить за неизвестными терминами в словарь и предвкушать маты читателя программы, которому тоже придётся не вылезать из словаря в попытках понять, что же тут имелось в виду.
8 Kraft
 
25.02.09
06:00
(7) +1
9 у лю 427
 
25.02.09
06:13
по английски - зарезервированные слова, свойства и методы, предопределенные процедуры (имена)

По русски - Имена переменных и объектов

Сразу видно, что есть что и очень легко ориентироваться

Пример

procedure ПриВыбореВалюты()
   if ВалютаТовара.Selected() = 0 then
       ВалютаТовара = Const.Рубль;
   endIf;
   Курс = ВалютаТовара.Курс.GetValue(ДатаДок);
   if LinesCnt()>0    then
       SelectLines();
       while GetLine() =1 do
           ВалютаЦены = ВалютаТовара;
       endDo;
       
   endIf;
   
   ТаблицаТоваров.Поставщик =
   ТаблицаТоваров.Товар =
   
   ТаблицаТоваров.GroupBy(  ,  );
   ТаблицаТоваров.GetLineByNumber(1);
   
   
EndProcedure  //ПриВыбореВалюты
10 у лю 427
 
25.02.09
06:16
К СВЕДЕНИЮ ОСОБО ДУПЛИСТЫХ ТОВАРИСЧОФ - при наборе текста примера раскладка вручную не менялась НИ РАЗУ - все делает сама платформа (и 7 и 8 это умеют делать штатно). Если у вас не умеют - вы лохи, которым продали неисправную платформу...
11 Vld
 
25.02.09
06:19
(10) И как раскладку менять платформой, научи
12 у лю 427
 
25.02.09
06:20
читайте документацию, сэр
13 Андрюха
 
25.02.09
06:20
(12) 1С:PuntoSwitcher?
14 quest
 
25.02.09
06:21
(12) если правильно понял - шаблоны замены? типа заменить если на if?
15 у лю 427
 
25.02.09
06:26
(14) умный?  оно и видно.... сразу....

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

Также шаблон может вкатить 2-3 страницы кода....

вот маленький шаблончик - Открытие формы внутр обработки (из МД)
Набираем ВНУТР ОБРАБОТКА и отвечаем на вопросы....


// открываем внутреннюю обработку
<?"Имя списка параметров"> = CreateObject("ValueList");
<?"Имя списка параметров">.Set("Контекст",глВзятьКонтекст(Context));
<?"Имя списка параметров">.Set("<?>", );
<?"Имя списка параметров">.Set("", );
<?"Имя списка параметров">.Set("", );
   
OpenForm("Обработка.<?,Обработка>",<?"Имя списка параметров">);
16 у лю 427
 
25.02.09
06:28
дурацкие шаблоны заменяют
юю на >
бб на <
17 Trance_1C
 
25.02.09
07:12
(10) оказывается и такую платформу франчи могут продать :))
18 Jolly Roger
 
25.02.09
07:15
(15) открытие, достойное гения... 1с...
19 у лю 427
 
25.02.09
07:34
заметь - я так работаю уже много лет и не предлагаю всем поголовно юзать шаблоны и писать в этом стиле....
20 у лю 427
 
25.02.09
07:34
кстати, в шаблонах есть вложенные шаблоны, в доке не описанные - позволяют творить чудесатые вещи....
21 quest
 
25.02.09
08:05
(20) А пример как вызвать вложеный шаблон - можно? что-то не могу сообразить как сделать
22 quest
 
25.02.09
09:29
ап?
23 John83
 
25.02.09
09:38
согласен с (7), особенно когда в отладчике ковыряешься, то примерно понимаешь для чего нужна функция или процедура, а со словариком или в трансклипе не прикольно будет
24 quest
 
25.02.09
09:40
(20) как это сделать? ааааааа.... уже рабочий день, а я все с этими шаблонами разобраться не могу
25 hhhh
 
25.02.09
10:11
(24) ты что хочешь за 15 минут разобраться? Это тебе задание на лето.
26 skunk
 
25.02.09
10:23
писать надо согласно стиля утвержденного в компании...
27 Лефмихалыч
 
28.02.09
02:46
(10) мерзость
28 Лефмихалыч
 
28.02.09
02:46
(27)>>9
29 у лю 427
 
28.02.09
08:17
нас рать
30 ShoGUN
 
28.02.09
08:57
Двуязычная белиберда по-моему ни разу не читабельна. Хотя наверное всё ж дело привычки...
А вообще мне по барабану - русский, английский...
31 у лю 427
 
28.02.09
09:24
может и белиберда, зато лохи типа Лефмихалыча пролетают, как корыто навоза, над деревней
32 Rie
 
28.02.09
09:30
(30) По барабану - при условии, что человек, писавший по-английски, знает английский. Разбирать код, написанный человеком, познания которого в английском ограничиваются "This is a pencil", - задача не для слабонервных.
33 MMF
 
28.02.09
10:00
Гнать в шею долбодятлов, использующих смешанный англо-русский код. Или транслит (не все помнят, как по-буржуйски звучат НДС, Соцстрах, Уценка и т.д.)
Программлю 70/30 времени в Не1С/1С и английский код привычнее русского. Но
Гоvнокод от доморощенных теоретиков защиты от новичков на самом деле вызывает не затруднения в его чтении, а отвращение.
34 ShoGUN
 
28.02.09
10:11
(32) Да, пожалуй - прав.
35 Привратник
 
28.02.09
10:16
Сколько эстетов собралось...
36 у лю 427
 
28.02.09
10:49
ММФ изволит сердиться? Значит, цель достигнута.....
37 у лю 427
 
28.02.09
10:50
кстати, НДС, Соцстрах, Уценка и т.д. пишу по русски....
38 wertyu
 
28.02.09
10:55
(37) а чо так? добавил бы шаблоны...
39 MMF
 
28.02.09
11:30
(36) странные у тебя цели. В одном нашем филиале сидит такой адепт английского языка и постепенно заsирает конфигурацию своими изысками. Мне иногда приходится смотреть его творения <тут смайлик безудержной рвоты>. Для себя пиши хоть на чукотском, а если твой код будут смотреть другие люди - придерживайся стандартов.
(37) ну, вобщем, картинка, которая тебя в таком случае олицетворяет, тебе известна.
40 Advan
 
28.02.09
11:51
программить на 1с по английски дурной тон - большенство программят по русски - и разбирать такой код другому прогеру сложно. А в 1с главное открытость.
41 у лю 427
 
28.02.09
14:32
(40) Я начальник - ты дурак, ты начальник - я дурак...
Вот станешь моим начальником - будешь стиль написания определять
А пока это делаю я....


(39)
Мне часто приходится смотреть творения пишуших как по русски, так и по английски -- <тут смайлик безудержной рвоты>.

За русские имена А1, Перем1, Перем2, Перем3, Перем4, Перем5 или английские
SaldoNachK, SaldoNachD, Summa, Kolvo и д.т. - да, надо стрелять....

(38) надо добавить шаблон для обращений к тебе wertyu - ВерчуКуем. Не возражаешь?
42 у лю 427
 
28.02.09
14:34
+(41) гораздо более неприятно наблюдать перлы не только в каментах, но в названиях переменных (как в (40) - "большенство", вычесляем, вычисляим и т.д.)

а сравнивая с кодом, понимаешь - кодеры (большинство в 1С) - это идиоты. Если они не знают русский язык - они и кодят то соответственно....
43 Torquader
 
28.02.09
23:41
Написание в двух языках иногда приводит к забавным ощущениям при отладке.
Например, в одном месте вы писали "СторонаКоробки" всё по русски, а в другом модуле вы не заметили, что первая C у вас английская.
Вот тогда сразу вспоминаешь про два языка по другому.
P.S. я с переменной "е" так уже несколько раз накалывался.

А вообще, к английским именам привыкаешь, так как приходится писать на многих языках программирования - а они все английские (Си, php, скрипты и прочая гадость).
44 ShoGUN
 
28.02.09
23:46
(43) Круче всего накалываться с "C". Хотя если все реализовано шаблонами - вероятность этого уменьшается - раскладка не переключается.
(42) Петь, вы с MMF берете крайние случаи. На самом деле неважно, на каком языке код, важнее, чтобы был единый стиль и все, кто с кодом работает - его понимали быстро. А идиотизм непосредственно с языком написания кода не связан.
45 Torquader
 
28.02.09
23:49
Если код нормально отформатирован, то это уже половина дела в понимании.
P.S. "очепятки" бывают везде - с шаблоном, кстати, будут во всём коде сразу, и работоспособность кода не пострадает.