Коллеги, вы наверняка знаете что в классических языках программирования существует принцип DRY - don't repeat yourself (не повторяйся). Прежде все речь идет о способах лаконичного написания кода без дублирования участков кода. DRY тесно связан с ООП.
Как известно в 1с точно нет ООП и скорей всего отсутствует DRY. То что мы сейчас видим в типовых это бесконечная лапша из кода. Причем повторяются не только отдельные конструкции, но и целые блоки. В результате общие по смыслу участки кода могут появляться как в модулях документа, в общих модулях, в модулях обработки и так далее. Из за этого разбор кода типовых превращается в сущий адский ад. У меня вопрос. Хорошо, 1с не хочет давать нам ООП, но они также не знают о существовании принципа DRY ? И не пора бы им узнать и начать его использовать? Что помогает вам в разборе типового кода 1с ?
(0) а ты сам-то в "каноничные ООПшные" системы заглядывал? Вот взять какой-нибудь ентерпрайз на over 10 миллионов строк кода, через который прошла не одна сотня программистов, среди которых были и индусы, и говнокодеры, и детишки клерков, получающие первый опыт программирования... Ну и как ты там будешь проверять дублирование кода? Там целые подсистемы могут дублироваться, не то что строки кода или методы
Давно пора сделать иерархическое наследование методов общих модулей. Чтобы не было этого заката солнца вручную через ОбщийМодульРасчетНДФЛПереопределяемый и тому подобное. Когда спагетти-код вместо простой и понятной иерархии.
Кстати, расширения - это очень похоже на наследование методов.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс