Большинство моделей программирования стараются разделить «бизнес-логику» (логику приложения) и «представление». На самом деле, многие архитектуры определяют еще более отдельные «слои» или «ярусы».
Бизнес-логика - это то, о чем ваша программа, чего вы пытаетесь достичь. Например, если вы пишете приложение для гостевой книги, обработка пользователей и комментариев является частью бизнес-логики.
Презентация означает представление данных, управляемых бизнес-логикой, вашим пользователям через некоторый пользовательский интерфейс. При использовании Smarty это обычно означает создание HTML.
Разделение этих слоев имеет много преимуществ:
- Вы можете изменить внешний вид своей страницы (редизайн), не затрагивая свою бизнес-логику.
- Вы можете предоставить различные виды своих данных: версия для печати, версия для людей с ограниченными возможностями, разные цветовые темы, разные форматы вывода и т. Д.
- Если вы работаете в команде, эксперты / дизайнеры пользовательского интерфейса могут разработать пользовательский интерфейс, а программисты могут сосредоточиться на программировании.
Для получения более подробной информации ищите такие термины, как «MVC» (Model-View-Controller) или «Многоуровневая архитектура» .
Особенно полезным может быть описание «трехуровневой архитектуры» в последней статье Википедии. В дополнение к уровням представления и приложения он определяет «уровень данных», который отвечает за хранение и извлечение постоянных данных.