Применение cтандартов и методик разработки конфигураций на практике

Публикация № 1861930 15.05.23

Разработка - Рефакторинг и качество кода

Система стандартов и методик разработки конфигураций соглашения при написании кода оформление модулей структура модуля шаблоны текста локализация оформление текстов запросов.

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

Что такое система стандартов и методик разработки конфигураций и зачем она нужна?

Основные аргументы для использования.

Система стандартов разработки конфигураций это общепринятые правила, описанные на сайте 1С, по которым рекомендуется вести разработку на платформе 1С. Также стал часто встречать на рынке труда требование к разработчикам на знание и применение стандартов разработки.

1С рекомендует, но многие ли из разработчиков соблюдают эти стандарты, особенно в начале карьеры или, например, когда горят сроки, а заказчику уже нужно что-то ставить, тогда не важно, что там под капотом, лишь бы работало по заявленным требованиям. Второй момент, а нужно ли вообще соблюдать эти стандарты, если и так все работает, квалифицированный специалист разберется и в таком коде.    

Я все же склоняюсь к тому, что нужно соблюдать стандарты и методики разработки конфигураций от 1С, пришел к этому выводу исходя из личного опыта. Повидав много решений, "самописных" конфигураций, различных доработок еще начиная с обычных форм, тогда действительно немногим разработчикам были известны эти стандарты и каждый писал как мог, как умел. Со временем бизнес-требования усложнялись, как следствие усложнялась архитектура и код решения и, если он изначально написан не по стандартам и содержит много авторского кода, сопровождать и дорабатывать его становится сложнее и дольше, чем структурированный код с понятными названиями имен переменных, имен таблиц и реквизитов, имен функций и процедур, использования БСП и т.д. К тому же нельзя забывать про сменяемость кадров, и общепринятые правила со временем приобретут более массовый характер, поэтому применяйте их сейчас, чтобы быть востребованным завтра. 

Вплотную столкнулся со стандартами и глубоким изучением их на одном из моих мест работы, где разработчики осуществляли перевод отраслевого решения с обычных форм на управляемые, на этом месте работы разработчиков обязали переводить код по системе стандартов. К тому моменту я знал некоторые стандарты, но далеко не все. Решил уделять в день в среднем по часу для изучения и закрепления на практике свод правил. Стандарты находятся в открытом доступе по ссылке 1С:Предприятие 8. Система стандартов и методик разработки конфигураций. Но свод правил немаленький, и все в голове не удержишь и не запомнишь, а постоянно бегать по закладкам такое себе удовольствие, и тогда возникла идея фиксировать изученные правила в шаблонах текста в конфигураторе. Суть в том, что во время разработки, когда необходимо применить стандарт, выбираешь нужный в контексте подсказки шаблон и адаптируешь его в участке своего кода.

Продемонстрирую, как это выглядит на практике, к примеру, создали новый объект метаданных, добавили управляемую форму и начали описывать логику работы формы. Чтобы это сделать по стандартам, нам сначала нужно будет изучить сам стандарт, например, по ссылке Соглашения при написании кода > Оформление модулей > Структура модуля, далее все это закрепляем в шаблонах текста, у меня получилось 4 отдельных стандарта по этому разделу. Создаем новые шаблоны текста в конфигураторе "Сервис - Шаблоны текста". Для удобства я создал новые шаблоны текста "Действия - Новый файл шаблонов", чтобы их легко можно было копировать на другие системы и применять в отдельности.

 

    

Первый шаблон - "Ст_РазделыМодулейФорм" (поставил префикс Ст_ вначале названия шаблона для более быстрого вызова в коде), содержание (скопировал из описания стандарта):

 
 Ст_РазделыМодулейФорм

 

Второй шаблон - "Ст_РазделыМодулейКоманд", содержание:

 
 Ст_РазделыМодулейКоманд

 

Третий шаблон - "Ст_РазделыМодулейОбъектовМенеджеровНаборовЗаписейОбработокОтчетов", содержание:

 
 Ст_РазделыМодулейОбъектовМенеджеровНаборовЗаписейОбработокОтчетов

 

Четвертый шаблон - "Ст_РазделыОбщихМодулей", содержание:

 
 Ст_РазделыОбщихМодулей

 

Далее для формы объекта я вызываю шаблон -

 

 

