Фирма «1С» анонсировала новый продукт «Интеграционная шина»

23.03.2020      90422

Интеграционная шина будет обеспечивать обмен данными между различными информационными системами. Новое решение войдет в состав технологической платформы «1С:Предприятие 8.3.17».

Задачи «Интеграционной шины»

Новый продукт относится к классу Enterprise Service Bus (ESB), и предназначен для решения интеграционных задач по обеспечению транспорта сообщений через одну точку между различными системами. 

ESB-системы, к которым фирма «1С» относит свою разработку, обеспечивают гарантированную доставку, управление очередями и нагрузкой в потоках. Такого рода продукты находят применение в сферах, где существуют интенсивные потоки сообщений, и требуется высокая надежность и гибкость в управлении.

Областью применения нового продукта может стать крупный ритейл, распределенные холдинговые структуры, а также централизованные автоматизированные системы управления и учета на уровне регионов, например для отраслей здравоохранения и государственного управления. Последние несколько лет фирма «1С» активно развивает данное направление автоматизации, и уже сейчас есть ряд успешных кейсов, в которых количество рабочих мест идет тысячи и даже десятки тысяч.

Что известно об «Интеграционной шине» в «1С:Предприятие»

Предполагается, что доступ к продукту «Интеграционная шина» будет реализован в платформе «1С:Предприятие», начиная с версии 8.3.17. Продукт будет представлять из себя серверное решение, позволяющее реализовать интеграцию систем с использованием следующих методов:

  • обмен сообщениями через подключение к приложениям 1С и к внешним брокерам сообщений, а также с использованием протокола AMQP, реализованного в том числе в RabbitMQ и Apache ActiveMQ;

  • удаленный вызов API для выполнения HTTP запросов к внешним системам для получения или отправки данных, вызовов REST API или WEB-сервисов;

  • обмен файлами для сохранения сообщения в файловой системе или на FTP-сервере. Также сообщения могут порождаться при изменении файлов в файловой системе или на FTP-ресурсах.

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

 

Пример сценария интеграции. Источник: wonderland.v8.1c.ru

 

К сожалению, разработчики не поделились информацией о том, какие базовые технологические решения использовались при разработке данного продукта, и как «Интеграционная шина» будет работать различных средах – например, с Windows или Linux. Возможно, по мере мере публикации технической информации об этом будет известно больше. 

Графический интерфейс: во-первых, это красиво

В качестве ключевых преимуществ нового продукта были обозначены, во-первых, его простота и доступность и, во-вторых, «максимальная гладкость» интеграции с решениями на платформе «1С:Предприятие»

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

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

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

 

Графический интерфейс в «Интеграционной шине». Источник: wonderland.v8.1c.ru

 

«Интеграционная шина от 1С легка в освоении для разработчиков 1С и позволит клиентам во многих случаях для настройки процессов интеграции обходиться усилиями существующих ИТ-специалистов (партнера 1С и/или своего ИТ-отдела, обслуживающего клиента)» – говорится в описании продукта.

Что будет дальше

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

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

При этом пока нет никакой информации о том, в какой версии технологической платформы будет доступна эта компонента: только в КОРП или в ПРОФ тоже. И возможен ли сценарий, при котором, как «Системой взаимодействия», появится отдельный дистрибутив для платформы уровня ПРОФ.

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

Подробное описание продукта «Интеграционная шина» в технологическом блоге «Заметки из Зазеркалья»


Автор:
Обозреватель


См. также

Новость Зазеркалье

Фирма «1С» анонсировала появление в утилите ibcmd новых возможностей. В платформе 8.3.28 с помощью утилиты можно будет получать контрольную сумму, обновлять конфигурацию, выгружать cf-ник в файлы и формировать его из файлов без создания базы.

06.11.2024    520    ЕленаЧерепнева    0       

2

Новость Зазеркалье

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

29.10.2024    900    ЕленаЧерепнева    1       

2

Новость Зазеркалье

Фирма «1С» рассказала о новых настройках для администрирования клиент-серверных баз, которые могут появиться в 1С:Предприятие 8.3.28. Предполагается, что изменения затронут профили безопасности и добавление администраторов для кластера сервера.

25.10.2024    700    ЕленаЧерепнева    0       

2

Новость

