Движо́к (жаргонизм от англ. engine — мотор, двигатель) — выделенная часть программного кода для реализации конкретной прикладной задачи — программа, часть программы, комплекс программ или библиотека, в зависимости от задачи и реализации. Как правило, прикладная часть выделяется из программы для использования в нескольких проектах и/или раздельной разработки/тестирования.
Типы движков
Примеры движков:
- Движок для интернет-магазина Опенкарт;
- Поисковый движок (search engine) — основа поисковых систем. Разные поисковые системы могут работать на одном движке. Например, поисковая система Mail.ru некоторое время назад использовала поисковый движок Яндекса;
- Движок сайта — система управления содержимым сайта;
- Вики-движок — программа, служащая для преобразования вики-разметки в удобочитаемое представление, чаще всего в формат HTML.
- Браузерный движок — программа для преобразования HTML-разметки сайта в удобочитаемое пользователю представление в браузере (к примеру, текст «<i>курсив</i>» будет преобразован браузерным движком в «курсив»). Наиболее известные браузерные движки: Gecko, Trident (MS), Presto (Opera), KHTML, WebKit.
- Форумный движок — программа (комплекс программ и скриптов, обычно на PHP, хотя возможны реализации и на многих других языках) для обеспечения деятельности веб-форумов, обеспечивающих тот или иной набор функционала для участников данных интернет-сервисов.
- Графический движок — система отображения прикладного окружения (например, оконный интерфейс или движок отображения (рендеринга) объёмной сцены)
- Голосовой движок (text-to-speech engine) — программа, на вход которой подаётся текст, а на выходе она синтезирует речь. Наиболее известны голосовые движкиLernout & Hauspie, Digalo, IBM ViaVoice TTS, eSpeak, Festival.
- Физический движок — система, отвечающая за симуляцию физики реального тела.
- Игровой движок — комплекс поддержки игровой ситуации, включающий объектную поддержку игровой ситуации, процедуры игровой стратегии компьютерных персонажей, её визуальное и звуковое сопровождение и т. п. Игровой движок может использоваться для реализации отдельных задач специализированные движки.
- Движок базы данных — ядро СУБД. Обычно используется англоязычные термины database engine или storage engine.