"Ст_РазделыМодулейФорм" и формирую структуру модуля, далее по областям распределяю процедуры и функции (также написанные по стандартам). Что имею в итоге - более читаемый и структурированный код, который в дальнейшем легче отладить и сопровождать.

Или, например, мне нужно собрать несколько текстов запросов в пакет, открываю стандарт Реализация обработки данных > Работа с запросами > Оформление текстов запросов, сохраняю, например, такую конкатенацию:

 
 Ст_КонкатенацияЗапросов

 

в новый шаблон текста "Ст_КонкатенацияЗапросов" и вызываю этот шаблон в дальнейшем, где это будет необходимо.

Также, например у вас разработка с учетом локализации, изучаем стандарт Требования по локализации и описываем, например, стандарт сообщения с учетом локализации "Ст_Сообщение" (стандарт ОбщегоНазначенияКлиентСервер.СообщитьПользователю устарел. С версии БСП выше 2.1.4 cледует использовать ОбщегоНазначенияКлиент.СообщитьПользователю или ОбщегоНазначения.СообщитьПользователю), с кодом:

 
 Ст_Сообщение

 

Еще пример по стандартам Реализация обработки данных > Обработка и модификация данных > Транзакции: правила использования, хотим где-то явно открывать транзакцию, создаем шаблон "Ст_ТранзакцияЯвная" с содержанием:

 
 Ст_ТранзакцияЯвная

 

Таким образом со временем я формирую помощник по всеми стандартам и при необходимости использую уже сохраненные шаблоны текста, вместо того чтобы бегать по разделам в браузере, выискивать подходящий стандарт и, в конце концов устав от поиска, написать так, как получилось :), в итоге забросив совсем эти стандарты и писать так, как можешь :). Вот такой небольшой кейс из своей практики, который лично мне экономит время и улучшает качество моего кода. Кроме того, я привыкаю писать по стандартам, стал лучше читать и выявлять потенциальные ошибки в своем и чужом коде, лучше стал разбираться в применении тех или иных методов. Например вместо метода ОписаниеОшибки() лучше использовать ИнформацияОбОшибке() более подробное описание тут Соглашения при написании кода > Использование конструкций встроенного языка > Перехват исключений в коде .

Спасибо за внимание, хорошего дня.

 

Также предлагаю решения вашему вниманию:

Перенос данных из 1С:Альфа-Авто ред. 5.1 в 1С:Альфа-Авто ред. 6.1. Переносятся справочники, остатки и документы с движениями.

Простой пример разработки регулярного обмена с использованием БСП на примере ERP 2.4 и УПП 1.3.

Правила обмена данными из конфигурации "1С:Управление производственным предприятием 1.3" в "1С:Бухгалтерия предприятия 3.0".

Правила обмена данными из Бухгалтерии предприятия ред. 3.0 в Управление производственным предприятием ред. 1.3 для выгрузки платежных документов и связанных объектов.

Универсальный отчет для сравнения записей регистров накопления между базами.

Универсальная выгрузка и загрузка зарегистрированных справочников и документов по узлу.

Обработка по заполнению данных об автомобилях с сайта gibdd.ru, для конфигурации "Альфа - Авто: Автосалон+Автосервис+Автозапчасти ПРОФ, редакция 5.1".

Загрузка данных из унифицированных форм УПД и ТОРГ-12.

Список документов и их количество в базе.

