Сформировалось у меня мнение, что некоторые возможности, давно существующие в системах реляционных баз данных было бы неплохо заимствовать и использовать в рантаймах языков программирования.
В часности, хранить данные одного типа сгруппироваными в "таблицы".
Имеется в виду возможность итерации по всем обьектам одного типа в домене или выборки по индексу.
В типичном рантайме есть графы обьектов разных типов. И можно только перемещаться по связям в этих графах, что бы добраться до нужного обьекта.
Это ограничение заставляет хранить в сущностях указатели на связанные обьекты, что пораждает всякие архитектурные извращения и проблемы.
Проблемы в том, что эти связи нужно вовремя инициализировать,
Некоторые связи актуальны не все время жизни обьекта,
Что бы перейти от одного обьекта к другому, алгоритм должен обладать знанием структуры графа обьектов.
В реляционной модели без этого можно обойтись.
Просто пишем linq query и получаем нужные данные.
Эффективность повышаем за счет индексов.
Может ли такой подход пойти в мейнстрим — в методологию программирования?