Похожие чаты

Hi , iam confused about the term (composition ) in

oop in js . is there any difference between to implementing it through the (function returns object way - i belive it called factory function right ?) or using class for implementing it ? like this :


class Publisher {
constructor(name, location) {
this.name = name;
this.location = location;
}
}

class Author {
constructor(name, booksWritten) {
this.name = name;
this.booksWritten = booksWritten;
}
}

class Book {
constructor(title, genre) {
this.title = title;
this.genre = genre;
this.publisher = new Publisher("Sample Publisher", "Somewhere");
this.author = new Author("Sample Author", 5);
}
}

7 ответов

14 просмотров

Show the other way

mj- Автор вопроса
Thomas
Show the other way

https://youtu.be/dYHWvUVMnCU

mj- Автор вопроса
mj
https://youtu.be/dYHWvUVMnCU

the other way you asked for

In your Book class if you accept Publisher and Author in the constructor, that's composition. You have them hard coded in the constructor. That's not composition

mj- Автор вопроса

you mean as parameters like this ? class Book { constructor(title, genre) { this.title = title; this.genre = genre; this.publisher = new Publisher("Sample Publisher", "Somewhere"); this.author = new Author("Sample Author", 5); } }

mj
you mean as parameters like this ? class Book {...

no class Book { constructor(title, genre, publisher, author) { this.title = title; this.genre = genre; this.publisher = publisher; this.author = author; } }

mj- Автор вопроса

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

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
any reference of this implementation?
BitBuddha
29
Ⓐrtto, [4/23/24 7:02 PM] Please explain more fully how it is not working exactly, and what are the steps you are taking, and what error messages come or what happens. Ⓐrtto, ...
Ezza Kezza
2
sounds like people have lost their kaspa on tradeogre... does this mean tradeogre not trustworthy?
Ezza Kezza
15
Страшнейшая правда про списки ЦБ. С первых дней жизни P2P сферы, молодые человеки, начитавшись законодательной базы и "внутренних" документов, решили, что им противостоит сер...
Foxcool
3
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
So much speculation in the last week. So much volatility in price. This is because Hedera has a GC that isn't using the network it's governing. Why aren't people asking why a...
Summit Seeker R
9
Карта сайта