💻 ООП: наследование и полиморфизм (в JavaScript)

  Рет қаралды 9,450

Timur Shemsedinov

Timur Shemsedinov

Күн бұрын

Пікірлер: 31
@miroso5237
@miroso5237 4 жыл бұрын
Полиморфизм с 14:20
@alexandrcorbin
@alexandrcorbin 4 жыл бұрын
Случайно наткнулся, достаточно хорошее пояснение для новичков. Лайк поставил. Но звук крайне фиговый.
@ВладиславМаслов-л7ж
@ВладиславМаслов-л7ж 2 жыл бұрын
Замечательная лекция как всегда, спасибо за то что делитесь бесплатно качественным материалом. Кстати, в документации на mdn написано что использование Object.setPrototypeOf() не рекомендуется, и написано что лучше использовать второй вариант как вы показали с Object.create()
@TimurShemsedinov
@TimurShemsedinov 2 жыл бұрын
Можно ссылку где там такое есть на MDN?
@404Negative
@404Negative 2 ай бұрын
не рекомендуется ПОЧЕМУ ?
@Chat-Mayevskogo
@Chat-Mayevskogo 3 жыл бұрын
Всегда задавался вопросом. Зачем применять встроенные в js гетеры, сетеры. Ради того чтобы избавиться от 5 символов но при этом получить не нагляднуб магию. get/set перемешается в коде с обычными свойствами и будет неочевидность кода. Разве что когда нужно переопределить свойство и "хукать", если это не наша либа или DOM, тут конечно такой инструмент нужен. Но это мнение человека который всегда ставит ; Какое Ваше мнение по этому поводу?
@oldodyn
@oldodyn 4 жыл бұрын
спасибо. стало намного понятнее.
@Antonio-fm1sq
@Antonio-fm1sq 2 жыл бұрын
Спасибо!
@artem_travlo
@artem_travlo Жыл бұрын
👍
@DimitarRad
@DimitarRad 2 жыл бұрын
Спасибо за видео, но я не понял для чего описывать методы в абстрактном классе, а потом эти методы переопределять у наследников? Это делается ради напоминания, что нужно все таки описать методы, если забыли это сделать?
@TimurShemsedinov
@TimurShemsedinov 2 жыл бұрын
В каком примере? на какой минуте? Там наверно абстрактный класс или интерфейс и потом его реализациця, такое традиции у ООП, в си++, джавах и сишарпах иначе не писали, а в js же вообще может быть объект с методами без класса, у нас все иначе...
@DimitarRad
@DimitarRad 2 жыл бұрын
@@TimurShemsedinov пример №7 (15 минута) - непонятно зачем в принципе описывать методы в абстрактном классе, чтобы потом переопределять эти метода в дочернем классе? Какая проблема решается? Вить можно просто описать у каждого дочернего класса свои методы (read, delete...) и не делать этого у родителя (где просто кидается ошибка). Я понимаю, если дочерние классы расширяют метода абстрактного класса, но в данном примере этого не показано.
@404Negative
@404Negative 2 ай бұрын
9:41 там должно быть reduceRight
@РоманВоловик-з3д
@РоманВоловик-з3д 4 жыл бұрын
Примеры кода где найти?
@ilinalekseys
@ilinalekseys 3 жыл бұрын
есть следующая лекция "Наследование и полиморфизм в typescript" ?
@yaroslavbox1249
@yaroslavbox1249 7 ай бұрын
Hi, there isn't a link to such a beautiful code in the description and it's hard to find it in the index of the course. But thanks anyway. It's a funny example of the inheritance of arrays. Cool.
@TimurShemsedinov
@TimurShemsedinov 7 ай бұрын
github.com/HowProgrammingWorks/Index
@denisgromov3137
@denisgromov3137 4 жыл бұрын
Не нарушается ли в примере про Cache принцип Барбары Лисков?
@ВладимирКобылинский-з7ъ
@ВладимирКобылинский-з7ъ 4 жыл бұрын
Cache - не предназначен для использования в коде, он просто как чертеж для будущих реальных классов SomeCache, в которых и будет конкретная реализация. Тут по сути не работает как раз сам Cache, а не его наследники. Принцип был бы нарушен, если бы, например Cache.add работал бы и добавлял что-то в кэш, а SomeCache.add, по какой-то причине удалял бы значение из кэша или вообще не работал бы. То есть, какой-то модуль изначально использовал Cache и все работало, а потом пришлось заменить его на SomeCache и все накрылось или того хуже, непредсказуемо изменилось поведение. Ну я так это понимаю, поправьте, если что не так.
@delimobilstories6781
@delimobilstories6781 4 жыл бұрын
Я думал, что суть утиной типизации - проверка существования методов и свойств у чего-либо с целью выявления чего-либо. Например, проверить, если ли у переменной метод includes, чтобы выяснить, является ли переменная массивом.
@ziyadseykhanov3967
@ziyadseykhanov3967 4 жыл бұрын
Утиная типизация в js как я понял. Это когда принимая аргумент не проверяет. Выглядит как утка, крякает как утка. Значит это и есть утка
@veetaha
@veetaha 4 жыл бұрын
Звук на записи не самый лучший, если есть возможность то рекомендую както это пофиксить)
@alexandrcorbin
@alexandrcorbin 4 жыл бұрын
Ужасный звук.
@Алексей-н8н6ш
@Алексей-н8н6ш 3 жыл бұрын
@@alexandrcorbin Вам БЕСПЛАТНО предоставляют шикарно изложенную информацию. Не нравится ??? ищите другие источники. Преподаватель шикарный. Курсы у него шикарные.
@tyafizi
@tyafizi 3 жыл бұрын
@@Алексей-н8н6ш ..... Что с тобой не так?))
@ВасилийВасильев-ш4т
@ВасилийВасильев-ш4т 3 жыл бұрын
А я нифига не понял!..
@TimurShemsedinov
@TimurShemsedinov 3 жыл бұрын
Ничего страшного
@johnsnow6041
@johnsnow6041 4 жыл бұрын
Так нудно, реально хочется спать
@wepko
@wepko 3 жыл бұрын
Ну так ты за автором перепиши подумай что он говорит может и скучно не будет это тебе не шоу
@alexeylozenko6093
@alexeylozenko6093 2 жыл бұрын
добавь скорости воспроизведения и все.
ROSÉ & Bruno Mars - APT. (Official Music Video)
02:54
ROSÉ
Рет қаралды 287 МЛН
CAN YOU DO THIS ?
00:23
STORROR
Рет қаралды 48 МЛН
🎧 Have Objects Failed? Или что не так с ООП?
1:14:04
Timur Shemsedinov
Рет қаралды 9 М.
💻 Структуры (struct) или записи (record)
22:28
Timur Shemsedinov
Рет қаралды 9 М.
Полный гайд по автоматизации процессов в Make.com
2:02:39
Грязный Ноукодер
Рет қаралды 1,9 М.
ООП в JavaScript. Мифы, наследование, полиморфизм, абстракции, наследованиеи,
1:01:03
Типизированные массивы в JavaScript
39:43
Timur Shemsedinov
Рет қаралды 9 М.
Какой полиморфизм в JavaScript?
14:43
S0ER
Рет қаралды 16 М.
Просто о ООП (Парадигмы ООП)
21:14
webDev
Рет қаралды 43 М.