Введение
Apache FreeMarker – это бесплатный движок шаблонов на основе Java, изначально ориентированный на динамическую генерацию веб-страниц в архитектуре MVC. Сейчас он может генерировать текст на основе шаблонов и изменяющихся данных. Он не имеет зависимостей от сервлетов, HTTP или HTML и часто используется для генерации исходного кода, файлов конфигурации или электронных писем.
Apache FreeMarker is a free Java based template engine, originally focusing on dynamic web page generation with MVC software architecture. It can now generate text based on templates and changing data. It has no dependency on servlets or HTTP or HTML. It is often used for generating source code, configuration files or e mails.
История
FreeMarker пережил довольно бурную историю до 2004 года, обусловленную сменами парадигм и другими значительными изменениями, происходившими неоднократно. FreeMarker 1 (ныне известный как FreeMarker Classic, отдельный проект) был изначально разработан Бенджамином Гиром и Майком Байером. С 2002 года руководство проектом перешло к Джонатану Ревуски, который выпустил FreeMarker 2, что положило начало серии существенных изменений. Главной целью этих изменений было повышение строгости языка шаблонов, то есть выявление как можно большего числа опечаток и других типичных ошибок. Также была внедрена автоматическая обёртка объектов и постепенно развивалась система типов языка шаблонов. Язык обрёл множество функций для опытных пользователей, таких как расширенные возможности макропрограммирования и пространства имён. С выпуском версии 2.3 в третьем квартале 2004 года язык достиг достаточно стабильного состояния. По состоянию на 2022 год продукт сохраняет обратную совместимость. В будущем не ожидается значительных изменений, нарушающих обратную совместимость, в серии FreeMarker 2. В конце 2015 года FreeMarker был передан в Apache Software Foundation, где он вошёл в Apache Incubator, а 21 марта 2018 года стал полноценным проектом Apache.