Курс PHP Pro

Старт обучения
Дату уточните у администрации
108 час. по 2-3 раза в неделю

Описание курса

PHP довольно популярен среди разработчиков, потому что позволяет создавать крупные web-проекты, например, Wikipedia и Facebook, интернет-магазины и сложные ресурсы, не говоря уже о таких полезных возможностях языка, как создание динамических страниц и баз данных.

 

Вначале вы будете изучать синтаксис языка PHP, принципы back end-разработки, погружаться в понятия cookie, sessions и работать с ними.

 

После вы научитесь передавать и хранить важную информацию, шифровать и хэшировать, распознавать атаки и бороться с ними. Также мы будем разбирать инъекции SQL и кода, фреймворки и MVC, будем разбираться в архитектуре и структуре проекта.

 

В конце курса вы напишете небольшой курсовой проект, пополните свое портфолио и будете готовы к поиску первой работы.

После курса вы сможете:

  • Использовать язык PHP для самых разнообразных задач
  • Писать сложные проекты, используя фреймворки
  • Запускать собственный проект и работать над ним
  • Претендовать на должность Junior Developer в ІТ-компаниях
  • Находить проекты на фрилансе и презентовать себя работодателю

Программа курса:

1. Веб-приложения и роль языка PHP в работе с ними

  • Как устроен интернет
  • Клиент-серверная архитектура
  • Настройка ПО

2. Основы языка PHP

  • Переменные, константы
  • Выражения, операторы
  • Типы данных и приведения типов
  • Управляющие конструкции

3. Работа с массивами

  • Циклы
  • Массивы
  • Работа с ассоциативными массивами

4. Основы работы с системой

контроля версий


5. Функциональное программирование

  • Функции
  • Область видимости переменных
  • Суперглобальные переменные
  • Строгая типизация

6. Обзор встроенных функций

  • Обзор встроенных функций (функции для работа со строками, с массивами)
  • Рекурсия
  • Стили кодирования

7. Фильтрация, валидация данных и работа с формой

  • Работа с веб-формами
  • Прием и обработка данных от пользователя
  • Фильтрация и валидация данных
  • Основы HTTP протокола
  • Что собой представляют заголовки ответа и запроса

8. Работа с файловой системой

  • Работа с файловой системой
  • Чтение и запись данных в файл

9. Cookies, Sessions

  • Регулярные выражения
  • Работа с cookies
  • Sessions
  • Отличия sessions и cookies, их совместное использование

10. Реляционная модель баз данных

  • SQL – язык запросов
  • Запросы на выборку данных
  • Работа с join
  • Работа с множествами

11. Основные запросы SQL

  • Запросы с Group by, Having
  • Запросы DDL

12. MySQL: Системы управления базами данных (СУБД)

  • Нормализация, целостность данных
  • Транзакции
  • MySQL: Системы управления базами данных
  • Отправка запросов к СУБД, с помощью PHP

13. Работа над совместным проектом «Интернет-магазин»

  • Работа над совместным проектом «Интернет-магазин» (Продолжительность: 3 урока)
  • Разбор архитектурных решений в проекте
  • Знакомство с шаблонами отображения

14. Создание CMS

  • Создание CMS в проекте

15. Знакомство с объектно-ориентированным программированием

  • Классы и объекты
  • Инкапсуляция
  • Полиморфизм
  • Наследование
  • Работа с исключениями

16. Хостинг

  • Отправка почты
  • Хостинг
  • Системы контроля версий
  • Работа с XML, JSON

17. Основы Linux

  • Установка Ubuntu
  • Серверная и десктопная версия
  • Базовые команды Linux
  • Установка веб-сервера Nginx
  • Установка PHP
  • Установка MySQL
  • Деплой Symfony-приложения на DigitalOcean

18. Основы Git

  • Установка и настройка
  • Команды Git
  • Обзор GitHub, GitLab и Bitbucket
  • Создание проекта и заливка на GitHub

19. Composer

  • Установка и настройка
  • Автозагрузчик классов
  • Обзор официального репозитория Packagist
  • Создание собственных пакетов

