Курс рассчитан на десять 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
Математические функции.
Функции для работы со временем.
Функции для работы со строками. Практическая часть: Научить показывать “магазин закрыт”, если серверное время не попадает во время работы магазина или сегодняшний день - выходной.