Фирма «1С» выпустила отраслевое решение для молочного производства, главная особенность которого – интеграция с автоматизированными линиями и с оборудованием. Рассказываем о возможностях конфигурации и об особенностях лицензирования нового продукта.

22.10.2024    872    ЕленаЧерепнева    0       

3

Новость Зазеркалье

Фирма «1С» изменила подход к хранению драйверов в макетах 1С:Библиотеки подключаемого оборудования. Теперь включать все драйвера в конфигурацию необязательно. Необходимость такого изменения неоднократно обсуждалась в профессиональном сообществе.

21.10.2024    866    ЕленаЧерепнева    0       

1

Новость

Для тех, кто не смог присоединиться в бесплатному вебинару по «Автоматизации производственного и бюджетного планирования с решением Бюджетир», мы подготовили видеозапись встречи, а также публикуем ответы на вопросы участников и рассказываем про решение.

17.10.2024    1062    AnastasiaKl    0       

15

Новость

Фирма «1С» сообщила об обновлении локального приложения 1С:Касса. В релиз 4.1.1 включили новые возможности для ведения товарного учета, а также существенное расширили возможности обменов и совместной работы локальной и облачной версии.

17.10.2024    1066    ЕленаЧерепнева    1       

1

Новость Финансовые услуги, инвестиции

Фирма «1С» сообщила о начале продаж прикладной конфигурации для автоматизации банковской деятельности. Решение разработано на технологической платформе 1С:Предприятие и поддерживает работу при высоких нагрузках.

16.10.2024    1354    ЕленаЧерепнева    0       

1
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. WI_IL 126 23.03.20 11:52 Сейчас в теме
мне кажется 1С - ЭТО ОДНО СЧАСТЬЕ
Merkalov; triviumfan; Neuroproton; Azamatex; Brawler; +5 Ответить
2. a_titeev 32 23.03.20 12:01 Сейчас в теме
Как тот, кто интеграцией давно и упорно занимается, хочу заметить - не прошло и 20 лет снеговику, как до шины дело дошло!
rossoxa; Yashazz; portwein; HystriX; +4 Ответить
3. DarkAn 1093 23.03.20 12:05 Сейчас в теме
(2) не все сразу :). Глядишь скоро "паузу" в код добавят :)
user636643_numrik; Merkalov; kote; NoRazum; mrChOP93; zlaya_alena; ivanov660; for_sale; HystriX; +9 Ответить
5. for_sale 896 23.03.20 12:39 Сейчас в теме
(3) а там к 2089-му году и асинхронность нормальную)
8. palsergeich 23.03.20 15:42 Сейчас в теме
(5) На партнерке говорилось о работах в этом направлении кстати.
itoptimum; +1 Ответить
10. for_sale 896 23.03.20 16:15 Сейчас в теме
(8) то есть есть шанс получить раньше 2089?)
13. alextalov 24.03.20 09:28 Сейчас в теме
(5) Была уже асинхронность) в одном из релизов емнип 8.3.3.х после клика по любому действию на форме код выполнялся, а форма оставалась доступной для редактирования
19. alexey_kurdyukov 165 25.03.20 02:42 Сейчас в теме
(13) точно, сталкивался я с такой ошибкой
40. KazanKokos 11 11.11.21 18:48 Сейчас в теме
(13) ничего не понимаю... это можно сделать фоновыми заданиями в любой конфе. делал не раз. тут на инфостарте был модуль реализации асинхронных потоков 1С-ными средствами. Может люди просто не знают?:)
25. lunjio 67 26.03.20 17:30 Сейчас в теме
(3)в БСП есть решение ) с ФоновыеЗадания.ОжидатьЗавершения, красиво, не очень элегантно, но "нативно", мне понравилось.
KazanKokos; +1 Ответить
4. user623969_dusa 23.03.20 12:17 Сейчас в теме
вариант конвертация данных 4
itoptimum; portwein; Drivingblind; acanta; +4 Ответить
6. zhichkin 1523 23.03.20 13:58 Сейчас в теме
Apache Camel на 1С ... Интересно будет посмотреть.
9. palsergeich 23.03.20 15:43 Сейчас в теме
(6) Не на 1с. на с++ и опенсорсных продуктах скорее всего, просто из коробки поддержка платформы + они там для этого и в платформе внесут изменения.
7. Mynlife73 23.03.20 14:43 Сейчас в теме
Акселота решили подсидеть?
Гарин; mip128; coollerinc; laisa2; Andreeei; +5 Ответить
11. Yashazz 4789 23.03.20 19:17 Сейчас в теме
Ещё году в 2012-м сделал такую конфу-интегратор-обменник, да и много кто наверняка делал. Наконец решили в платформу засунуть, 20 лет не прошло)
12. Brawler 458 23.03.20 23:27 Сейчас в теме
Жить становится все веселее))
Даешь все больше отдельных продуктов в экосистеме 1С.
Где только на все бабок напастись и книжек желтых))
14. Vafla 24.03.20 11:15 Сейчас в теме
15. EgorSneg@mail.ru 24.03.20 14:07 Сейчас в теме
1с- это фуфло. Отдал 7 лет. Сейчас иду на завод.
slauter77; +1 4 Ответить
16. triviumfan 96 24.03.20 15:38 Сейчас в теме
(15) Автоматизировать производство на 1с?!:)
29. Smilk 22.03.21 16:32 Сейчас в теме
Завод фудло, отдал 20 лет, иду в 1с ))
127.0.0.0; KazanKokos; Hatson; pbahushevich; sharp_ice; +5 Ответить
38. mwoleg 55 12.10.21 22:57 Сейчас в теме
(15)
Завод - это фуфло, отдал 16 лет - ушёл в 1С.
1С отдал 15 лет, пока не разобрал что фуфлее.