Консоль запросов к базе Oracle для 1С, без использования специализированных программ.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Maximkasuper 15.05.23 13:08 Сейчас в теме
Хорошая идея. А можно выложить файл шаблонов, например, за SM?
2. improg 356 15.05.23 13:29 Сейчас в теме
(1) Конечно, это будет в следующей публикации.
Sergik_D; axelerleo; +2 Ответить
3. mikl79 117 15.05.23 13:47 Сейчас в теме
Спасибо, хорошая идея, надо взять на вооружение!
Sergik_D; improg; +2 Ответить
4. mikl79 117 15.05.23 15:41 Сейчас в теме
а как вы шаблон из формы вызываете?
у меня не получается, хотя я поставил в шаблоне флажок "Включать в контекстное меню"
нажимаю Ctrl+Пробел или Ctrl+Q - но там нет
вы используете TurboConf ?
5. mikl79 117 15.05.23 15:52 Сейчас в теме
(4), получилось.
нужно в шаблоне часть фразы взять в квадратные скобки и поставить флажок
при нажатии ctrl+Q выходит контекстное меню, но оно не такое как в публикации
Прикрепленные файлы:
10. improg 356 15.05.23 20:03 Сейчас в теме
(5) у меня все через Ctrl+Пробел работает, настройки такие как на скрине в конфигураторе Сервис - Параметры.
Прикрепленные файлы:
15. mikl79 117 16.05.23 06:43 Сейчас в теме
12. improg 356 15.05.23 20:26 Сейчас в теме
(4) В самом шаблоне такие настройки
Прикрепленные файлы:
16. mikl79 117 16.05.23 06:45 Сейчас в теме
(12), да, при таких настройках не будет работать через Ctrl+Q
6. RocKeR_13 1214 15.05.23 16:02 Сейчас в теме
В актуальных БСП процедура ОбщегоНазначенияКлиентСервер.СообщитьПользователю перенесена в область устаревших
Прикрепленные файлы:
11. improg 356 15.05.23 20:11 Сейчас в теме
(6) Дополню шаблоны, спасибо.
7. dhurricane 15.05.23 16:44 Сейчас в теме
Что касается конкатенации запросов, я частенько использую список значений. Мне кажется, такой подход выглядит чуть стройнее, чем с массивом, по крайней мере визуально:
ПакетЗапросов = Новый СписокЗначений;

ПакетЗапросов.Добавить().Значение =
"ВЫБРАТЬ
|    1 КАК Поле
|ИЗ
|    ВременнаяТаблица1";

ПакетЗапросов.Добавить().Значение =
"ВЫБРАТЬ
|    2 КАК Поле
|ИЗ
|    ВременнаяТаблица2";

ПакетЗапросов.Добавить().Значение =
"ВЫБРАТЬ
|    3 КАК Поле
|ИЗ
|    ВременнаяТаблица3";

ТекстЗапроса = СтрСоединить(ПакетЗапросов.ВыгрузитьЗначения(),
    ОбщегоНазначения.РазделительПакетаЗапросов());
Показать
8. triviumfan 79 15.05.23 18:00 Сейчас в теме
(7) Сомнительно)
Если для "стройности", то почему тогда не так?
МассивТекстовЗапросов = Новый Массив;

