Описание: Web-Гуру - это онлайн тренинг веб-программирования. Цель курса - превращение участников в настоящих виртуозов веб-программирования. Это 3 месяца регулярных вебинаров, практических занятий, домашних заданий и работы над ошибками, которые позволяют стать не просто грамотным веб-программистом, не просто веб-программистом с широким кругозором, а настоящим ГУРУ веб-технологий. Web-Гуру - это настоящий сюрприз для PHP-новичков.
Содержание: Урок 1. Подготовка к работе функции для работы с БД
Урок 1. Бонус. PDO (PHP Data Objects) • Что такое PDO • Преимущества PDO • Как подключить функциональность PDO • Создание объектов PDO • Подключение к БД через PDO • Выполнение запросов средствами PDO • Обработка выборок из БД средствами PDO • Работа с объектами PDO • Перехват ошибок PDO • Выполнение SQL-команд INSERT, UPDATE средствами PDO
Урок 2. Архитектура MVC • Что такое архитектура ПО • Что такое хороший код • Шаблоны проектирования • Как работает приложение • Общее описание схемы MVC • MVC в PHP • Пример небольшого сайта, реализованного в рамках MVC • Структура папок такого сайта • Файл начальной загрузки и настроек • Комментирование шаблонов • Альтернативный синтаксис PHP для использования в шаблонах
Урок 2. Бонус про реляционные БД • Реляционная БД • Таблицы реляционной БД • Индексы и принцип их работы • Три нормальные формы и правила нормализации • Оптимизация БД • Обратная связь по уроку 2 • SQL-инъекции и способы их предотвращения • Правильное выделение абстракции модели • Опасность изменений данных при переходе по ссылке • Распараллеливание работы программиста и верстальщика
Урок 3. Базовый шаблон • Вложенность шаблонов • Резка шаблона • Шаблонная функция • Буферизированный вывод в PHP • Шаблон на основе буферизированного вывода
Урок 4. Концепция ООП • Что такое ООП • Преимущества ООП • Что такое Класс • Что такое Объект • Пример определения класса • Пример объявления объекта • Свойства и методы классов, примеры • Преимущества использования классов • Конструкторы класса, примеры • Три важнейшие парадигмы ООП • Инкапсуляция • Наследование • Полиморфизм • Примеры использования возможностей ООП
Урок 5. Особенности ООП в 5-ой версии PHP • Главное отличие реализации ООП в PHP5 от PHP4 • Модификаторы доступа • Конструкторы • Деструкторы • Клонирование • Константы классов • Ключевое слово self • Статические методы классов • Статические поля классов • Абстрактные классы • Абстрактные методы классов • Работа с классами как к массивам • Функция __autoload() • Исключения • Перегрузка свойств класса, сеттеры, геттеры • Перегрузка вызова методов класса • Использование интерфейсов • Оператор instanceof • Ключевое слово final
Урок 6. MVC с помощью ООП • Пример реализации объектной модели MVC в PHP • Модель • Представление • Контроллер • Точка входа • Иерархия контроллеров • Цикл обработки запроса • Определение размера всех любой страницы сайта • Определение времени генерации любой страницы сайта • Обратная связь по уроку 6 • Правильное и неправильное проектирование контроллеров • Избегание "паразитного" кода • Принцип стремления к простоте • Фреймворк • Отделение ядра сайта • Ослабление зависимостей между классами • Автоматическая загрузка классов • RewriteEngine в htaccess • Ошибки именования классов, функций и файлов • Советы по проектированию модели
Урок 7. Шаблонизатор Smarty • Что такое шаблонизатор Smarty • Установка Smarty • Подключение и создание экземпляра класса Smarty • Настройки для работы Smarty • Шаблоны для Smarty • Как работает шаблонизатор • Скомпилированные шаблоны Smarty • Работа с переменными в шаблоне • Организация циклов в шаблоне • Буферизация вывода в шаблоне • Подключение шаблонов • Передача переменных между шаблонами • Запрет на интерпретацию содержимого в шаблоне • Включение PHP-кода в шаблон • Использование конфигурационных переменных • Функция вывода на экран шаблона • Функция передачи переменных в шаблон • Проверка компиляции шаблона • Принудительная компиляция шаблона • Установка уровня вывода ошибок • Очистка переменных шаблона • Очистка скомпилированных шаблонов • Буферизация вывода шаблона • Получение переменных шаблона • Проверка наличия шаблона • Кэширование • Урок 8. Одиночка. Драйвер БД • Преобразование модели от процедурного подхода к ООП • Статический класс • Шаблон проектирования "Одиночка" • Драйвер работы с БД • Обратная связь по уроку 8 • Способы подключения классов контроллеров и модели • Выбор способов автозагрузки • Как правильно называть классы • Вопросы проектирования контроллеров
Урок 9. Пользователи, роли, привилегии, сессии • Пользователь • Сессия • Привилегия • Роль • Механизм авторизации • Механизм контроля доступа • Гибкая схема разделения полномочий • Сокрытие страниц сайта • Особенности протокола HTTP • Использование cookies • Использование сессий PHP • Шифрование паролей • md5 • Генерация случайных строковых последовательностей • Определение online пользователей • Схема БД для реализации всего механизма • Создание законченного программного модуля, реализующего весь механизм • Оптимизация программного модуля, кэширование • Механизм авторизации и MVC • Обратная связь по уроку 9 • Базовый шаблон и авторизация • Проверка привилегий в шаблоне • Безопасный контроллер • Безопасная модель • SQL: соединение таблиц с помощью JOIN • Комментарии для ролей и привилегий в БД • Базовый шаблон и главное меню • Ошибка смешивания ролей и привилегий • Стократная оптимизация вывода списка пользователей online
Урок 10. Введение в Kohana • Загрузка ПО • Документация • Фреймворк • Основные особенности Kohana • Стиль программирования • Установка Kohana • Структура каталогов • Правила именования классов и их расположения • Ядро, модули и приложение • Последовательность и приоритеты загрузки файлов • Точка входа • Цикл обработки запроса • Маршрутизация и сегменты URL • Избавляемся от index.php в URL • Урок 11. Маршрутизация в Kohana • Определение URL-маршрутов • Формирование шаблона маршрута • Значения по умолчанию в шаблоне маршрута • Согласование архитектуры каталогов с URL-маршрутизацией • Ограничение параметров маршрута • Организация коротких адресов • Получение параметров маршрута в контроллере
Урок 11. Работа с Базой Данных в Kohana • Настройка подключения к БД • Получение экземпляра объекта для работы с БД • Получение таблиц БД • Получение колонок выбранной таблицы • Разрыв соединения с БД • Формирование запроса к БД • Кэширование результатов запросов к БД • Работа с результатами запросов к БД как с объектами • Параметризация запросов • Работа с конструктором запросов • Формирование сложных запросов через конструктор • Использование дополнительных возможностей конструктора запросов • Использование агрегирующих функций в запросах • Выполнение модифицирующих запросов к БД
Урок 12. Работа с Kohana. Модуль ORM • Класс ORM • Связь именования классов с таблицами БД • переопределение ресурсной таблицы, базы данных, первичного ключа • Получение объектов из БД средствами ORM • Определение параметров запроса в БД средствами ORM • Запись объектов в БД • Определения правил для ORM-модели • Формализация связей один-ко-многим для ORM • Формализация связей много-ко-многим для ORM
Урок 12. Работа с Kohana. Модуль авторизации • Настройка модуля авторизации • Табличная архитектура модуля авторизации • Регистрация пользователей • Вход пользователя на сайт • Проверка статуса пользователя • Выход пользователя с сайта • Автоматический заход на сайт • Принудительный заход на сайт
Дополнительный урок. Точки над i • Переход от структурного программирования к объектно-ориентированному • Понимание концепции ООП • Когда нужны конструктор и деструктор • Порядок вызова конструкторов и деструкторов при наследовании • Шаблон проектирования "Одиночка" • Статический методы • Частые ошибки при вызове методов объектов • Внутренние методы PHP, используемые внутри класса • Драйвер БД и PDO • Абстрактный класс и интерфейс • MVC: иерархия контроллеров • Передача информации между запросами • 5 правил проектирования объектной модели • Разработка сайта от и до: 5 шагов • Готовое решение для создания сайта (пакет-сборка и правила расширения)
Авторы: Никитин А., Ляпин Д. Год выпуска: 2010 Язык: русский Видео кодек: MP4 Видео: 800*600 32,0 Кбит/сек 15 кадр/сек Аудио: 21,6 Кбит/сек 44,1 КГц 2 канала Размер: 1.25 GB