1С - предназначена для автоматизации микро, малого и среднего бизнеса, а так хочется на SAP автоматизнуть ГАЗПРОМ или РЖД

Одно правильно - хорошо там, где нас нет!
39. A_Max 20 11.11.21 14:59 Сейчас в теме
(38) Поверьте, в сапах таже самая фигня... предпродажная и внедренческая подготовка гораздо круче организована
а крупняки таки с сапа сползають потихноьку. Ну пытаются по крайней мере :)
17. rossoxa 165 24.03.20 17:35 Сейчас в теме
Отличная новость
18. Господин ПЖ 24.03.20 17:49 Сейчас в теме
>Продукт будет представлять из себя серверное решение

случайно не только для владельцев КОРП?
20. alexey_kurdyukov 165 25.03.20 02:43 Сейчас в теме
а сам язык хотя бы до уровня 1с++ не хотят подтянуть?
21. lunjio 67 26.03.20 16:31 Сейчас в теме
(20) А зачем ? Может еще произвольные объекты, помимо тех что в метаданных доступны ? 1С это бизнес ориентированная платформа, удивляют программисты, которые ожидают полноценную работу с сетью, потоками и т.п, от продукта, который под это не заточен. Мне надо мобильные приложения ? я пишу на Xamarin, Flutter, нужна система учета - пожалуйста, 1С.
22. alexey_kurdyukov 165 26.03.20 16:37 Сейчас в теме
(21) сеть и потоки - это то, что в принципе доступно, пусть и не в полном объёме и сторонними средствами. То, о чём я написал - сам язык - недоступно никак.
Не знаю, что такое флуттер, но ксамарин - однозначно фреймворк, то есть, набор библиотек, а не язык.
23. lunjio 67 26.03.20 17:25 Сейчас в теме
(22) Неужели возникают какие-то задачи, при которых штатно функционала или хитростей с ФоновыеЗадания.Выполнить не хватает ? Я не понимаю, для чего 1С подтягивать до уровня полнофункционального языка программирования ? Привидите несколько примеров, которые бы безусловно аргументировали в вашу пользу.
Ксамарин конечно фреймворк, но его освоение сравнимо с изучением нового языка. Знать C#, не означает знать Ксамарин.
24. alexey_kurdyukov 165 26.03.20 17:28 Сейчас в теме
(23) да какая связь между фоновыми заданиями и языком? язык - это типы, перегрузки, шаблоны, декорации, наследования и всё такое. фоновые задания - это средства среды.
kote; Darklight; +2 Ответить
26. lunjio 67 26.03.20 17:33 Сейчас в теме
(24) Я имел ввиду, чего вам не хватает в текущем языке 1С, каких возможностей, что вы желаете подтягивания его до уровня плюсов ? Многопоточности ? Можно реализовать через фоновые задания, какие-то другие фишки ? Так расскажите, аргументируйте.
30. Smilk 22.03.21 16:39 Сейчас в теме
(24) Вот интересно, в каком это случае вам понадобилось наследование в 1с? Как вы себе вообще это представляете?
31. Darklight 33 02.04.21 13:18 Сейчас в теме
(30)Наследование - это очень мощная вещь, активно применяемая в других языках программирования. Главные преимущества (именно наследования):
1. Повторное использование (кода и структуры данных)