МассивТекстовЗапросов.Добавить(
"ВЫБРАТЬ
|	1");

//...
Показать
acces969; +1 Ответить
9. dhurricane 15.05.23 18:12 Сейчас в теме
(8) Моему глазу 1С-ника как-то привычна конструкция:
ТекстЗапроса = 
"ВЫБРАТЬ
|    1";

Соответственной мой пример выше эту конструкцию повторяет.
13. cosmo2004 38 15.05.23 20:51 Сейчас в теме
Идея не совсем оригинальная, у Павла Чистова были шаблоны с оформлением модулей https://chistov.pro/utilities/st83/
artbear; mikl79; +2 Ответить
19. improg 356 16.05.23 15:01 Сейчас в теме
(13) Идея состоит в том чтобы быстрее, чаще и везде использовать стандарты 1С, тем самым поднять качество кода, а какой будет подобран инструмент тут как говорится на вкус и цвет, шаблоны 1С доступны всем, бесплатны и легко переносятся на любую систему где есть 1С т.е. соблюдай везде на аутсорсе, в штате или как фрилансер.
14. Кадош 15.05.23 23:38 Сейчас в теме
В ЕДТ же модули оформляются автоматически. К чему все это?
17. mikl79 117 16.05.23 06:51 Сейчас в теме
(14), не все ЕДТ юзают
mrChOP93; improg; +2 Ответить
18. improg 356 16.05.23 14:56 Сейчас в теме
(14) Я бы сказал многие его не используют.
20. DemetrKlim 130 16.05.23 15:59 Сейчас в теме
Если посмотреть на электрические провода, то почти всегда эти провода - разного цвета. Вроде бы удобство. Несомненно. Это облегчает задачи монтажа, ремонта и обслуживания электрооборудования? Чуть-чуть! А решает ли разноцветная окраска проводов проблему отсутствия чертежей (электрических схем)? Не решает абсолютно от слова "совсем".
Я несколько раз видел разные способы, чтобы обойтись в проектировании и разработке программного кода, что говорится, "без чертежей". Это и есть "раскрашивание проводов" применительно к программированию. Каждый человек найдет массу вариантов форматирования программного кода исходя из своих оценочных суждений, вкусовщина же в чистом виде. Фраза "умение читать чужой код" меня вообще умиляет) Пока не понял алгоритм - что может дать чтение кода? Конечно, любой ребус можно разгадать когда-то, но наступит временной и затратный момент, когда разгадывание программных ребусов становится дольше и дороже разработки "по-новой", т.е. быстрее и дешевле свое написать, чем чужое расковыривать, что очень часто и происходит.
Можно долго нарезать круги вокруг и придумывать колдовские заклинания, но реальным ответом будет только документирование каждого объекта конфигурации, формы, модуля процедуры или функции. Что когда-то и делалось. Программный код это изделие. И у него должны быть чертежи, описание и инструкция по обслуживанию. Желающие оспорить этот тезис смогут назвать фамилию гения, который это отменил однажды?))
mRconik; roman72; dmitryada; +3 Ответить
21. charmillion 17.05.23 07:10 Сейчас в теме
(20) Бесспорно должна быть документация как программная, так и пользовательская. Однако все электрические схемы не отменяют "раскраски проводов" Эти оба метода обязательны к применению.
А еще хотел сказать, что фраза "умение читать код" вполне себе верная. Даже не важно какой код чужой или свой трехмесячной давности, который уже мог стать "чужим". Да и как можно понять алгоритм без чтения кода? Ванговать? Опрашивать пользователей? Просто не нужно применять к этой фразе терминологический подход. В данном случае чтение кода это не чтение бульварного романа, а, как раз, изучение заложенного алгоритма.
22. DemetrKlim 130 17.05.23 07:42 Сейчас в теме
(21) По первой профессии я электронщик. На очень многие электронные изделия, которые прошли через мои руки, схем не было. И была методика "чтения проводников" на печатной плате. Смотрели на "донышко" текстолитовой плитки и по желтенькой медной паутине рисовали схему на бумаге. Да, это изощряло ум и память, но это только в советской экономике имело смысл - зарплату там платили "за время на работе". Кто сейчас оплачивает "разгадку ребусов" и "решение шарад"? И если это кто-то делает сейчас, то как долго этот работодатель останется платежеспособным? Постоянно оплачивать разгадку старых ребусов путем создания новых? А новый код будет понятнее следующему "чтецу кода"? Если слегка отодвинуться от компьютера и поближе подсесть к кассе, то кроме профессиональных (любимых!) интересов, появится еще и прагматизм и хозяйская "жабистость и жмотистость". Большинство интеллектуально развитых людей любят кроссворды и ребусы, вопрос только - кто будет оплачивать эти "профессиональные квесты", не приносящие предприятию совершенно никакой пользы?
Я думаю, что все эти "любимые игрушки" программистов потому и обсуждаются, что менеджмент в основном своем составе не умеет руководить сферой IT. Умниками вообще тяжело рулить) Вот эти детки без присмотра и расшалились, причем, игрушки они себе покупают за счет предприятия - занимаются тем, чем сами хотят.)
23. charmillion 17.05.23 09:35 Сейчас в теме
(22) Не поймите меня неправильно, я не отрицаю полезность документации, даже наоборот - пропагандирую ее. Однако написание документации для быстроразвивающейся системы дело не простое. Тоже требует затрат. В связи с этим есть достаточно существенная вероятность, что будут расхождения. Код не обманет, как и дорожки в Вашем примере, а вот документация может.
Да и бессмысленно писать документацию для каждой строки кода. А когда начинаешь абстрагироваться, тогда в документации написано описание функции "Как должно быть", а в коде "Как есть". Если возникают ошибки, нужно начинать читать код.
Кстати, для создания документации тоже есть стандарты, практики, шаблоны и архитектуры. Да и чтение документации - особое мастерство.
24. DemetrKlim 130 17.05.23 09:42 Сейчас в теме
(23) Что заставляет верить цифрам на экране компьютера? То есть код - это непредсказуемо? Тогда как работать с информацией, производной от этого кода? Пока наша "цифровизация" носит чисто декоративный характер - такой режим работы прощается. И то не везде.
На последнем форуме "IT Core" выступал ведущий IT-шник МинАтома. Вот в этой сфере непредсказуемый программный код даже не предполагается. Этим выступающий и объяснил очень медленные переходы на новые версии и платформы программирования. Сама отрасль не предполагает работы программистов в режиме "догони блоху". Когда в остальных отраслях начнут серьезно относится к цифрам - там тоже работа пойдет медленнее, зато наверняка. А пока режим "а давайте попробуем!" Все "на живую нитку" и "в порядке эксперимента")
25. charmillion 17.05.23 10:05 Сейчас в теме
(24)
На последнем форуме "IT Core" выступал ведущий IT-шник МинАтома. Вот в этой сфере непредсказуемый программный код даже не предполагается. Этим выступающий и объяснил очень медленные переходы на новые версии и платформы программирования.

