
Курс рассчитан на десять 3-х часовых занятий. 8 занятий совпадают с описаниями модулей + 2 чисто практических занятия, где студенты смогут задать свои вопросы и с головой погрузиться в курсовой проект.
Каждый модуль состоит из двух частей - практической и теоретической. Практическая часть - это добавление функциональности к курсовому проекту.
После окончания курса Вы сможете:
- Начать карьеру PHP-программиста
- Стать фрилансером, разместив и легко зарабатывать, делая сайты и различные приложения
- Написать на PHP собственный интернет-магазин
- Начать собственный стартап
Программа курса:
СпойлерМодуль 1. Основные интернет технологии (world wide web)
- Базовые технологии
--- Клиент-серверная архитектура приложения, понятия “клиент”, “сервер”, “протокол”, URI, IP-адрес, DNS-сервер.
--- Протоколы передачи данных (TCP/IP, UDP, HTTP, HTTPS, FTP) - краткий обзор преимуществ и недостатков
--- Принцип работы современных браузеров (запрос на URI, получение ответа, рендеринг содержимого)
--- Структура протокола HTTP (стартовая строка, заголовок, тело сообщения)
--- Основные методы HTTP (GET, POST, HEAD)
--- Понятие HTTP заголовка (назначение заголовка - управление поведением взаимодействия клиента и сервера, формат заголовка
--- Тело сообщения. Краткая история языка HTML
- Серверные веб-технологии
--- Краткий обзор языков, используемых для разработки серверов (PHP, ruby, Java)
--- Интерпретируемые и компилируемые языки - преимущества и недостатки
--- Основные составные части серверов
--- веб-сервер Apache, Nginx - сферы применения, преимущества, недостатки
--- Постоянные хранилища данных (mysql, postgresql, nosql (mongoDB, redis)) - краткий обзор, основные отличия.
--- Понятие “кеширующего слоя БД”. Memcached.
- Введение в PHP.
--- история
--- кто использует (vk, rutracker, игры)
Подготовка инструментария.
--- Denwer - быстрый старт
--- IDE - phpStorm.
--- Преимущества IDE (автокомплит, рефакторинг, интеллектуальный поиск)
Практическая часть: установка и настройка необходимого инструментария для начала работы.
Модуль 2. Основы синтаксиса
- Формы включения PHP кода внутрь страницы и почему лучше разделять PHP и HTML.
- Передача данных из HTML формы в php
- Разделение выражений. Комментарии.
- Правила именования переменных. Константы.
- Типы данных. Опасность неявных преобразований (0==NULL, “0”!=NULL)
- Операторы и операнды.
- Условные конструкции
--- if
--- else
--- elseif/else if
--- Альтернативный синтаксис (не рекомендуется!)
--- switch
- Циклические конструкции
--- while
--- do-while
--- for
--- foreach
- Пропускающие и прерывающие конструкции
--- break
--- continue
- Подключающие конструкции
--- require
--- include
--- require_once
--- include_once
--- отличия require и include
--- проблемы быстродействия при использования require_once и include_once
--- autoload
- Конструкция возврата значения
--- return
- Исключения (try catch throw)
- Прочие конструкции
--- declare
--- goto
Практическая часть: создание формы обратной связи с фильтрацией входных параметров
Модуль 3. Массивы и функции
- Массивы. Различные типы массивов в PHP (ассоциативный и простой)
- Функции.
- Функции для работы с массивами.
- Создание библиотек.
Практическая часть: научить форму обратной связи отсылать e-mail. Создание каркаса каталога (из списка статических файлов)
Модуль 4. Основные функции ядра языка PHP
- Математические функции.
- Функции для работы со временем.
- Функции для работы со строками.
Практическая часть: Научить показывать “магазин закрыт”, если серверное время не попадает во время работы магазина или сегодняшний день - выходной.
Модуль 5. ООП
- ООП - доминантная парадигма. Почему?
- Понятие объекта, метода и поля класса
- Принципы ООП - наследование, инкапсуляция, полиморфизм
- Абстракция как основной элемент программы
- Объектно-ориентированное программирование в PHP.
- Магические методы
- Паттерны программирования
- MVC
- Пространства имен
Т
- рейты
Практическая часть: Разработка архитектуры сайта исходя из паттерна MVC и перенос уже готовой функциональности.
Модуль 6. Введение в работу с базами данных в PHP.
- Реляционная модель СУБД
- Нормальные формы БД. Приведение БД в 3 нормальную форму.
- Обзор возможностей PHP по поддержке работы с разными СУБД.
- Административные возможности СУБД MySQL.
- Взаимодействие PHP и MySQL.
- Расширение PHP Data Objects.
Практическая часть: Создание структуры базы каталога, вывод данных из базы на странице каталога.
Модуль 7. Шаблоны
- Шаблонизаторы
- Smarty. Установка и настройка
- Smarty. Краткий обзор синтаксиса
- Высокопроизводительные шаблонизаторы. Blitz
Практическая часть: перевод представлений на smarty
Модуль 8. Файловая система
- Принципы взаимодействия с файлами и директориями средствами PHP.
- Загрузка файла через форму.
Практическая часть: форма загрузки данных о товаре
и многое другое!
Для просмотра содержимого вам необходимо авторизоваться.