
Синопсис
Размышление о жизненных перспективах платформы 1С:Предприятие. Стиль изложения беглый профессионально-метафорический.
О предмете
С 1С-кой близко познакомился в 2000 году, когда пришлось срочно сменить работу в связи ликвидацией текущей. До этой поры относился к ней скептически, несмотря на похвалы со стороны близких людей. Нравились DELPHI, BDE, ORACLE. Больше ничего не знал, но на перечисленных платформах программировал хорошо и с удовольствием. На новом месте работы был целый зоопарк баз данных версий от 6 до 7.7. В середине нулевых добавилась версия 8. Всего было до полусотни актуальных баз. Довольно быстро понял, что в платформе версии 7 реализовано в максимальной полноте то, что делает любой толковый программист — наработаны обобщенные методики работы для целевой области программирования. В данном случае это хозяйственный учет. Разработчики платформы реализовали наиболее полную парадигму хоз.учёта в нынешнюю эпоху не только в стране, но и на планете. А если что не учли, то это без труда подцепляется предусмотренными возможностями.
Работал на этом месте 10 лет пока его не постигла участь предыдущего. Все эти годы не испытывал к одинэске большой симпатии, оставаясь верным былым привязанностям. Несмотря на это через год успешно получил пару дипломов. Сразу, начав работать, сооружал подручные средства для обслуживания 1с-ных баз вроде навигатора по аналогу популярного тогда Гэндальфа и браузера по внутренним таблицам 7-ки и 6-ки. Был даже эректор вечно падающего сетевого ключа доступа. Делал отчеты, перестраивал конфигурации, сливал данные (не на сторону, а воедино), архивировал базы.
Однако осознал грандиозность миссии платформы лишь на следующей работе в десятых, когда первое порученное задание, причем не очень сложное и знакомое по предшествующим десятилетиям трудовой деятельности в ИТ, чётко обозначило недостатки традиционной технологии sql‑программирования (назовем это так) хоз.учета перед 1с‑ным. Это производительность труда. Мне сразу стало не хватать всех тех средств, что в конфигураторе всегда с тобой. В sql все надо делать вручную: структуру таблиц, устанавливать связи и ограничения, ваять типовые форму и отчеты, выдумывать давно выдуманные человечеством методики хозяйственного учета. Причем для рутинной, небольшой задачи. Разница в производительности без преувеличения на порядок. На сложных проектах в несколько раз. Если даже удастся «посрамить» одинэску и выполнить задачу в сходные сроки, то всегда результат уступит в качестве и мобильности. Единственное «преимущество» возможно в цене — не надо покупать лицензии, — но это тоже весьма спорное достоинство, граничащее с самообманом и неграмотностью как технической, так экономической.
Неоднократные поиски в мировом пространстве аналогичных разработок показали, что 1с-Предприятие является наиболее удачным решением для реализации хозяйственного учета широкого профиля на всей планете. Не стоит ее ограничивать чисто бухгалтерией, как можно услышать нередко от многих sql-щиков. К слову говоря, бухгалтерия сама по себе является первичной формой хозучета, начавшаяся по-серьёзному организовываться в этом мире пять веков назад в связи с потребностями разворачивающейся индустриализацией. Теоретические основы двойной записи известны с эпохи Возрождения в трудах Луки Пачоли, бывшего в дружбе с великим Леонардо, который помог ему рисунками с оформлением книги. Сходные с 1С решения есть на Западе и на Востоке. Восточные разумеется китайские и там их аж два. На Западе, впрочем, тоже парочка. Отличаются они от одинэски громоздкостью развертывания и меньшей обобщенностью. Проще говоря, без скромного по размерам инсталлятора и божественного конфигуратора, который в проектировании «наше всё» — бог, сын и дух.
О проблеме
С середины десятых годов я отмечаю явственную стагнацию в развитии платформы. Перечислю частности, но они характерны.
Язык уже весьма архаичен. Не хватает объектных возможностей java или javascript’a для создания произвольных классов на лету в любом контексте. Набор универсальных средств обширен, но не меняется с середины нулевых. Как не было в в семёрке регулярных выражений, так нет их и в восьмёрке, хотя вставить несложно. Лично я в 2001 или втором сделал это для семёрки без труда, для чего освоил технологию внешних компонент, причем не на Си, а на DELPHI. Потом то же для восьмёрки, а сейчас у меня отсутствующие в языке средства делает java через web-сервис как локальный, так и сетевой в зависимости от потребностей.
Архаичность языка порождает тяжеловесность средств интеграции. Хотя по-прежнему ее осуществить полегче, чем в иных системах, но хотелось бы большего изящества. Противопоставляю той же java, в которой живу уже с середины десятых годов. Средства для работы с гипертекстом (xml, html) тяжеловесны и многословны, хотя порой надежны и убийственны как автомат Калашникова.
Дизайн среды разработки также отдаёт архаикой. Сравним с NetBeans или Intellij IDEA или хотя бы DELPHI. Впрочем, отладчик по возможностям отличный. В целом набор инструментов оболочки хорош как по количеству, так и функционалу, но не хватает лоска.
Более пяти лет назад появилась среда разработки EDT, написанная на java на базе Eclipse. Изящней традиционной архаики. Достоинством является функция декомпозиции метаданных на отдельные гипертекстовые файлы в файловую систему. Это позволяет решать некоторые технические проблемы, а также понять внутреннее устройство метаданных. Однако язык программирования прежний. К конфигуратору как в архаичном варианте, так и в новейшем претензий не имею и считаю его лучшей реализацией такого функционала в мире.
Таким образом, начинание, вознёсшееся столь мощно, на глазах сворачивается в свиток и теряет имя действия. Желтый гигант становится карликом, хотя пыжится, надувает грудь, но больше живот (или тупо набивает брюхо).
Что делать?
Как видим из изложенноговыше сверхзадача 1С‑Предприятия нареканий не заслуживает. Идея и реализация конфигуратора также хороши. Претензии только к языку программирования и устройству среды разработки. Последняя начала исправляться, но этого мало. Как поётся в песне? — «Только, только, только этого мало».
Полагаю инженерно правильным вариантом будет продолжать совершенствование конфигуратора в проекте EDT и дополнить его языком java (как минимум). Реализация такой задачи сразу подымет платформу на недосягаемый уровень в сравнении с конкурентами не только в стране, но и в мире. И сейчас‑то по моим дилетантским оценкам она вознеслась в своем классе задач выше прочих. Но находится, образно выражаясь, над шляпами. А так воспарит над деревьями и будет носится свободно как птица без оков надуманных ограничений. Мощь java даст доступ к множеству открытого и закрытого кода, хотя не это главное. Она обеспечит гораздо более легкий и читаемый стиль программирования на си‑подобном языке, удобство синтаксиса которого проверено десятилетиями (чтобы там ни говорили пресмыкающиеся адепты питона).
Мелочь, казалось бы, да не совсем.
Что для этого нужно? Излагаю чисто тезисно, как Ильич в том апреле.
-
Язык java становится основным языком программирования.
-
Прежний язык программирования остается для совместимости на многие лета, но тексты его переводятся на java на этапе проверки синтаксиса и сохранения. При необходимости модуль на прежнем языке может быть заменен на java‑вский, либо просто просмотрен любопытства ради.
-
Среда разработки нового типа изначально провозглашается свободной для всех граждан Великой и Прекрасной России. Требовать деньги за возможность научиться виртуозно программировать хозяйственный учет на благо народного хозяйства по́шло. Платить надо только за конечный продукт разработки (конфигурацию) и тут «свободность» java едва ли помешает. Закрыть от несанкционированного доступа необходимое всегда возможно для настоящих инженеров.
-
Весь механизм метаданных должен быть реализован на java и описание классов опубликованы как в синтаксис‑помощнике, так и стандартным средством java‑справки. Какие‑то средства сделать финальными, какой‑то код закрыть. Всё это техническая работа.
-
Финансирование государственного уровня. Денег нужно немного, но расходовать их надо правильно без размывания по непричастным и неспособным. То есть речь идет о национальном проекте, хотя декларировать это без нужды не стоит. Похвальба без причины признак сами знаем кого. Пусть выскочит как чорт из табакерки.
Что этому препятствует?
-
Косность мышления.
-
Меркантильность, стремление (неудержимое) к стяжательству, застилающее дали научного и социального прогресса. Преодолеть данное препятствие возможно только в рамках более совершенного общественного устройства, которое сейчас доступно лишь в исторической памяти и, слава богам, пока еще неглубокой. У других наций и такой нет, задумайтесь над этим.
-
А также то, что каждому прочитавшему придёт в голову.
Нам нет преград ни в море, ни на суше.
Вот и всё, что хотелось бы поведать городу и миру в этот весенний день.
ссылка на оригинал статьи https://habr.com/ru/articles/891092/
Добавить комментарий