Бесспорно! Есть сферы, в которых ошибка в коде может серьезно повлиять на процессы, а возможно и чьи-то жизни: энергетика, космос, оборонка и т.п.
Я уверен в том, что во всех сферах хотят создавать быстрее и качественнее. То есть медленная работа не цель, а необходимость, связанная с несовершенством.
26. DemetrKlim 130 17.05.23 10:11 Сейчас в теме
(25) Я стараюсь к цифрам учета относиться так же щепетильно) Кто-то увидит не ту цифру и получит инсульт!) Да и поводов для суеты не вижу. Если посмотреть на результаты всех этих "срочных" суетных и судорожных работ хотя бы за 3 года, то нетрудно увидеть быстрый бег по кругу. Реальных продвижений в нужную сторону - абсолютный мизер. Куча мест, где ЕРП "срочно дорабатывают" лет по 5-7))
charmillion; +1 Ответить
27. charmillion 17.05.23 10:52 Сейчас в теме
(26) Опять согласен. Есть ли внутренняя программная документация на ERP? Я не знаю. Но можно предположить крайние варианты. Если нет, то они сами дураки :) и Ваши тезисы абсолютно справедливы. А если она есть, то тогда, то что сказали Вы неприменимо в данном случае и не влияет на процесс разработки. Истина где-то между этими значениями.
Но все же вернемся к теме. По моему скромному мнению использование автоматизации, упрощающих применение методик и стандартов, полезно и никак не связано с написанием документации.
28. DemetrKlim 130 17.05.23 11:00 Сейчас в теме
(27) Соглашусь при условии) Если средства автоматизации помогают достичь цели точного и быстрого документирования программного кода, то да. А если технические средства служат способом "откосить" или создать некий "эрзатц", якобы помогающий обойтись без документирования, то я - против. Вспомните, сколько красивых технических "отмазок" придумывал Ваш ребенок, когда он не хотел массив(мыть руки, идти спать, убирать игрушки, есть кашу)! ))
29. roman72 342 19.05.23 13:09 Сейчас в теме
Использование шаблонов кода - хороший инструмент для повышения скорости написания кода.
И этот инструмент лишь попутно может помочь соблюдать при этом требования стандартов.
Да и хорош он при написании кода с нуля.
А как быть с доработкой ранее написанного кода?

И как быть с уже имеющимся в наличии инструментом "Автоматизированная проверка конфигураций", который эту задачу решит гораздо лучше?
Тем более, часть стандартов 1С в них уже зашита.
И технология, которая в АПК заложена пригодна для нового и уже написанного кода.
В АПК фактически аналог шаблона - это пакет проверок.
Каждое утверждение стандарта может быть записано в виде атомарного элемента АПК.
Элементы собираются в пакеты.
Пакеты запускаются для проверки текста кода.
Пакетов много, элементы в пакеты могут собираться в любой комбинации = множество разных проверок.
30. improg 356 19.05.23 13:49 Сейчас в теме
(29) 1) Шаблоны дисциплинируют самого разработчика в основном с этой целью я их использую и чем чаще применяю тем лучше запоминаю и даже на автомате уже вижу где код написан не по стандартам, а где все норм.
2) Когда провожу рефакторинг и что-то подзабыл или сомневаюсь в исправлении я открываю 2-е окно например модуль внешней обработки, запускаю нужный шаблон убеждаюсь что код нужно править и правлю в соответствии с шаблоном, таков мой алгоритм.
3) когда-то я запускал АПК проверка хорошая, но чаще использую phoenix bsl на нужных участках, поэтому про АПК не смогу ничего подсказать опять таки это все постпроверка, а шаблон мне помогает сразу писать верно, ну или максимально верно. И да могут быть случаи где нет этих инструментов, такой простой помощник самое то.
4) Не все могут себе позволить рефакторинг по времени, по ресурсам, поэтому лучше сразу писать максимально правильно в этом компоненте я их использую.
31. EvgeniuXP 20.05.23 14:12 Сейчас в теме
У фирмы 1С даже курсов нет по стандартам - но все его требуют.
32. aserg 45 23.05.23 06:17 Сейчас в теме
(31)О, а это мысль! Может кто-нибудь создаст хорошие курсы по стантартам 1С?
33. DemetrKlim 130 25.05.23 10:01 Сейчас в теме
(32) ГОСТ 34. Правила проектирования и разработки автоматизированных информационных систем. Как раз два года назад обновили. Видать, актуально!) Почему у каждой платформы должен быть какой-то свой стандарт? А разве есть отдельные правила дорожного движения для автомобилей разного цвета?
Оставьте свое сообщение