2. Унификация алгоритмов обработки (когда они ориентируются на API предка, но могут обрабатывать объекты "условно" любых,) наследованных типов)

3. Возможность вносить изменения в предки, так чтобы они сразу попадали во все потомки

4. Более глубокий контроль типов - когда можно делать проверку на типы предков (а ещё лучше - на типы поддерживаемых Интерфейсов - хотя это уже не совсем наследование, хотя с Интерфейсами с реализацией по умолчанию это уже можно считать наследованием), не делая разницы между всеми потомками (обычно когда нужен общий API или нужно какое-то обобщённое ветвление алгоритма). Приведение к "наследованным" Интерфейсам - так вообще очень мощная вещь - которая позволяет размещать в одном объекте разные общие API - когда не нужно потом разбираться какой реальный тип такого объекта и как он предполагал с ним работать - привёл к общему AP и работай одинаково со всеми типами объектов

5. "Упрощение" API сложного комплексного объекта (опять же - обычно через Интерфейсы или приведение к типу предка - когда у объекта сокращается API до типа, к которому идёт приведение объекта, это упрощает работу с ним (да хотя бы быстрые подсказки). В т.ч. при передачи в другие алгоритмы (не готовые к такому сложному объекту). Отчасти это и секюрность может повышать (когда у объекта, после приведения к другому типу, "пропадает доступ" (вернее они становятся неизвестными) к другим членам этого объекта).Упрощает и понимание самого описания объекта, в котором нет наследованных членов - особенно, когда они и не важны для программиста читающего это описание (а если важны - он посмотрит их отдельно); здесь будет упрощение и за счёт того, что в описании класса наследуются общие классы (и интерфейсы) - программист уже может с ними быть знаком, они для него уже могут быть привычны - это тоже упрощает понимание API такого объекта

6. Рефлексия (в терминах 1С это можно назвать работой с объектами метаданных) иерархии наследованных классов объекта - тоже мощный инструмент (активно применяемый в других ЯП)

7. Позволяет создавать более распределённую архитектуру объекта, когда разные части объекта собираются из разных модулей (в общем случае, даже не поставляемых как одно целое), каждый из которых отвечает свою часть итогового API. Это и упрощение и усложнение понимания архитектуры - но плюсов здесь больше, чем минусов. Главный - это более модульная сборка и надстройка.

8. Простое расширение функционала объекта - за счёт создания нового наследованием - это не вносит изменения в "чужой" алгоритм/архитектуру - но позволяет расширить объект новым API. При этом, передавать этот объект во все функции, работающие с объектом типа-предка - не меняя их, до тех пор, пока не понадобится доступ к новому функционалу

В принципе, можно ещё пунктов набросать (хотя дальше, они будут больше пересекаться с другими фишками ООП).

Наследование делает алгоритмы и структуры более лаконичными, более универсальными, а так же упрощает их дальнейшее сопровождение и доработку.

Это если, говорить о наследовании. Но наследование почти никогда не идёт само по себе - это часть ООП - и если желать наследование - то желать и всего, что есть в ООП: классов, интерфейсов, инкапсуляции, полиморфизма, свойств и т.д. - много чего есть в современном ООП. Тем более, что 1С Предприятие 8 - по сути платформа с объектно-ориентированным подходом - во встроенных библиотеках классы есть, вне - нет - это не справедливо!

И ещё добавлю. Что наследование – это не только классы в алгоритмах. Наследование хорошо было бы и для объектов метаданных (например, для Справочника или Документа, или для Формы) – что упростило бы сборку как сложных объектов метаданных, так и имеющих много общего. В общем, для них справедливо всё, что было выше перечислено.

И это совсем не превратило бы 1С в C++ и подобные языки программирования. ООП – сейчас есть очень во многих ЯП. Даже в функциональных. И бОльшая часть из них не так уж сложны в освоении (по сравнению с языком С++, или наоборот с языком 1С – если брать в расчёт весь тот хаос в алгоритмах, который создаётся на языке 1С сейчас, т.к. в нём нет ООП, с которым всё было бы куда проще реализовать). Хотя да, есть и противники ООП. И да, ООП – это не панацея – у него этой парадигмы есть и плюсы и минусы. Но в «современном мире программирования» сторонников ООП куда больше, а его распространение куда шире, чем там, где его нет.


P.S.
А многопоточность "в современном мире программирования" - это далеко не "Фоновые задания" - они слишком тяжеловесны - это же целые изолированные процессы (медленно стартуемые, медленно синхронизирующие данные, и доступные только в серверном контексте).
Сейчас в моде корутины или иные быстрые способы асинхронного выполнения кода (в т.ч. параллельного) - запуск таких "потоков" происходит очень легко и очень быстро, как и управление ими.
И это применяется как в серверном контексте, так и в клиентском - есть много задач, когда асинхронная многопоточность нужна именно на клиенте
amatoravg; KazanKokos; tetraren; kote; +4 Ответить
35. Smilk 08.09.21 11:48 Сейчас в теме
(31)Не нужно мне рассказывать что такое наследование, я знаю это, пишу параллельно на Java. Я спросил как вы представляете наследование в 1с с той структурой метаданных которая сейчас есть? Ведь структура проги на языках где реализовано наследование живет в оперативке, а структура конфигурации 1с живет в Базе Данных... То есть затеяв наследование придется запрашивать в БД структуру родителей и наследников, что усложнит работу с БД, там и так не все гладко со скоростью зачастую. И приведите хоть один пример или неразрешимую задачу где в 1с вам необходимо наследование?
127.0.0.0; +1 1 Ответить
36. Darklight 33 17.09.21 12:00 Сейчас в теме
(35)Зачем Вы смешивает "тёплое с мягким". Наследование структур баз данных и наследование структур данных в алгоритмах - это всё-таки разные вещи - но те и другие возможны.

Для начала наследование в алгоритмах хотя бы. Да хотя бы просто классы (пусть и без наследования), позволяющие объявлять структуры, содержащие и методы и свойства (свойства как в классах, которые их поддерживают как, скажем в Kotlin, а не как в Java) - уде было бы хорошо. То во главу угла я ставлю ключевой принцип ООП - Инкапсуляция.
А одинарное наследование - это сейчас больше возможность повысить возможности повторного использования кода и структуры данных.
Куда важнее - поддержка привязки, проверки и приведение к интерфейсам - вот это воистину открывает очень большие возможности по систематизации, абстрагированию и унификации алгоритмов. По сути тут может быть реализован это уже второй принцип ООП - Полиморфизм (в принципе даже без прямого наследования) - возможность выделять из объекта класса разную функциональность по разным интерфейсам.
А наследование - его напрямую даже можно не вводить. Можно, например, ввести механизм обёртывания - когда "класс-предок" встраивается в "класс-потомок" как приватное свойство - а его API публикуется на API "класса-потомка" (целиком, или только конкретные интерфейсы).
Или можно использовать модель прототипов – как JavaScript (которая куда ближе 1С Предприятие 8, чем, скажем модель языка Java).

Неразрешимых задач в 1С, которые можно обойти только наследованием, пожалуй, нет - есть много костылей (в т.ч. в типовых конфигурациях) решающих задачи без наследования. Да что тут наследование - в 1С классов то нет - без инкапсуляции всё строится на динамически изменяющихся структурах, таблицах значений и куче общих модулей - из которых дёргаются функции обработки этих данных. Там такая анархия - мама не горюй.
А, например, иерархию объектов можно было бы построить для обработки данных, скажем, при проведении документов - когда финальный класс, олицетворяющий данные документ, собирается из нескольких предков по частям - потихоньку набирая структуру и проводя полиморфизм алгоритмов работы с данными от общих реквизитов к более частным. При этом скрывая от внешних алгоритмов детали работы с этими данными - где и как они физически размещаются - внешним алгоритмам не важно, у них будет унифицированный интерфейс. А в будущим эта внутренняя реализация будет меняться - а внешние интерфейсы будут, условно только расширяться.
Мне тоже в повседневных задача очень часто хочется вводить классы с наследованием - я мыслю абстрактно и неконструктивно ;-) (т.е. люблю делать декомпозицию данных на отдельные составные части и потом собирать из них как из конструктора, конечные структуры). И мне часто не хватает возможности передавать такие объекты внутрь алгоритмов - чтобы не задумываться над тем откуда мне нужно вызывать методы обработки этих объектов.
А если проектировать свои документы или структуры данных на основе типовых (или модифицируя имеющиеся) - то тоже очень хотелось бы вводить по ним новые классы наследованием от типовых (с инкапсуляцией и полиморфизмом) для обработки данных - и передавать их как в типовые алгоритмы.
Да и внутри типовых документов, например, хочется вводить новые классы наследованием (от типовых - если бы они были), применять к ним полиморфизм и передавать далее в типовые алгоритмы, не модифицируя их - они будут вызывать из таких классов уже переопределённые версии методов.
Тут непаханое поле по перестройке всей алгоритмической модели.
Чего только стоят полиморфные свойства вместо реквизитов - когда в зависимости от реальной реализации в классе объекта обращение данным через такое свойство может возвращать разные значения (условно при одних и тех же исходных данных) - просто потому, что его обработчик будет написан по-разному в этих классах - это помогает внешней вызывающей сторон не думать о тонкостях обработки этих данных - да хоть получение суммы с НДС или без НДС - при этом не вникая в то, как устроен расчёт этой суммы у объекта (пример два документа: "Реализация товаров и услуг" и "Корректировка реализации товаров и услуг" считают сумму НДС по разному; а ведь и ставки НДС могут быть не только типовые и вообще могут меняться; и документы могут быть не типовые со своими нюансами и опциями влияющими на расчёт).

