Работа с объектами конфигурации

Работа с объектами конфигурации #

Традиционно при разработке приложений на базе Eclipse для реализации персистентной объектной модели используется Eclipse Modeling Framework EMF. EMF предоставляет набор инструментов, способных по описанию модели в терминах ООП (например, по UML-диаграмме) сгенерировать набор классов, реализующих данную модель, а также набор классов для сохранения модели в файлах. Таким образом EMF избавляет разработчика от написания шаблонного кода и позволяет ему сконцентрироваться только на реализации бизнес-логики.

Однако EMF имеет ряд недостатков, которые делают его практически неприменимым при обработке больших объемов данных в многопоточной среде. Это:

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

В связи с этим в 1C:EDT мы разработали собственную платформу для работы с большими моделями. Далее в этом документе мы будем называть ее “Платформа БМ” или просто “БМ”. Если кратко, то платформа БМ — это объектная СУБД, обеспечивающая частичную совместимость с EMF, при этом решающая перечисленные выше проблемы. Также был разработан слой интеграции, позволяющий эффективно использовать БМ в решении стандартных задач, возникающих при разработке IDE на базе Eclipse, а также других RCP-приложений.