См. также

Ревьювер. Инструмент для проведения code review

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Если вы работаете в команде разработчиков, то, вероятно, знакомы с процессом код-ревью. Это необходимый шаг в разработке программного обеспечения, который помогает выявить ошибки и улучшить качество кода. Однако, процесс ревью может занимать много времени и быть довольно утомительным, особенно на ранних этапах разработки. Мы столкнулись с этими проблемами в команде и решили упростить процесс код-ревью с помощью внутреннего инструмента. Он значительно облегчил процесс ревью на определенном этапе работы и сократил время на рутинную работу. В результате, мы смогли значительно упростить процесс код-ревью в команде, что сэкономило время и улучшило качество кода.

16.05.2023    2346    leobrn    11    

44

SonarQube: про объемы, ветки, покрытие кода и интеграцию с Gitlab

DevOps и автоматизация разработки Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Опыт применения SonarQube в нескольких командах. Плюс некоторые тонкости: уменьшение объемов базы SQ, интеграция, покрытие кода.

26.02.2023    2459    kraynev-navi    10    

47

Зачем и как читать чужой код? Какой результат ожидаем получить? Основные подходы

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Данная статья является кратким содержанием статей цикла "Как читать чужой код". Цель такой публикации: создать чек-лист различных подходов для чтения непонятного кода. Более подробно каждый из методов можно прочитать в исходной статьей. Последовательность изложения материала полностью совпадает с исходными статьями, и разделена на 4 части.

06.02.2023    2915    biimmap    9    

29

Как проверять код на языке 1С с помощью BSL Language Server

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Некоторые разработчики на платформе 1С не проверяют свой код ни на соответствие стандартам 1С, ни на самые распространённые ошибки кодирования. И если раньше они могли оправдываться отсутствием инструментов для этого, то с появлением BSL Language Server оправданий больше нет.

13.01.2023    3737    aleksei_adamov    10    

45

Без комментариев!

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

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

05.01.2023    5359    ardn    161    

39

Правила работы с транзакциями 1С

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Список правил при работе с транзакциями из BSL Language Server и SonarQube 1C (BSL) Plugin. Переработка и осмысление материала.

01.12.2022    4744    kuzyara    42    

78

Как избавиться от большого количества комментариев в коде с использованием EDT + Git

Рефакторинг и качество кода DevOps и автоматизация разработки Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Публикация освещает вопрос улучшения качества и читабельности кода путем отказа от излишних комментариев. Рассматривается пример из опыта работы команды разработки на EDT + Git. Команда работает в EDT меньше года. Конфигурация сильно доработана и не обновляется типовыми релизами.

15.11.2022    1131    shastin87    5    

9

Рефакторинг и реинжиниринг в повседневной практике

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В этой статье будут затронуты многие темы. Использование WS ссылок, HTTP запросов, асинхронных запросов к внешним сервисам, работа с XML, методики интеграции. Но лишь попутно. Для наглядности. На технических вопросах реализации останавливаться не буду. Все примеры работы с этими объектами есть в коде. Файлы обработки и расширения доступны. Главная цель - рассмотреть рефакторинг и реинжиниринг как инструменты для достижения вполне конкретных практических целей.

20.06.2022    1286    user1374747    0    

7

Модульность в 1С – как следовать принципам DRY в реалиях 1С: Предприятие 8.3

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Принцип DRY – Don't repeat yourself (не повторяйся) – один из классических принципов программирования. Краеугольным камнем реализации этого принципа является модульная архитектура, которую можно реализовать в 1С с помощью расширений. Но экосистемы модулей общего назначения, сравнимой с существующими в других языках, в 1С пока что нет. О том, как спроектировать архитектуру таких модулей и управлять ими с помощью менеджера пакетов, на митапе «Путь к идеальному коду» рассказал технический директор компании «А1» Арсений Геращенко.

