Покажите короткий пример по теме «readonly-свойства» и объясните, что здесь важно.

PHPMiddlePHP CoreТеорияphpcorereadonly-svoystvaphp-developerphp-core

Что хотят услышать интервьюеры:

Короткий пример по теме readonly-свойства:

Ответ:

<?php final class Money {
  public function __construct(public readonly int $amount) {
}

}

Что важно: код должен быть безопасным, читаемым и соответствовать контракту задачи. Для PHP-разработчика важно объяснить не только «как написать», но и «почему так безопаснее/надежнее».

  • полезны для DTO и value objects
  • снижают риск случайного изменения состояния
  • не делают вложенные объекты неизменяемыми полностью

Типичная ошибка: думать, что readonly гарантирует глубокую immutability.

На собеседовании: проговорите, какие edge cases вы бы проверили тестами и что бы логировали при ошибке.

Источники

Похожие вопросы