Да. Изучал основные нововведения и улучшения производительности.
Ключевые возможности, с которыми ознакомился:
- JIT компилятор: Значительно повышает производительность определенных типов приложений, особенно тех, что интенсивно используют CPU.
- Union Types: Позволяют указывать несколько типов для аргумента функции, возвращаемого значения или свойства класса.
- Attributes (ранее Annotations): Структурированный способ добавления метаданных к классам, методам, функциям, параметрам и свойствам.
- Match Expression: Более безопасная и выразительная альтернатива
switch
.
- Named Arguments: Позволяют передавать аргументы функциям и методам по имени, делая код более читаемым и устраняя необходимость запоминать порядок аргументов.
- Constructor Property Promotion: Сокращает бойлерплейт-код при определении и инициализации свойств класса в конструкторе.
- Nullsafe Operator (
?->
): Упрощает проверку на null
при доступе к методам и свойствам в цепочке вызовов.
- Weak Maps: Позволяют создавать ассоциативные массивы, где ключами являются объекты, но при этом не предотвращают сборку мусора для этих объектов, если на них нет других ссылок.
- Новые функции строк и массивов:
str_contains
, str_starts_with
, str_ends_with
, get_debug_type
.
Пример использования Union Types:
php
Пример использования Attributes:
php
Да. Изучал основные нововведения и улучшения производительности.
Ключевые возможности, с которыми ознакомился:
- JIT компилятор: Значительно повышает производительность определенных типов приложений, особенно тех, что интенсивно используют CPU.
- Union Types: Позволяют указывать несколько типов для аргумента функции, возвращаемого значения или свойства класса.
- Attributes (ранее Annotations): Структурированный способ добавления метаданных к классам, методам, функциям, параметрам и свойствам.
- Match Expression: Более безопасная и выразительная альтернатива
switch
.
- Named Arguments: Позволяют передавать аргументы функциям и методам по имени, делая код более читаемым и устраняя необходимость запоминать порядок аргументов.
- Constructor Property Promotion: Сокращает бойлерплейт-код при определении и инициализации свойств класса в конструкторе.
- Nullsafe Operator (
?->
): Упрощает проверку на null
при доступе к методам и свойствам в цепочке вызовов.
- Weak Maps: Позволяют создавать ассоциативные массивы, где ключами являются объекты, но при этом не предотвращают сборку мусора для этих объектов, если на них нет других ссылок.
- Новые функции строк и массивов:
str_contains
, str_starts_with
, str_ends_with
, get_debug_type
.
Пример использования Union Types:
php
Пример использования Attributes:
php