03.06.2022    3114    Enigma    3    

22

Красота разработки в 1С, или художественная верстка кода

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Рекомендации по верстке и организации кода в 1С, которые я вывел для себя. P.S. Нет, это не про комментарии и номера версий.

02.06.2022    7498    TimofeySin    67    

65

Как выжить, если у тебя в базе 1С 50+ расширений

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Расширения – это простой способ делать доработки на лету. Но администрировать большое количество расширений и не допустить бардак – очень сложно. О том, как выжить в такой ситуации, реализовать управление доработками и установкой актуальных версий расширений, на митапе «Путь к идеальному коду» рассказал Юрий Былинкин – архитектор 1С в компании Аскона.

16.05.2022    6073    ardn    44    

55

Про простой и понятный код

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Внимание! Данная публикация с большой долей вероятности не добавит ничего нового к Вашим знаниям и Вашему опыту, поэтому если Вы читаете Инфостарт исключительно для целей "прокачки" своих навыков, не тратьте на её чтение своё время и перейдите сразу к следующей!

03.12.2021    5503    q_i    161    

71

Как читать чужой код? Часть 1. Общие вопросы. Доработка чужого кода. Code review

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Во всех вакансиях есть требование - умение читать чужой код. Но ни на одних курсах специально этому не учат. Чтобы устранить это противоречие, пишу данную статью. Рассмотрю случаи, в которых нам необходимо разбирать чужой код, поймём, чей код мы пытаемся разобрать, зачем и, главное, как. В статье описан личный опыт длиною в 18 лет начиная с версии платформы 7.7. Статья будет большой, набираемся терпения). Статья содержит в себе описание сценариев разбора кода, т.е. набор шагов. В статье не получится показать это на практике. Для этого планирую сделать онлайн или оффлайн курс, где на примерах будет показан разбор незнакомого кода. Статья разбита на 4 публикации для удобства изучения.

20.09.2021    13217    biimmap    55    

137

Распространенные ошибки разработчиков, приводящие к проблемам производительности

HighLoad оптимизация Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Рассмотрим примеры ошибок, анализ, исправление и мероприятия по недопущению подобного в будущем. Всего будет 18 примеров.

02.08.2021    16450    ivanov660    77    

142

Антипаттерны программирования в 1С

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Поговорим про плохой стиль программирования и рассмотрим 17 часто встречающихся антипаттернов.

19.07.2021    13052    ivanov660    121    

69

Чек-листы для проведения Code Review

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Бесплатно (free)

В данной статье будут приведены два чек-листа (основной и для проверки архитектурных решений). По данным чек-листам программист любой квалификации может проверить свой код и код других разработчиков.

17.05.2021    11628    Shining_ninja    99    

129

Эффективные приемы разработки

Математика и алгоритмы Рефакторинг и качество кода СКД Платформа 1С v8.3 Бесплатно (free)

На Infostart Meetup Ekaterinburg.Online выступил Сергей Наумов – руководитель центра аналитики и консалтинга WiseAdvice. Сергей поделился с коллегами приемами разработки, которые помогут избежать потенциальных проблем при реализации сложных проектов.

07.04.2021    5302    SergeyN    13    

39

Ускорение расчета себестоимости УПП 1.3 в несколько раз

Рефакторинг и качество кода Закрытие периода Платформа 1С v8.3 1С:Управление производственным предприятием Бухгалтерский учет Управленческий учет Бесплатно (free)

Как определить причину медленного расчёта себестоимости в УПП 1.3, один из вариантов поиска проблем производительности с помощью инструментов 1С и ускорения расчёта средствами встроенного языка

02.02.2021    5710    RPGrigorev    23    

40

Практика применения DevOps. Работа с SonarQube

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Во второй части мастер-класса «Практика применения DevOps» на конференции Infostart Event 2019 Inception выступил Виталий Подымников – он рассказал про процесс проверки качества кода и использование SonarQube для работы с ним.

07.12.2020    16309    arcius_7012    21    

84

Операторы перехода в программном коде: использовать или нет?

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Рассмотрим ситуации использования операторов перехода Перейти (GoTo), Возврат (Return), Прервать (Break), Продолжить (Continue). Как вы считаете - это дурной тон, нормальная практика или зависит от ситуации?

16.11.2020    9906    ivanov660    23    

