Каковы возможные сценарии использования черт в PHP? [Дубликат]
Возможный дубликат:
черты в PHP - какие-либо реальные примеры / лучшие практики?
В каких ситуациях можно использовать черты в PHP? У меня есть довольно хорошее общее представление об этом, но я не могу придумать, как использовать их в написанном мною приложении, но это может быть потому, что в то время ему не нужны черты.
Один сценарий, который я понял, нуждается в чертах:
Мероприятия. Вместо того, чтобы иметь один класс, который реализует шаблон наблюдателя, и позволяя всем другим классам наследовать его, просто сделайте его признаком и разрешите классам, которые хотят инициировать события или подписаться, использовать эту признак. Например, инфраструктура Yii делает это неправильно, реализуя вещи в классе CComponent, а не используя Trait.В основном функциональные возможности, которые могут совместно использоваться классами, но могут распространяться по нескольким иерархиям классов, должны использовать черты. Какие другие сценарии могут использовать преимущества черт, а не систему событий?