Теперь, что касательно наследования в СУБД. По сути тут нет ничего особенного в 1С. 1С Предприятие 8 – это объектный ORM фреймворк над реляционными СУБД. В конфигураторе Вы сначала проектируете как бы класс, например, Документ, это класс пространства метаданных, а на его основе платформа сама генерирует классы пространства алгоритмов для работы с ним (ну там конкретный ДокументОбъект, ДокументСсылка, ДокументВыборка…); генерирует структуру хранения данных в СУБД в виде набора таблиц.
Тут ничего не изменится – если вдруг можно будет произвести наследование Документа от другого документа – автогенерируемые стандартные реквизиты унаследуются, как и кастомные реквизиты, встроенные в модули документа функции унаследуются. Можно будет добавить свои в т.ч. произвести переопределение как функций так и реквизитов – по ним будет созданные новые классы объектной мелели и таблицы в СУБД (новые, никак не пересекающиеся с исходными) – по сути ничего не знающие о наследовании. Думаю, тут нет смысла выстраивать типизированную иерархию классов предков. Ну можно, конечно выстроить иерархию интерфейсов – если они были определены у предков – или даже её не выстраивать – если нужны привязки к интерфейсам у нового Документа – то их нужно указывать вручную.
Никакой структуры наследования в БД не будет. Это только объектная модель. Но…. вот поддержку Интерфейсов для модели запросов я бы добавил – но по сути, скорее тоже только на уровне транслятора запросов. Приведение и проверка поддержки Интерфейсов в запросах вещь очень полезная и мощная – особенно при работе с данными составных типов.

