IT-словарь › Программирование › Data-oriented design

Data-oriented design

Программирование Svenska → Обновлено: 2026-10-24

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

На современном железе промах кэша стоит сотни тактов, а сами вычисления почти бесплатны. Поэтому данные группируют в параллельные массивы (struct of arrays), чтобы цикл читал только нужные поля, плотно уложенные в кэш-линии, а не скакал по указателям между тяжёлыми объектами.

Майк Эктон (Insomniac Games) чётко сформулировал эту позицию в докладе на GDC 2014 года. Этот образ мысли — двигатель систем сущностей и компонентов, и он находится в открытой оппозиции к наивному объектно-ориентированному подходу.

← Назад к словарю