- •1. Web-приложение. Механизмы cgi и FastCgi.
- •2. Web-приложение. Lamp-стек.
- •Установка на Ubuntu
- •Особенности и достоинства ос Линукс
- •3. Web-приложение. Шаблон проектирования «Модель-Представление-Контроллер».
- •4. Web-приложение. Шаблонизатор.
- •Достоинства:
- •О достоинствах
- •5. Web-приложение. Реляционные базы данных.
- •6. Web-приложение. NoSql.
- •7. Web-приложение. Возможности JavaScript.
- •8. Web-приложение. Среда исполнения. Web-сервер установка и настройка.
- •Среда исполнения
- •9. Развитие Web-технологий. Web 1.0, Web 2.0.
- •10. Развитие Web-технологий. Web 3.0, cемантическая паутина.
- •11. Развитие Web-технологий. Web-сервисы.
- •Использование rest для построения Web-сервисов.
- •12. Протокол http. Структура гипертекстового документа. Основные стандарты.
- •Структура гипертекстового документа.
- •Синтаксис
- •Параметры
- •13. Протокол http. Формы и обработка пользовательских данных.
- •14. Протокол http. Объектная модель документа (dom).
- •15. Протокол http. Пользовательские сеансы.
- •16. Протокол http. Технология ajax.
- •17. Протокол http. Структура сообщений. Заголовки. Коды состояния.
- •18. Облачные технологии. IaaS, PaaS, SaaS.
- •19. Облачные технологии. Google App Engine.
- •Ограничения
- •20. Облачные технологии. Google App Engine. Хранение данных.
3. Web-приложение. Шаблон проектирования «Модель-Представление-Контроллер».
Шаблон проектирования (Design Pattern) — архитектурная конструкция, представляющая собой решение проблемы проектирования в рамках некоторого часто возникающего контекста. Традиционно в ООП показывают отношения и взаимодействия между классами или объектами, без определения того, какие конечные классы или объекты приложения будут использоваться.
Model-View-Controller. Шаблон проектирования MVC предполагает разделение данных приложения, пользовательского интерфейса и управляющей логики на три отдельных компонента: Модель, Представление и Контроллер — таким образом, что модификация каждого компонента может осуществляться независимо. Впервые этот шаблон был применён в фреймворке, разрабатываемом для языка Smalltalk в конце 1970-х годов. С этого момента он играет основополагающую роль в большинстве фреймфорков с пользовательским интерфейсом. Он в корне изменил взгляд на проектирование приложений.
Модель — это отражение реальности, учитывающее необходимые для решения поставленной задачи свойства. Модель включает логику решения основной задачи (бизнес-логику):
●сохранение, удаление, обновление данных приложения (CRUD или внешние веб-сервисы);
●инкапсуляция всей логики приложения (необходимо избегать «толстых» контроллеров, т. е. нельзя часть бизнес-логики выносить в контроллер или представление).
CRUD — Сreate, Read, Update, Delete.
Модель Описывает данные и управление ими и нередко называется также бизнес-логикой прикладной программы, т.е. самой ее сердцевиной. Представление Описывает то, что пользователь видит и с чем он может взаимодействовать в прикладной программе. Контроллер Служит в качестве посредника между моделью и представлением. Основным механизмом реализующим View-часть шаблона (но не тождественным!) является шаблонизатор (TemplateEngine).
Взаимодействие элементов MVC Каждый элемент в шаблоне MVC общается с остальными весьма специфичными способами. Коммуницирование реализуется последовательностью событий, которые обычно запускаются взаимодействием пользователя с приложением. Последовательность событий выглядит так:
Пользователь взаимодействует с элементом интерфейса (например, нажимает на кнопку в Представлении).
Представление отсылает событие нажатия Контроллеру, чтобы решить, как это нажатие обработать.
Контроллер меняет Модель на основе того, что он решил относительно нажатия кнопки.
Модель информирует Представление о том, что состояние Модели изменилось.
Представление читает информацию о состоянии в Модели и самостоятельно видоизменяется.
4. Web-приложение. Шаблонизатор.
Шаблонизатор (в web) — это программное обеспечение, позволяющее использовать html-шаблоныдля генерации конечныхhtml-страниц. Основная цель использования шаблонизаторов — это отделение представления данных от исполняемого кода. Часто это необходимо для обеспечения возможности параллельной работы программиста и дизайнера-верстальщика. Использование шаблонизаторов часто улучшает читаемость кода и внесение изменений во внешний вид, когда проект целиком выполняет один человек.
Использование шаблонизаторов часто отождествляют с парадигмой MVC. Эти понятия связаны, но не тождественны.
Суть шаблонизации заключается в том, чтобы отделить каркас страницы от программного кода. Каркас страницы помещается в отдельный текстовый файл (шаблон), в местах, где необходимо вывести данные размещаются специальные псевдопеременные. Сценарий загружает нужный шаблон, заменяет в нем псевдопеременные на соответствующие данные и выводит.
Преимущества, дающие использование шаблонов при генерировании кода HTML-страниц:
Во-первых, чистота кода. Программный код не содержит HTML-кода, поэтому легко читается. В то же время, шаблон содержит только HTML-код, в котором видно где и какие данные вставляются (для этого давайте осмысленные имена псевдопеременным).
Во-вторых, разделение программного и HTML-кода дает возможность независимой разработки движка и дизайна. Чтобы что-то изменить во внешнем виде готового сайта достаточно внести изменения в соответствующий шаблон, при этом не нужно владеть навыками программирования.
Сайт может иметь несколько дизайнов. Чтобы полностью изменить дизайн сайта достаточно просто изменить путь к папке с шаблонами.