×
Ви дійсно бажаєте відкрити доступ до тестування за курсом PHP Поглиблений на 40 днів?
ВІДЕОУРОК № 7. Принципи SOLID
У цьому уроці розглядаються принципи функціонування окремих модулів мови PHP. А саме: розбираються принципи, якими працюють розширення, розглядається як їх правильно встановлювати, команда php -i. Наведено приклад роботи з YAML. Також ми розберемо MD5 шифрування. Ви познайомитеся з бібліотекою CURL, її параметрами та конфігурацією.
У цьому уроці розглядаються конкретні способи злому веб-додатків. Розглянемо запити до БД, підготовлені запити, 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 контейнер.
Зробити результат пройденого матеріалу. Ще раз закріпити основні тези щодо Паттерн та Вразливостей. Розглянемо архітектуру побудови програми.