Открыть сервис

Движок как техническое понятие

Движок — в технике и программировании общее название устройства, механизма или программного комплекса, который преобразует входные воздействия (энергию, данные, команды) в заданный результат — движение, вычислительный процесс или формирование изображения. Термин применяется в нескольких областях: от машиностроения, где движок обозначает силовую установку, до разработки программного обеспечения, где под движком понимают ядро, управляющее логикой, графикой или физикой. Объединяющая черта всех значений — наличие внутреннего механизма, скрытого от пользователя, который обеспечивает работу более крупной системы.

Движок в машиностроении

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

Ключевые параметры автомобильного движка:

  • рабочий объём (литры или кубические сантиметры);
  • число и расположение цилиндров (рядное, V-образное, оппозитное);
  • система питания (карбюратор, инжектор, непосредственный впрыск);
  • наличие наддува (атмосферный или турбированный).

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

Программный движок

В информатике движок (англ. engine) — это программный компонент, который реализует ядро функциональности приложения и предоставляет остальным частям системы готовые возможности. Разработчик не пишет всю логику с нуля, а опирается на движок, добавляя собственный контент и правила.

Игровые движки

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

Браузерные движки

Браузерный движок отвечает за разбор HTML и CSS, построение объектной модели документа и отображение страницы. От него зависят скорость загрузки, поддержка веб-стандартов и корректность вёрстки. Существуют также движки JavaScript, исполняющие сценарии на странице.

Прочие виды

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

Устройство и принцип работы

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

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

Важное свойство зрелого движка — абстракция: он скрывает сложность реализации и позволяет работать с высокоуровневыми понятиями (объект, сцена, материал, тело). Это снижает порог входа и ускоряет разработку.

Применение и значение

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

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

Классификация

ОснованиеВиды
Область применениямеханические, программные, аппаратные
Назначениеигровые, браузерные, физические, поисковые
Доступностьоткрытые, проприетарные
Масштабуниверсальные, специализированные

Критика и ограничения

Термин «движок» неоднозначен: в разных сферах он обозначает разные объекты, что затрудняет формальные определения. В профессиональной документации предпочитают более точные слова — «двигатель», «ядро», «платформа». Кроме того, готовый движок навязывает собственную архитектуру, и перенос проекта на другую основу может потребовать значительной переработки.

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

Загружаем BFOmetr…