О курсе
Курс «PHP Углубленный» это третий уровень в программе подготовки специалиста по разработке приложений на языке PHP.
На данном курсе рассматриваются основы использования расширений PHP, решение проблем безопасности в PHP приложениях, особенности применения стандартов написания кода PSR2 и PSR4, тема внедрения зависимости в PHP. Вы познакомитесь с принципами работы с базами данных – Active Record и Data Mapper, основами построения архитектуры приложений – применение базовых паттернов проектирования, с принципами SOLID и их реализацией в коде.
Для понимания материала данного курса необходимы знания языка PHP на уровне курсов «PHP 8.0 Стартовый» и «PHP 7.4 Базовый», базовые знания SQL на уровне курса «PostgreSQL».
Чему вы научитесь на данном курсе:
- Понимать принципы, по которым работают расширения или модули.
- Понимать возможности использования языка для хранения информации - YAML.
- Применять библиотеку CURL.
- Обеспечивать на базовом уровне безопасность создаваемого web-приложения.
- Использовать основы MD5 шифрования в своем приложении.
- Понимать основные направления взлома web-приложений - проблемы безопасности выполнения запросов к базе данных, XSS и др.
- Применять криптографические модули Random_bytes, HASH.
- Обеспечивать в своем приложении следование базовым правилам написания валидного кода, PSR2 и PSR4 стандарты.
- Понимать и применять базовые принципы внедрения зависимостей.
- Понимать основы применения базовых архитектурных принципов, в частности паттернов проектирования, принципов SOLID.
Этот курс входит в специальности:
Предварительные Требования
- Знание языка PHP.
- MySQL.
- Bash.
Вы научитесь
- Понимать PHP Расширения или Модули и практики их применения.
- Проектировать классы, реализовывать наследование и работать с объектами.
- Понимать ORM, Active Record.
- Работать с Базой Данных. Использовать Query Builder.
- 3 ч 46 м
- 23.01.2022
- 9
- 28.09.2022
- русский
Что входит в курс
×
Вы действительно хотите открыть доступ к тестированию по курсу PHP Углубленный на 40 дней?
В данном уроке рассматриваются принципы функционирования отдельных модулей языка PHP. А именно: разбираются принципы, по которым работают расширения, рассматривается как их правильно устанавливать, команда php -i. Будет показан пример работы с YAML. Также мы разберем MD5 шифрование. Вы познакомитесь с библиотекой CURL, её параметрами и конфигурацией.
В данном уроке рассматриваются конкретные способы взлома web-приложений. Рассмотрим запросы к БД, подготовленные запросы, XSS взломы. На примерах мы увидим, как, не экранируя POST запрос, мы получаем уязвимость. Рассмотрим функцию htmlspecialchars(). Вы узнаете про криптографические модули Random_bytes, HASH. Подведем итоги того, как программист может защитить сайт и сервер от несанкционированного доступа.
Этот урок будет полностью посвящён правилам написания валидного кода. Вы узнаете про PSR2, PSR4 стандарты. Будут рассмотрены основные требования к именованию переменных, функций, классов, интерфейсов и неймспейсов. Мы создадим class Fruits, class Pears и class Apples для практического закрепления. Подведем итоги темы правил хорошего кода. Посмотрим, как PSR применяется в фреймворках на примере Query Builder.
На уроке рассматривается тема передачи зависимости в PHP. Рассматривается передача аргумента через __construct и setter() метод. Мы создадим class App, в который будем передавать объект class Service. В 1 варианте будет использован конструктор, а во 2 уже применим setService метод. Далее мы рассмотрим применение Interface, на примере подключения к БД через разные провайдеры.
В уроке будет рассмотрена работа с Active Record. Мы попрактикуемся со структурой классов и напишем структуру AR. Будет рассмотрено отличие от шаблона Data Mapper и в чем его преимущества. Рассматриваются SELECT, INSERT, UPDATE для Query Builder.
Научиться понимать паттерны в PHP, как их использовать и для чего они нужны, также как их правильно применять.
Научиться понимать принципы Solid. Разобрать на примерах такие сущности как объекты, интерфейсы, зависимости.
Научить студентов понимать архитектуру приложения в PHP. Для чего использовать разделение на Development и Production. Что такое DI контейнер.
Сделать итог пройденного материала. Ещё раз закрепить основные тезисы по Паттернам и Уязвимостям. Рассмотрим архитектуру построения приложения.