(Статья может быть полезна для разработчиков небольших статических проектов, например, домашней странички)
Актуальность
Вы хотите создать нечто полезное для веб-серфера, но вы не считаете необходимым тратить деньги на хостинг и производство сайта, а также учить язык программирования сложнее HTML?
Вы можете ограничится несколькими страничками выполненными собственноручно на HTML и выложенными на любой сервер, предоставляющий свободный хостинг.
Одним из краеугольных вопросов разработки любого веб-сайта является простота его поддержки. Это подразумевает простоту обновления контента и дизайна сайта. К тому же, вам как автору контента и разработчику дизайна было бы весьма удобно, если бы изменение первого не влекло изменение второго.
Другой проблемой является поддержка единого стиля на всех страницах проекта. В случае, когда их больше одной, такое решение, как внесение единообразных правок во все страницы, не кажется особо мудрым.
[Top]
Решение
Случайно на www.linux.org было обнаружено приложение, которое из простых программ на оригинальном языке может генерировать текстовые файлы, при этом успешно помогает решать проблему оптимизации процесса разработки статического сайта.
Продемонстрируем основные возможности этого приложения:
- Определение объекта (определение из каких логических частей он будет состоять):
object Page {
val name
val navigation
val content
}
- Определение того, как объект должен превращаться с страницу:
execute Page {
output "<(name)>.html" {
<(navigation)>
<(content)>
<(navigation)>
}
- Объявление объекта:
Page page
- Определение наполнения объекта:
page.name = "<Некое имя>"
page.navigation = "<Некая навигация>"
page.content = "<Некий контент>"
(Это место на водит на мысль о разделении контента и дизайна, не так ли?)
- Команда на создание страницы:
execute page
Создается файл с именем <Некое имя>, с навигацией <Некая навигация> в шапке и в хвосте страницы и контентом <Некий контент> посередине.
Это приложение называется DML2.
Документация по DML2 (перевод).
Сайт разработчика DML2. (отсюда DML2 и скачать можно!!!)
[Top]