В синтаксисе при этом по сути ничего не меняется – применяются операторы «Выразить» и «Ссылка» - но вторым аргументом будет тип интерфейса, а транслироваться это будет в аналогичные операции по всем метаданным и конфигурации, поддерживающим этот интерфейс, входящим в указанный источник данных операции. Ну, я бы только ещё добавил (изменение в синтаксис запросов) возможность простой комбинации проверки и приведения сразу к нескольким интерфейсам с возможностью комбинировать условие по И или по ИЛИ внутри операции (в не отельными условиями в секции ГДЕ или ВЫБОР).

ООП можно и в запросах ввести – но ту уже сложнее. Если вкратце – такие объекты нужно прописывать отдельно в выражениях на языке, доступном в модели запроса. Но профит неимоверный – применение свойств с обработчиком – это повторное использование кода, сокращение выражений в запросах, и унификация обработки без вникания в детали исходной реализации.
А если бы ещё так можно был бы писать более продвинутые функции для компиляции в хранимые процедуры (а ещё круче – во внутреннюю расширенную программную модель СУБД – хотя её, нет, скажем в PostgreSQL такой нет, а где есть – они везде свои, унификации нет – написать, условно, на языке 1С, то можно для разных СУБД компилировать отдельно).

В общем из ООП в 1С можно выжать очень и очень много!
И это я ещё не стал говорить об АОП (аспектно ориентированном программировании) и об методологии построения архитектуры программ с Внедрением зависимостей (Dependency injection, DI), которые базируются на ООП. А эти технологии принесли бы миру 1С на порядок больше чем просто ООП.