11

Чистый кот (Clean cat)

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

От автора легендарного бестселлера "Совершенный кот".

04.11.2020    2463    vasilev2015    25    

5

Доработайте это "немедленно", или как уменьшить доработки конфигурации

Рефакторинг и качество кода Платформа 1С v8.3 Россия Бесплатно (free)

Доработки конфигурации - необходимое зло. Автор предлагает несколько простых подходов и приемов, позволяющих хотя бы немного, но оптимизировать объем доработок конфигурации, упростить их, и облегчить дальнейшие доработки и обновления конфигурации. Все примеры и подходы взяты автором из реальной жизни и основаны на собственных наблюдениях.

25.09.2020    5029    Богатырев Артур    24    

14

Как найти неиспользуемый код

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Описание нескольких способов поиска и определения неиспользуемого кода

03.08.2020    6064    Infostart    29    

71

Как поставить качество кода на поток и при этом не разориться? Какие шаги стоит сделать уже завтра, чтобы повысить планку качества?

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Наличие в 1С-решениях некачественного кода мешает их поддержке и эффективному развитию. Как добиться соблюдения стандартов разработки при написании кода и внедрить бюджетный Code Review с помощью инструментария на основе АПК (Автоматизированной проверки конфигураций) на конференции Infostart Event 2019 Inception рассказал технический руководитель компании Бизнес Лоджик Иван Козлов.

22.06.2020    5187    kozlov.alians    1    

23

Молчание "best practices": тестовые и эталонные данные, структура и связность, падения и новая функциональность, и другие неудобные вопросы к сценарному тестированию

Рефакторинг и качество кода Тестирование QA Платформа 1С v8.3 Бесплатно (free)

Непонимание некоторых базовых вопросов мешает программистам начать применять инструменты тестирования в процессе разработки для 1С. Как разобраться в терминологии и интегрировать процесс тестирования в разработку 1С-решений на конференции Infostart Event 2019 Inception рассказал руководитель отдела разработки компании C.T.Consultants Решитко Дмитрий.

29.05.2020    6911    grumagargler    14    

49

Рефакторинг в редакторе модулей

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Для тех, кто не пользуется Ctrl+Alt+R. “Контролируемый процесс улучшения кода без написания новой функциональности”, “Равносильное преобразование алгоритмов” и т.п в данной статье НЕ рассматриваются. Тема статьи: замечательные команды из подменю Рефакторинг контекстного меню редактора модулей в конфигураторе. В статье описано, как команды из подменю Рефакторинг помогают при написании кода

10.03.2020    6099    pparshin    6    

52

Качество кода: Поведенческие паттерны проектирования

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Поговорим про применение паттернов проектирования в разработке на 1С.

03.03.2020    12696    ivanov660    0    

83

Боремся с запросами в циклах. Мой опыт рефакторинга запросов

Рефакторинг и качество кода Запросы Конфигурации 1cv8 Бесплатно (free)

В текущей публикации я предлагаю вам несколько простых примеров с решениями, в которых будет представлено решение "единым запросом", без использования запросов в цикле.

02.03.2020    14402    aximo    55    

72

Код разработчика в зависимости от опыта работы

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Пятничный пост! Как меняется код разработчика в зависимости от опыта работы.

14.02.2020    13668    Infostart    229    

106

Стабильность превыше всего

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Странная заметка о поддержании стабильности в условиях интенсивного изменения конфигурации.

07.11.2019    11004    Infostart    41    

75

Оценка скорости кода. Сложность алгоритма

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Эта тема одной из первых всплывает на собеседовании программистов языков вроде Java и C, но она почти неизвестна в "мире 1С". Поговорим о вычислительной сложности алгоритмов.

07.10.2019    7706    m-rv    12    

16

Управление качеством кода

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

О SonarQube, АПК, EDT. Какие преимущества дает их использование. Для каких команд подходит.

22.07.2019    23092    Stepa86    40    

179

По следам код-ревью

Рефакторинг и качество кода Платформа 1С v8.3 Бесплатно (free)

Приведу примеры с картинками и небольшим пояснением по вопросам, связанным с код-ревью (обзором кода).

09.07.2019    16302    ivanov660    112    

117

Совершенный коТ (Cat complete)

Рефакторинг и качество кода Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Стандарты программирования в картинках. Самоирония прилагается.

03.06.2019    11282    vasilev2015    150    

69