ДЛЯ НОВИЧКОВНЕ ДЛЯ НОВИЧКОВНЕ ОБЯЗАТЕЛЬНОВ РАЗРАБОТКЕ
Разработчику
Архитектору
Чек-лист самопроверки
- Что такое PHP и для каких задач он предназначен?
- Как PHP взаимодействует с веб-сервером (Apache, Nginx)?
- Что такое SAPI и какие интерфейсы выполнения существуют (CLI, FPM, Apache module)?
- Как происходит обработка PHP-скрипта от запроса до ответа?
- Где и как задаётся конфигурация PHP (php.ini, .htaccess, ini_set)?
- Какие есть способы комментирования кода?
- Как объявляются переменные и какие соглашения по именованию приняты?
- Какие примитивные типы данных поддерживаются в PHP?
- В чём разница между
== и ===?
- Что такое «ложные» (
falsy) значения и какие они бывают?
- Как работает автоматическое преобразование типов?
- Какие есть составные типы (
array, object, callable, iterable)?
- Что такое
null и как он обрабатывается?
- Как работают условные конструкции (
if, switch, тернарный оператор)?
- Какие циклы поддерживаются (
for, foreach, while, do-while)?
- Что делают
break и continue?
- Как объявляются и вызываются функции?
- Что такое переменное количество аргументов (
...$args)?
- Как работают анонимные функции и замыкания?
- Что такое области видимости переменных и ключевое слово
global?
- Что такое суперглобальные массивы (
$_GET, $_POST, $_SESSION, $_SERVER и др.)?
- Как работают сессии и куки?
- Как обрабатывать загрузку файлов через форму?
- Что такое автозагрузка классов и как она реализуется?
- Что такое Composer и зачем он нужен?
- Как работают пространства имён (
namespace, use)?
- Что такое класс, свойство, метод, конструктор?
- Как работают модификаторы доступа (
public, private, protected)?
- Что такое статические методы и свойства?
- Как работает наследование и ключевое слово
parent?
- Что такое абстрактные классы и интерфейсы?
- Как реализуется полиморфизм в PHP?
- Что такое трейты (
trait) и зачем они нужны?
- Как работают магические методы (
__construct, __get, __call, __toString и др.)?
- Что такое типизация в PHP (скалярные типы, возвращаемые типы, строгий режим)?
- Что такое union types и nullable types (через
| и ?)?
- Как обрабатываются исключения (
try/catch/finally)?
- Что такое пользовательские исключения?
- Как работает работа с файлами (
fopen, file_get_contents, fwrite)?
- Как сериализовать и десериализовать данные (
json_encode, serialize)?
- Как подключиться к базе данных (PDO, MySQLi)?
- Что такое подготовленные выражения и зачем они нужны?
- Как предотвратить SQL-инъекции и XSS?
- Что такое атрибуты в PHP 8.0 и как их использовать?
- Что такое стрелочные функции и где они применяются?
- Как работает оператор nullsafe (
?->)?
- Что такое
match и чем он отличается от switch?
- Как использовать именованные аргументы при вызове функций?
- Как писать и запускать unit-тесты (PHPUnit, Pest)?
- Какие инструменты используются для анализа и форматирования кода (PHPStan, Psalm, PHP_CodeSniffer, CS Fixer)?