Как стать автором
Обновить

1С: Дичь (лучшее из моей коллекции)

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров38K

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

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

Много лет назад, когда во мне горел юношеский абсолютизм, я реагировал на "плохой код" резко и негативно. Всё какие-то стандарты изучал и пропагандировал. В нашей среде стандартом код разработчиков из самой 1С обычно считается. А одна из высших оценок качества кода - если он не отличим от написанного вендором. Ну вот и я такой был.

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

Да, что ещё совершенно точно: при сильно изменившихся стандартах не сильно изменился результат, т.е. продукт :)

Так, отвлёкся... Переболел я "правильными стандартами", надеюсь больше мне это не грозит, пусть молодёжь тешится. И отношение моё к чужому коду сразу изменилось - он стал мне интересен. Как диалекты одного и того же языка, фольклор народов мира и, в конце концов, жизненные истории (да, в небольшом куске кода иногда целую историю увидеть можно).

Ну и коллекционировать эти куски кода начал. Чтобы не потерять - канал в телеге создал. Иногда там и мой код бывает, за который мне стыдно (порой).

Подумал, вдруг вам тоже будет интересно, и решил оформить в виде статьи самые интересные (на мой взгляд) примеры.

Человек решает задачу "Найти всех пользователей с определённым перечнем ролей". Зацените сбор результата в строку.
Человек решает задачу "Найти всех пользователей с определённым перечнем ролей".
Зацените сбор результата в строку.
Код из типовой ERP. Процедура вычитает одну таблицу из другой. Попробуйте по именам аргументов понять, кто откуда будет вычтен. Ну и насладитесь именами переменных внутри.
Код из типовой ERP. Процедура вычитает одну таблицу из другой. Попробуйте по именам аргументов понять, кто откуда будет вычтен.
Ну и насладитесь именами переменных внутри.
Стажёр решает задачу "посчитать количество цифр и английских букв в строке"
Стажёр решает задачу "посчитать количество цифр и английских букв в строке"
Тут прекрасно всё
Тут прекрасно всё
Первые доработки начинающих программистов почти неотличимы от сделанных на скорую руку
Первые доработки начинающих программистов почти неотличимы от сделанных на скорую руку
А это - топорное версионирование кода. Каждая следующая процедура - копия предыдущей, но с небольшими изменениями
А это - топорное версионирование кода. Каждая следующая процедура - копия предыдущей, но с небольшими изменениями
Не просто так, объяснение есть, но... Всё равно ведь забавно?
Не просто так, объяснение есть, но... Всё равно ведь забавно?
А тут видна история - условие дополнялось не сразу, и в результате через ИЛИ перечислено почти всё
А тут видна история - условие дополнялось не сразу, и в результате через ИЛИ перечислено почти всё
Прислал один из читателей канала
Прислал один из читателей канала
По легенде, этот код заменяет в заказах одну номенклатуру на другую
По легенде, этот код заменяет в заказах одну номенклатуру на другую
Тоже читатель прислал. Мораль: тут не всё понятно :)
Тоже читатель прислал. Мораль: тут не всё понятно :)
Видна история, судьбы? Я прям вижу - программисты сидят, ночь, оно не считается, НАДО ХОТЬ ЧТО-ТО СДЕЛАТЬ
Видна история, судьбы? Я прям вижу - программисты сидят, ночь, оно не считается, НАДО ХОТЬ ЧТО-ТО СДЕЛАТЬ
Гуманитарии в нашей профессии тоже встречаются. Я - один из них
Гуманитарии в нашей профессии тоже встречаются. Я - один из них
Это типовая отраслевая конфигурация. Запись документа внутри обработки проведения.Ну а кто без греха?
Это типовая отраслевая конфигурация. Запись документа внутри обработки проведения.
Ну а кто без греха?
Строка - надёжная, строка не подведёт
Строка - надёжная, строка не подведёт
Кому-то нравится справа налево писать. Отраслевая конфигурация
Кому-то нравится справа налево писать. Отраслевая конфигурация
Тут тоже не весь код понятен :)
Тут тоже не весь код понятен :)
Эффектно завёрнутый в универсальную функцию поиск по коду
Эффектно завёрнутый в универсальную функцию поиск по коду

Теги:
Хабы:
Если эта публикация вас вдохновила и вы хотите поддержать автора — не стесняйтесь нажать на кнопку
+43
Комментарии182
7

Публикации

Истории

Работа

Программист 1С
43 вакансии
Аналитик 1С
5 вакансий
Консультант 1С
63 вакансии

Ближайшие события