Но, если честно. ООП – это уже прошлый век. 1С его профукала уже. Сейчас в тренде функционально-императивное программирование. А в будущем маячить машинное обучение и Искусственный Интеллект.

В последнее время, я вообще больше склоняю к том, что в будущих учетных платформах (после середины XXI века) подходы к программированию сильно изменятся. Станут более абстрактными, декларативным, и динамически перестраивающимися (но при этом я за строго типизированную модель исходного кода, просто допускающую контролируемые исключения). В этом мире ООП подход конечно сохранится, но его прицепы будут боле размазаны по новым методикам построения алгоритмов.
Например, я пропагандирую модель сборок приложений из отдельных модулей с высоким уровнем абстракции и глубоким уровнем управляемой взаимной интеграции и статической оптимизации где алгоритмы ориентированы на то, что при их формировании они не знают всех деталей как структур данных, так и методов их обработки – они должны оперировать ими максимально абстрактно, ориентируясь на некоторые ключевые разделения на уровне общих, декларируемых изначально, понятий и локального API. Условно, никаких конкретных типов данных, никаких фиксированных путей. Но всё это только на этапе описания алгоритмов и абстрактных структур данных. А далее должна происходить сборка конкретной модели из исходных компонент (в т.ч. с пост макро алгоритмической обработкой) – где большая часть абстракций раскрывается фактическими структурами. Остальное раскрытие остаётся до уровня рантайм где код дополнительно должен налету по фактическим данным проявляться, оптимизироваться, ДОкомпилироваться (JIT) и кэшироваться. ООП и АОП тут буду как раз очень кстати - но их применение уже не главные принципы, а лишь одни из способов функционирования всей модели
tetraren; +1 Ответить
27. EgorSneg@mail.ru 22.06.20 15:18 Сейчас в теме
Пришёл с завода снова в 1с:) Гы.
28. skyboy13 14 12.02.21 12:47 Сейчас в теме
СервисыИнтеграции - Это не это вещь?

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

«Внешний сервис интеграции» не входит в комплект поставки. Информация по данной функциональности публикуется отдельно.
Для использования сервисов интеграции требуется лицензия на тестирование выделенной функциональности.
Источник: https://dl03.1c.ru/content/Platform/8_3_19_838/1cv8upd_8_3_19_838.htm#d573542d-223f-11ea-8371-0050569f678a

Получается за отдельные деньги?
32. kote 537 19.04.21 20:24 Сейчас в теме
Очень хочется получить нормальный ООП + функциональный + достаточно быстрый язык программирования типа python
с основными бизнес объектами, системой построения отчетов и генератором форм +- как в 1С..

А то, что сейчас делают с платформой - это уже непотребство.
Пора вернуться к временам 7.7 когда можно было инсталировать только те компоненты, которые тебе нужны на конкретном месте

.. пришли к тому, что для обычного рабочего места кассира - ставиться какой-то монструозный пакет всякой всячины -- и у еще недобитых государством мелких предпринимателей с 1 магазинчиком каждые 3-4 года в добавок к маркировке всего и вся еще и вопрос покупки железа для сранной кассы постоянно встаёт..

Скорость исполнения кода - с 8.2 всё падает-падает-падает.. и работ в этом направлении, похоже, даже не планируется..Зато вот давайте туда еще шину данных давайте прихреначим..

Блин.. следующее -- а пусть это будет 3D движок Unreal c шейдерами и RTX - и требования для платформы - чтоб видеокарта не ниже GeForce 3060 4Gb?

И, главное, там, майнинг встройте - ну чтоб это железо с кассой чтоб себя хоть как-то окупало, а?!

Ну 1С - ну что тебе стоит?

==