20. PHP 7.x

  • Новые возможности PHP 7.0
  • Новые возможности PHP 7.1
  • Новые возможности PHP 7.2
  • Новые возможности PHP 7.3
  • Новые возможности PHP 7.4

21. ООП

  • Инкапсуляция
  • Наследование
  • Полиморфизм
  • Классы и Объекты
  • Абстрактные классы
  • Интерфейсы
  • Методы класса
  • Статические методы
  • Магические методы
  • Константы
  • Трейты
  • Исключения
  • Неймспейсы
  • Автозагрузка
  • Композиция вместо наследования

22. Стандарты PSR

  • Обзор стандартов PSR-0, PSR-4 и PSR-1, PSR-2

23. Шаблоны проектирования, SOLID, DRY, KISS, YAGNI

  • Основные порождающие шаблоны
  • Основные структурные шаблоны
  • Основные поведенческие шаблоны

24. Reflection API

  • PHPDoc
  • phpDocummentor
  • Аннотации

25. Standard PHP Library (SPL)

  • Структуры данных
  • Итераторы
  • Основные классы и функции

26. Безопасность в PHP

  • Основные типы атак
  • Шифрование
  • Хеширование
  • Стандартные практики по защите веб-приложений
  • Symfony Security компонент

27. Отладка, предупреждение ошибок, профилирование, оптимизация

  • Какие бывают типы ошибок в PHP, иерархия классов исключений
  • Конструкция try-catch-finally
  • Создание собственных классов исключений
  • Логирование ошибок и его важность
  • Профилирование кода
  • Отладка xDebug, анализ чужого кода

28. REST

  • Обзор архитектуры REST
  • Модель зрелости REST-сервисов
  • HATEOAS
  • Стандарт HAL
  • Спецификация JsonAPI
  • Клиент Guzzle
  • FOSRestBundle для Symfony

29. Тестирование

  • Юнит тесты
  • Функциональные тесты
  • Фреймворки для тестирования Codeception, PHPUnit, Symfony PHPUnit Bridge
  • CI-сервисы: Travis CI, Scrutinizer CI

30. Использование Docker. Контейнеризация приложения

  • Введение в Docker
  • Что такое контейнер?
  • Отличие Docker от Vagrant
  • Введение в Docker-compose
  • Создание LEMP стека на базе Docker

31. СУБД MySQL

  • Объединение таблиц
  • Индексы
  • Оптимизация запросов и команда EXPLAIN
  • Транзакции
  • Триггеры и хранимые процедуры
  • Движки InnoDB & MyISAM

32. Сервисная архитектура

  • Понятие сервисов
  • Контейнеры
  • Dependency Injection

33. Обзор популярных фреймворков

  • Zend Framework
  • Yii Framework
  • Phalcon Framework
  • Laravel Framework
  • Symfony Framework

34. MVC и Symfony 4 фреймворк

  • Установка и настройка
  • Создание простой страницы
  • Роутинг
  • Twig
  • Doctrine ORM

35. Компоненты Symfony

  • Yaml
  • Filesystem
  • Finder
  • Console
  • Process
  • PHPUnit Bridge
  • Validator
  • Form

36. Как составить резюме и пройти собеседование

  • Структура резюме
  • Часто задаваемые вопросы
  • Как вести себя на собеседовании
  • Основные ошибки на собеседовании
  • Урок английского языка №1
  • Урок английского языка №2
  • Урок поиска работы

Минимальные требования:

  • Вы новичок и хотите работать с Back end
  • Вам надоела ваша работа и вы хотите обзавестись профессией в IT
  • Вы уже работаете в IT, но желаете освоить еще одно направление
  • Вы студент профильного факультета и хотите освоить именно PHP

Лекторы:


Курс PHP Pro в Ташкенте

* Указанные скидки не суммируются с другими действующими акциями и специальными предложениями. Если у Вас возникли вопросы, обращайтесь за консультацией к нашим менеджерам!

spinner-it