Содержание

Движок

Движок, двигатель (англ. engine) - промежуточное программное обеспечение, реализующее базовый компонент приложения. Ключевая особенность движка - абстракция, независимость от приложения: в движок выносится наиболее общая и универсальная функциональность с целью повторного использования (code reuse) в других проектах. Вынос функциональности в движок является частным случаем модульности.

Разновидности движков

Архитектура

Движок может представлять собой библиотеку исходного кода, статическую или динамическую библиотеку. Последний вариант наиболее универсален, поскольку позволяет использовать движок с различными языками программирования. Архитектурно движок часто делится на фронтенд и бэкенд. Фронтенд в данном случае - пользовательский программный интерфейс (структуры данных и функции, либо, в ООП-языках, классы). Бэкенд - реализация интерфейса, с которой пользователь напрямую не взаимодействует. Она обычно делается заменяемой. Например, графический движок может иметь переключаемые бэкенды на основе Direct3D и OpenGL, тогда как фронтенд является абстрактным и независимым от конкретной низлежащей технологии.