Давайте уже back to basic - выносите всё лишнее в отдельные компоненты и сервисы - пусть ядро 1С опять будет весить 25 Мб как 7.7 (которая, по моим наблюдениям, вполне себе хорошо работает на кассах у "Красное-Белое")
33. Hatson 535 10.07.21 16:57 Сейчас в теме
(32) А вы посмотрите во что превращается этот ваш "нормальный ООП" в тру языках программирования. Сначала отказ от множественного наследования, потом засилие интерфейсов - там уже давно попахивает функциональщиной , наелись ООП в чистом виде.
34. kote 537 14.07.21 18:30 Сейчас в теме
(33) отказ от множественного наследования и интерфейсы - всё это следствие того, что так лучше пишутся ИТ системы..

Да и что такое "отказ? Эти аспекты продолжают поддерживатся, просто разработчики и архитекторы их избегают - сложно потом разгребать всё это.

А функциональщина - почему это плохо?

Как только функции становятся объектами первого класса - естественно и само собой появляется возможность писать в функциональном стиле.. Я бы не отказался.
37. Darklight 33 17.09.21 12:13 Сейчас в теме
(33)Да не нужен никому этот тру ООП, а-ля SmallTalk, язык программирования - дело не в чистоте ООП, а том как его идеи помогают более эффективно создавать более эффективный программный код.
Как и тот же функциональное программирование - пока не началась гибридизация с императивным оно не снискало большой популярности и распространённости.
Ни один современный ЯП не позиционируется себя больше как чистый сторонник какой-то определённой парадигмы - а пытается впитать лучшее отовсюду, не сразу - но постепенно внедряя новые и новые возможности и, как следствие, усложняясь, но продвигая свою собственную красоту программного кода. Но речь не об этом.

Самое главное, в развитии ЯП, сейчас - это стремление к повышению уровня абстракции, декларативности, кроссплатформенности и повторного использования кода. И тут в 1С всё плохо. Даже с кроссплатформенностью не очень хорошо.
А я бы добавил ещё важность повышения уровня расширяемости/модифицируемости - и даже с этим современной платформе 1С Предприятие 8 (и 1С ЯП) всё плохо (от того, как реализована модель расширений у меня волосы на голове дыбом встаю; а от того как выстраивается архитектура типовых конфигураций - в ужасе выпадают). Это всё тихий ужас - но это уже совсем другая тема.

Новая платформа 1С остро нуждается в ООП, АОП и функциональной интеграции. И в более продвинутой встроенной в языке модели запросов (более глубокой чем дано устаревший ANSI SQL)
41. KazanKokos 11 11.11.21 18:53 Сейчас в теме
(37)
Да не нужен никому этот тру ООП

Как показали расширения, которые дали только один аспект ООП - Полиморфизм, пусть и псевдо, очень даже облегчает работу. :)
42. Darklight 33 12.11.21 15:59 Сейчас в теме
(41)Полиморфизм шутка очень хорошая (хотя и несколько усложняет анализ кода и его отладку - но тут уже IDE должна приходить на помощь). Но в чистом виде классический ООП почти не прижился. Но - с появлением распределённых вычислений всё больше смотрят опять в сторону возможностей ЯП в которых зародился чистый ООП.
Даже множественное наследование снова пытаются прикручивать (то что называется в разные ЯП трейты или интерфейсы с реализацией по умолчанию; есть и другие - менее классические подходы эмуляции наследования как такового).
Ещё раз подчеркну - я не против ООП, я как раз за него, но в действительности, за его возможности - пусть они и будут реализованы иначе, чем в классическом ООП - например, я вполне могу отказаться от классического наследования как такогового - заменив его инъекционным обёртыванием - когда в объект можно интегрировать другой объект в качестве вложенного свойства (поля), а его (помеченные соответствующим образом) члены (свойства и методы) автоматически (или с ручной коррекцией состава или конечного именем) переносятся в целевой объект, конфликты имён важны только для внешнего API (решаются в ручную) - внутреннее обращение всегда идёт через вложенный член-объект напрямую. Поля не переносятся - они всегда вложенные в интегрируемые объекты, а вот свойства доступа к этим объектам могут переноситься и переопределяться. А члены интегрируемых объектов локально тоже можно переназначить на другие источники. Ну а получая член такого объекта - получаешь полный доступ к его публичному API - это как приведение к интерфейсу
Оставьте свое сообщение