public Team Team { get; set; }
}
а че он делает? 🤠 версия php?
это из Java, геттеры и сеттеры
Как вот то же самое написать на PHP? Ассоциация классов: https://metanit.com/sharp/patterns/pics/2.5.png Ничего не делает. Просто хочу увидеть ассоциацию между классами (с агрегацией и композицией я разобрался), с ассоциацией и кратностью нет.
геттер/сеттер понятно, просто сокращение такое, не понял сахар какой или еще что)
видимо человеку непонятно, как влиять на поля объекта. Я-бы расписал методы для взимодействия, но мне лениво. Они есть почти в любом примере кода по ООП в PHP
геттер/сеттер class Player { private Team $team; public function getTeam(): Team { return $this->team; } public function setTeam(Team $team): void { $this->team = $team; } }
1) Это и будет ассоциация? 2) А кратность как указать? 3) Для агрегации и композиции надо ли для свойства указывать тип?
1. да 2. хз.. такое в каких то ЯП можно делать? фреймы дают всякие $this->hasMany() и т.д. а так только на возврат какую коллекцию/ репку делать 3. вроде крайне желательно =) как это все появилось в пхп..
Пример классный - спасибо. Но я не пойму как сделать например если игрок принадшлежит двум командам?
тож самое, только не модель Team, а какая коллекция TeamCollection которая уже содержит сколько нужно Team. на край массив оставляют 🤠
Я же правильно понимаю что по хорошему агрегация и композиция это внедрение зависимостей? (DI)
А чем это отличается от di?
DI это один из способов управлять композицией. По сути DI это то, как мы получаем объекты одних классов внутри других. А композиция - это совокупность классов на замену наследованию. Другими словами это как "колесо" и "крутиться" - не одно и то же) То есть композицию из классов можно составить и без DI - просто создавая объекты внутри при помощи new
Обсуждают сегодня