Size: a a a

2020 August 20

DC

Denis Chikanov in learn.java
Konstantin
а если я создаю двигатель в машине и двигатель не может существовать без машины это уже компощзиция
Ещё раз - не важно, создаёшь ли ты двигатель В машине
Ты можешь создать его извне, потому что у тебя в приложении такая логика генерации объектов и назначения, например, серийных номеров, и "положить" его в машину
источник

K

Konstantin in learn.java
Vitaly Nechitaylo
Возможность мыслить абстрактно
и это тоже, все таки Java ООП и надо уметь мылить абстрактно
источник

DC

Denis Chikanov in learn.java
Konstantin
паттерны хочу понять, а там есть такая вещь как композиция. в основе многих паттернах лежит в качестве основы композиция. вот и хочу понять что это такое и в чем отличие от агрегации
Агрегация - независимая сущность используется другим объектом
Композиция - у объекта есть зависимые сущности, являющиеся его частью

Вопрос "где вызывается конструктор" вообще здесь не стоит
источник

K

Konstantin in learn.java
Denis Chikanov
Ещё раз - не важно, создаёшь ли ты двигатель В машине
Ты можешь создать его извне, потому что у тебя в приложении такая логика генерации объектов и назначения, например, серийных номеров, и "положить" его в машину
ну я имел в виду то что двигатель не может жить без  машины.
источник

K

Konstantin in learn.java
Denis Chikanov
Агрегация - независимая сущность используется другим объектом
Композиция - у объекта есть зависимые сущности, являющиеся его частью

Вопрос "где вызывается конструктор" вообще здесь не стоит
т.е. по сути зачастую нет строго деления композиция/абстракция, как я понимаю?
источник

V

Vitaly Nechitaylo in learn.java
Konstantin
т.е. по сути зачастую нет строго деления композиция/абстракция, как я понимаю?
Деление у вас в голове на уровне абстракции
источник

K

Konstantin in learn.java
Vitaly Nechitaylo
Деление у вас в голове на уровне абстракции
Понял, спасибо за терпение и внятные объяснения)
источник

V

Vitaly Nechitaylo in learn.java
Konstantin
Понял, спасибо за терпение и внятные объяснения)
Однажды на собеседовании мне задали вопрос: можно ли рассматривать человека и самолет как экземпляры одного класса?
источник

h

humanoid in learn.java
Konstantin
паттерны хочу понять, а там есть такая вещь как композиция. в основе многих паттернах лежит в качестве основы композиция. вот и хочу понять что это такое и в чем отличие от агрегации
Вообще это из тех имхо вещей, где особо не найти четких определний.
Но чаще всего встречаю определния про lifetime.
Ассоциация. A может использовать В, но они не влияют на лайфтайм друг друга.
Агрегация. А не может жить без В, ну или B часть А. В же может жить без А.
Композиция. А не может без В, В не может без А.
источник

K

Konstantin in learn.java
Vitaly Nechitaylo
Однажды на собеседовании мне задали вопрос: можно ли рассматривать человека и самолет как экземпляры одного класса?
если абстрагироваться, то да. По сути есть некий класс сущность. У которой есть свой вид, свои методы, свой интерфейс, свои поля и тд
источник

K

Konstantin in learn.java
но возможно  они тогда должны быть наследники этой сущности
источник

V

Vitaly Nechitaylo in learn.java
Konstantin
если абстрагироваться, то да. По сути есть некий класс сущность. У которой есть свой вид, свои методы, свой интерфейс, свои поля и тд
Все зависит от абстракции. Или да, или нет. Если абстрагироваться от частностей, то можно найти общие поля и методы у обоих сущностей. Так и в отношениях
источник

V

Vitaly Nechitaylo in learn.java
Все зависит от вас, от вашего понимания и абстракции в голове
источник

K

Konstantin in learn.java
ну это как с object в Java
источник

V

Vitaly Nechitaylo in learn.java
Да, но вы снова уходите в детали реализации
источник

K

Konstantin in learn.java
по сути все объект с своим каким то интерфейсом и методами
источник

V

Vitaly Nechitaylo in learn.java
Но на примерах проще мыслить :)
источник

h

humanoid in learn.java
Konstantin
по сути все объект с своим каким то интерфейсом и методами
Когда ооп головного мозга, то да)
источник

K

Konstantin in learn.java
ну да)
ну и плюс донести мысли на примере проще
источник

V

Vitaly Nechitaylo in learn.java
humanoid
Когда ооп головного мозга, то да)
В такие моменты я понимаю, зачем мне целый год промывали мозги на философии в универе :))
источник