TGViewer
BGcalls. Программист 1С. Школа прикладной разработки BGcalls. Программист 1С. Школа прикладной разработки @bgcalls · 2.23K subscribers
Post #122 1.6K
Сегодня в эфире рубрика #стандарты_разработки, где мы разбираем основные стандарты простыми словами.

Стандарт 440 Использование дублирующего кода

Дублирование кода - это такой подход, когда мы копируем фрагменты кода или даже целиком процедуры и функции.

Почему это может стать проблемой:

- Если в код закралась ошибка - исправлять нужно во всех местах, можно пропустить
- Если нужно изменить логику - опять же, нужно искать все вхождения и легко ошибиться
- Раздувается код, становится сложнее для понимания

Простой пример - частая задача: есть некоторая табличная часть: номенклатура, цена, количество, сумма.
Нужно при изменении количества и цены пересчитывать сумму.

Код на скрине.
Видим, что в обработчиках событий одинаковый код.

1.Вынесем его в отдельную процедуру
2. Процедуру стоит разместить в общем модуле (а не модуле формы этого же документа), тогда мы сможем к ней обращаться и из форм других документов, где тоже есть похожие ТЧ.

Этот стандарт перекликается с принципом программирования DRY (Don’t repeat yourself - не повторяйся)

🤣 Подписывайтесь на канал BGcalls. Программист 1С #ЧистыйКод
  • 🔥 15
  • 👍 5
More from @bgcalls
  1. Sep 7, 2026Что нужно знать аналитику в 2026 году? В кризис компании реже нанимают «человека под кажду…
  2. Sep 7, 2026Для тех, кто только присматривается к разработке.
  3. Sep 1, 2026Post #221
  4. Aug 17, 2026Зашла в чат нового, 18 потока Практикума. Какая крутая группа у нас собралась: - многие ре…
  5. Aug 14, 2026Когда прошел "Программирование на 1С за 21 день" и пытаешься разобраться в ERP самостоятел…
  6. Aug 12, 2026Частый вопрос: «Какой график занятий? Смогу ли совмещать с работой?» Как построен процесс:…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →