Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Источник : Практическое пособие разработчика (1С:Предприятие 8.1) Стр.62:Автор пишет, что согласно стандартам 1С одну и ту же процедуру нельзя сопоставить сразу нескольким событиям, т.е. каждое событие должно иметь свой собственный обработчик. Считаю это существенным неудобством. Все же из любопытства пробую нарушить требование и назначить одну и ту же процедуру в качестве обработчика сразу двух событий (перерасчет поля "Сумма" как при изменении "Количества", так и при изменении "Цена"). Результат : Всё работает как нужно – сумма пересчитывается как при изменении цены, так и при изменении количества. Можно конечно перестраховаться и создать под каждое событие свой обработчик, т.е. две процедуры, содержащие один и тот же код вместо одной, для того, чтобы соответствовать стандартам 1С, но… «если результат один и тот же, зачем платить больше»(с) - т.е. если работает вариант с назначением одной процедуры в качестве обработчика событий сразу нескольким событиям - зачем извращаться дублированием кода? Или в 1С впоследствии что-то может работать некорректно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2009, 12:04 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Compositum, Поверь мне ты делаешь все правельно, это автор книжки извращаеться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2009, 14:15 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Compositum, Это стандарт перенятый из "большого программирования". Название обработчика генерируется автоматически и состоит из названия элемента объединенного с названием события, которое обрабатывается в данном обработчике. Задумайтесь какие плюсы от выполнения данного стандарта получите не только вы в настоящий момент, но и другой разработчик который будет работать с вашим приложением после вас. И просто задумайтесь для чего существуют стандарты. Кстати, уже на 63 странице автор использует общую процедуру в другом документе. И не забывайте в данной книге все довольно упрощено, и объем кода мал. И автор, надо бы сказать, плохого в книге не советует. Василий Викторович, ну-ну я поработал с клоунами генерирующими макаронный код... . IMHO, занимались бы вы и дальше студенческими курсовиками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2009, 21:32 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
слоненок Это стандарт перенятый из "большого программирования"... В "большом программировании"(с) такой подход считают неправильным (Макконнелл, Петцольд, Рихтер, Троелсен и т.п.), а дабы избежать дублирования кода и мук в процессе отладки существует рефакторинг . слоненок Василий Викторович, ну-ну я поработал с клоунами генерирующими макаронный код... . IMHO, занимались бы вы и дальше студенческими курсовиками. Извините, но... вы вообще в курсе, что такое "макаронный код"? Вопрос риторический, ибо судя по всему нет, раз пишете такое применительно к данному случаю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2009, 22:35 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Compositum, Единственным ограничением, могущим помешать Вам использовать один и тот же обработчик события является возможная разнородность событий, при которой просто имеет место быть различный набор формальных параметров обработчика. Тут уж никак. Но, с другой стороны - кто Вам мешает сделать нужную процедуру и вызывать её из разных обработчиков, передавая нужные параметры? Это будет соответствовать правилам хорошего тона, как описано в упоминаемых коллегами трудах Макконнелла и Ко. Но эти правила - не стандарт , и автор практического пособия совершенно не прав ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 11:13 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Compositum Все же из любопытства пробую нарушить требование и назначить одну и ту же процедуру в качестве обработчика сразу двух событий (перерасчет поля "Сумма" как при изменении "Количества", так и при изменении "Цена") угу... а потом нужно будет добавить в обработчик какую-нить проверку... самое простое, что напрашивается в примере - проверку остатков, которая совершенно не лишняя при вводе количества и совершенно не нужна при изменении цены... будешь проверять от какого поля событие? условия всякие писать... а потом окажется, что проверка остатков нужна в расходной накладной, а в приходной - нет опять проверки ставить от какого поля какой формы? в результате получишь код, в котором чрез пол года сам мосх сломаешь, не то, что кто-то посторонний :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 11:56 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Chop, Тоже согласен, надо с умом к этому вопросу подходить. ИМХО тут надо сразу выявить общий для всех случаев код и его выделить в отдельную процедуру. А все сопутствующие проверки выполнять в соответствующих различных обработчиках событий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 12:19 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
nicktcherнадо с умом к этому вопросу подходить. ИМХО тут надо сразу выявить общий для всех случаев код и его выделить в отдельную процедуру в общем случае фиг ты сможешь выявить для всех случаев код... а предусмотреть все возможные хотелки заказчика – тем более потому и приняты "стандарты", "правила хорошего тона" потому и проще "писать по стандарту", чем в каждом случае решать такие задачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 12:52 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Код читать неудобно потом, вот и всё. А так извращайся как хочешь. Другим токо не показывай, а то поматерят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 14:04 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Chop в общем случае фиг ты сможешь выявить для всех случаев код... ... Ну почему же? Есть масса однотипных алгоритмов, одинаковых для разных объектов. Например пересчет по курсу из валюты в валюту или в таб.части документов почти всегда СуммаВсего = Количество * Цена ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 14:48 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Угу, только лучше где-нить написать функцию, которая перещитывает сумму всего и вызывать ее из всех обработчиков событий. Это будет более наглядно и логично ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 15:05 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
semyons, так я об этом и написал)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 16:01 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Угу :) пропустил сообщение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 16:03 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
nicktcherтак я об этом и написал)) по факту ты написал, что надо соблюдать стандарты... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 16:28 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Compositum, судя по тому, что вы решили блеснуть знанием термина "рефакторинг", вы даже на секунду не задумались над вопросами, которые я задал. Кроме того задумайтесь, чем будет отличаться рефакторинг своего кода (или просто анализ чужого кода) в 1С от рефакторинга (..) в C#. Макаронный код это признак "прямоточного мышления" так называемых "программистов". Ваша поспешность в формулировании выводов и рассуждения в стиле "зачем платить больше" говорит о многом. Причем смешно: вам на простом примере, практически в самом начале книги автор пытается донести простую мысль, а вы сходу брыкаетесь, из себя сегодняшнего Рихтера изображать начинаете. Прямо яслисад како-то. И еще раз. Когда вам говорят: "СТАНДАРТ", - то это немного не тот момент, когда нужно блистать своим гением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2009, 23:33 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
вообще если посмотреть на название топика ("Нарушать ли стандарты 1С, если решение работает"), сразу становится ясно что тема из разряда "давайте пофлудим". Признаю, я попался на эту наживку :7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 00:00 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
слоненок, Словесный понос - не есть хорошо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 09:03 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
пишете для себя - делайте чего хотите пишете в команде - делайте это по общей нотации пишите "коробку" - извольте соответствовать на "Совместимо", а то и "Совместно" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 09:46 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
слоненок, На всякий случай расшифрую свое предидущее сообщение, дабы обид не было... слоненок Название обработчика генерируется автоматически и состоит из названия элемента объединенного с названием события, которое обрабатывается в данном обработчике. Это не панацея - название всегда можно переименовать при необходимости (решение о наличии которой принимается разработчиком, как разумным существом, а не роботом, тупо следующим "стандартам") и этого никто не запрещает. Еще Пётр I издал для инженеров указ следующего содержания - мол всех случаев в жизни не предусмотреть, на всё правил не написать, а посему нужно думать головой и принимать решения самостоятельно сообразно ситуации (передан смысл). Возможно вас это удивит - но сие изречение актуально и до сих пор. слоненок Задумайтесь какие плюсы от выполнения данного стандарта получите не только вы в настоящий момент, но и другой разработчик который будет работать с вашим приложением после вас. Как много букв и как мало в них смысла. Странное у вас понятие о "плюсах"... Раздувание кода путем дублирования его содержимого, когда его можно организовать более компактно - с каких пор это стало плюсом? "Другие разработчики" (с)? Считаете, что они спасибо скажут за дубляж? Сомневаюсь. слоненокИ просто задумайтесь для чего существуют стандарты. Это вообще к чему было написано? Не нужно абстракций. Я где-то написал, что стандарты как таковые - это плохо? Если уж беретесь отвечать, так будьте любезны - читайте внимательней - речь о конкретном пункте, конкретных "стандартов". Не нужно фраз ни о чем. слоненок вы решили блеснуть знанием термина "рефакторинг" глупое высказывание. Я же не заявляю, что пытыясь блеснуть знанием букв вы что-то написали в топике. Упоминание о "рефакторинге" (с) применительно к теме топика вполне уместно. Желание поизвращать написанное, выдавая желаемое за действительное, лучше держите при себе. слоненок вы даже на секунду не задумались над вопросами, которые я задал. Старайтесь отвечать аргументированно, а не бросаться абстрактными фразами (если уж беретесь отвечать). слоненокКроме того задумайтесь, чем будет отличаться рефакторинг своего кода (или просто анализ чужого кода) в 1С от рефакторинга (..) в C#. А разве я где-то писал, что есть разница? Чем вызвана данная фраза? Вы вообще вникаете в то, что написано мною, или просто набираете буквы? слоненокМакаронный код это признак "прямоточного мышления" так называемых "программистов". Ваша поспешность в формулировании выводов и рассуждения в стиле "зачем платить больше" говорит о многом. Ужас... Опять эти абстрактные фразы ни о чем... неужели даже такие вещи мне нужно разжевывать... Самое простое решение всегда является самым лучшим. Имхо избегать дублирование кода - самый простой и удобный вариант, т.к. 1. С таким кодом удобней работать при отладке. 2. Объем набираемого кода значительно меньше, а следовательно работа ведется быстрее. слоненокПричем смешно: вам на простом примере, практически в самом начале книги автор пытается донести простую мысль Какую мысль? О том, что нужно плодить код? слоненока вы сходу брыкаетесь, из себя сегодняшнего Рихтера изображать начинаете. Прямо яслисад како-то. Задать вопрос о том, зачем писать именно так, как советует автор, когда можно реализовать это более компактно - это в вашем понимании "изображать сегодняшнего Рихтера"? Вы мнительный человек однако... Действительно, "яслисад" (с)... слоненоквообще если посмотреть на название топика ("Нарушать ли стандарты 1С, если решение работает"), сразу становится ясно что тема из разряда "давайте пофлудим". Признаю, я попался на эту наживку :7. Ужас... даже комментировать не буду данный бред. Вы мнительный человек, все вам кругом "ясно" и "очевидно" но только в каком-то извращенном свете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 10:02 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
да-а... не хотелось бы мне править код после афтара... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 10:12 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Chopда-а... не хотелось бы мне править код после афтара... :) собственно как и мне после Chop ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 10:12 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
CompositumВ "большом программировании"(с) такой подход считают неправильным (Макконнелл, Петцольд, Рихтер, Троелсен и т.п.), а дабы избежать дублирования кода и мук в процессе отладки существует рефакторинг... Флудану и я) Вы неправильно понимаете понятие "дублирования" и ссылки на уважаемых людей здесь совсем не к месту. После такого кода как у вас как раз и делается рефакторинг (когда смешиваются слои бизнес-логики и пользовательского интерфейса). В вашем случае должно быть 2 обработчика, и в обоих должна вызываться 1 процедура, которая и будет заниматься пересчетом суммы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 10:31 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
Господин ПЖпишете для себя - делайте чего хотите пишете в команде - делайте это по общей нотации пишите "коробку" - извольте соответствовать на "Совместимо", а то и "Совместно" Согласен, за исключением того, что для себя можно писать тяп-ляп. Надо сызмальства приучаться к хорошему тону. Иначе в команде поработать не удастся - все плеваться будут) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 10:35 |
|
||
|
Нарушать ли стандарты 1С, если решение работает?
|
|||
|---|---|---|---|
|
#18+
nicktcherГосподин ПЖпишете для себя - делайте чего хотите пишете в команде - делайте это по общей нотации пишите "коробку" - извольте соответствовать на "Совместимо", а то и "Совместно" Согласен, за исключением того, что для себя можно писать тяп-ляп. Надо сызмальства приучаться к хорошему тону. Иначе в команде поработать не удастся - все плеваться будут) в команде есть обычно нотация... Ее программист и изучает в начале рабоыт в конторе. Напишет прау раз криво, получит по рогам. Они научится или пойдет домой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2009, 10:37 |
|
||
|
|

start [/forum/topic.php?fid=28&fpage=138&tid=1523566]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
70ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
89ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 218ms |

| 0 / 0 |
