Тёмный

SOLID Принципы в JavaScript 

Владилен Минин
Подписаться 309 тыс.
Просмотров 216 тыс.
50% 1

Исходники тут: t.me/js_by_vla...
Получить профессию Frontend разработчика -
bit.ly/3HZUDeJ
Подробнее узнать об обучении в Result School -
bit.ly/3y6dmRc
Бесплатный курс HTML & CSS - bit.ly/3ns23hE
Сделать 5 проектов на JavaScript - bit.ly/3I13uNd
Я в соц сетях:
Telegram: t.me/js_by_vla...
VK: vladile...
Instagram: / vladilen.minin
Мои паблики по JavaScript:
Telegram: t.me/result_sc...
VK: result....
Instagram: / result.scho. .
JavaScript cообщества:
Discord: / discord
Telegram: t.me/js_by_vla...
Roadmap по каналу:
vladilen.notio...
Дополнительные материалы:
NodeJS: • Node JS - Быстрый Курс...
ES6: • JavaScript ES6 - Полны...
Prototype: • Урок 1. JavaScript. Чт...
Классы: • Урок 7. JavaScript. Вс...
Массивы и Reduce: • Урок 12. JavaScript. М...
Композиция в JS: • Video
SOLID Принципы в JavaScript. Весь SOLID на практических наглядных примерах с минимумом теории. Так же хорошая практика ООП в JavaScript
S - 6:53
O - 19:42
L - 35:40
I - 50:24
D - 1:00:51
#solid #javascript

Опубликовано:

 

28 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 793   
@VladilenMinin
@VladilenMinin 2 года назад
Исходники тут: t.me/js_by_vladilen/159 Получить профессию Frontend разработчика - bit.ly/3HZUDeJ
@Коннор-ч7е
@Коннор-ч7е 3 года назад
Владилен: смотри чтобы стать Senior! Я : смотрю это видео чтобы пройти собес на джуна
@user-uv4rk1vt7x
@user-uv4rk1vt7x 3 года назад
Прошел?) Везде такая х**ня...) Особенно в аутсёрс компаниях.
@Par4uk
@Par4uk 3 года назад
Порог входа в 2021 году.
@Коннор-ч7е
@Коннор-ч7е 3 года назад
@@user-uv4rk1vt7x да, давно уже)
@IT_psychopath
@IT_psychopath 3 года назад
просто проектирование, надо учить до того как учишь яп! алгоритмы, структуры, проектирование, потом только программирование! поэтому и спрашивают.))) ну и желательно хоть не много знать SCRUM как устроен. если ты знаешь яп, к примеру js, ты разработчик, ты не программист! а если ты знаешь проектирование, алгоритмы, структуры... вот тогда да, ты программист. просто ты без этого всего умеешь написать код, который невозможно масштабировать и приложение получиться как прототип... тут тогда прямая дорога на фриланс! удивляться тут нет чем. все хотят в штате программиста а не разработчика!)))
@bernish
@bernish 3 года назад
@@IT_psychopath мне кажется наоборот программист тот кто умеет программировать на ЯП, разработчик тот кто умеет разрабатывать софт(в том числе проектировать и подобное)
@mac9bmx
@mac9bmx 4 года назад
Просто відчуваю як виріс))))
@Deedoc2006
@Deedoc2006 2 месяца назад
Спасибо огромное вам! ОООООООООч полезный видос!!!!!)))
@VladilenMinin
@VladilenMinin 4 года назад
Помимо теории в ролик зашил мини пасхалки по актуальным новостям на текущий момент, пиши если найдешь) Приятного просмотра. Считаю это одни из самых важных роликов на канале
@o.voytyn
@o.voytyn 4 года назад
го стрим в честь 40к подписчиков
@VladilenMinin
@VladilenMinin 4 года назад
Думаю да. На этой илии следующей неделе
@VladilenMinin
@VladilenMinin 4 года назад
@@dmytrohaponov5517 По твоей логике нужно каждый раз переписывать aliexpress, vk, amazon, apple и тд Да, некоторые переписки неизбежны, но если ты будешь переписывать все, твой бизнес просто загнется)
@VladilenMinin
@VladilenMinin 4 года назад
@@o.voytyn Да будет
@MisterGenix
@MisterGenix 4 года назад
@@dmytrohaponov5517 потому и приходится переписывать, что горе-писаки не следуют этим принципам при написании своих продуктов, не задумываясь, сколько их детище будет работать и кто потом будет поддерживать. Просто лень) А иногда наоборот - ума текущих програмеров не хватает для понимания работы прошлых) и им тоже легче переписать на их привычное функциональное программирование (к примеру)
@rmnkot
@rmnkot 4 года назад
Очень полезно, нужно попрактиковать
@Drake639
@Drake639 4 года назад
Побольше бы таких видео
@AleksKinokusMain
@AleksKinokusMain 4 года назад
За телеграм - отдельное спасибо
@seoonlyRU
@seoonlyRU 2 года назад
спасибо, лукас вам от СЕООНЛИ
@user-mw1uf8tf7w
@user-mw1uf8tf7w 3 года назад
Очень интересно, спасибо!
@МурадМавлидов
@МурадМавлидов 4 года назад
Спасибо за труд
@ГеоргийРукомин
@ГеоргийРукомин 4 года назад
Супер - как всегда !
@cyrilmialik5030
@cyrilmialik5030 4 года назад
Вот такой контент, это же просто незаконно. Это по факту самое просто и четкое обьяснения что я когда-либо видел, и это бесплатно, типа лайк это самое малое что можно сделать, поэтому я еще в колокол стукну)
@VladilenMinin
@VladilenMinin 4 года назад
Благодарю)
@bad_jaguar
@bad_jaguar 3 года назад
Может быть уже пора на TypeScript переходить?
@ОленаНехрищинюк
@ОленаНехрищинюк 4 месяца назад
Какой красавчик!
@volodymyrmatselyukh8808
@volodymyrmatselyukh8808 3 года назад
спасибо за видео. Заставил меня виучить наконец что такое Liskov Substitution Principle
@artemijeka
@artemijeka 2 года назад
когда мы методом area() высчитываем площадь в классах разных фигур не является ли это нарушением Single responsibility principle ?
@SergeiDaub
@SergeiDaub 3 года назад
Спасибо, посмеялся. Больше 700 восхищённых комментариев!
@dolphin-software
@dolphin-software 4 года назад
Дай бог тебе здоровья :)
@romankutsyk5608
@romankutsyk5608 4 года назад
СУПЕР! Спасибо! Давай Design Patterns in JS
@VladilenMinin
@VladilenMinin 4 года назад
Уже на канале)
@dmitryyegorov7792
@dmitryyegorov7792 3 года назад
Больше видосов по typescript) Будь добр :)
@BestKinoMoments_bkm
@BestKinoMoments_bkm 4 года назад
А контент рассчитан на Джунов?
@t1000bay
@t1000bay 3 года назад
Круто ! Познавательно
@Grapeoff
@Grapeoff 3 года назад
Превосходно, маэстро
@IT_psychopath
@IT_psychopath 3 года назад
Владилен, дружище, братюня.))) Проектирование, это самое важное в программировании как и алгоритмы. Это вообще учат еще до погружения в профессию. Если этого не знать, то путь на фриланс... При отсутствии проектирования, или плохом проектировании, как и отсутствия знаний этого у программиста, цена на продукт сразу увеличивается минимум в двое! А потом и в 10 раз... Такое, должен знать каждый, перед тем как проситься в компанию.))) Еще, кстати, важно знать что такое SCRUM. Конечно же, тебе в хз уже какой раз, спасибо!
@strtoboolea
@strtoboolea Год назад
От души брат !
@konstantinmilovanov4164
@konstantinmilovanov4164 4 года назад
Сделай видео про движки JavaScript, что там происходит внутри.
@peterk9449
@peterk9449 Год назад
На 37 и 51 минуте катался по полу от смеха!!!)))) Бекендеры тоже люди!))) Животное умеет Улетать!!!)))
@NoName-zh7cc
@NoName-zh7cc 3 года назад
Спасибо большое!!!
@ROTOFFLOLKA
@ROTOFFLOLKA 4 года назад
Тут всякий мусор предлагают, но реальная проблема - это понять, как жс или нода на низком уровне работает. То есть, какие операции сколько тиков процессора жрут и так далее. Алгоритмы покрывают это частично, но мб есть какие-то ещё хитрости и антипаттерны. Желательно с примерами: код на жс - тот же код, скомпилированный в асм или байтовый. Вот это было бы круто)
@АлександрСкрябин-ы9ф
Мощь!
@NoName-kr4rv
@NoName-kr4rv 4 года назад
50:00 лучше базовый класс, от которого наследуется HighOrderComponent и ComponentWithTemplate - BaseComponent или AbstractComponent
@nnnmmmvvv
@nnnmmmvvv 2 года назад
Спасибо большое! Очень понятно. Скажите, пожалуйста, точку с запятой все таки лучше ставить после каждого выражения во избежание ошибок?
@Аннанежная-м8я
@Аннанежная-м8я 3 года назад
Спасибо за видео. 👍☺️ Кстати, height произносится как хайт а не как хейт.
@Yeuppi
@Yeuppi 4 года назад
1:00:00 мы ведь могли сделать Animal допустим потом класс птицы,млекопитающие и прочее в чем отличие?
@Kas-j2u
@Kas-j2u 4 года назад
Привет. Будет ли видео курс по eslint?
@artemijeka
@artemijeka 2 года назад
Спасибо!
@DmitriyK-z4d
@DmitriyK-z4d 4 года назад
Как применять принципы SOLID в фреймворках?
@artsemvilchuk9037
@artsemvilchuk9037 4 года назад
Пушка!
@longeeJohnson
@longeeJohnson 2 года назад
Большой синий друг, прям как мой братан.
@МихаилЕршов-ф6й
@МихаилЕршов-ф6й 3 года назад
по поводу первой части вопрос есть: как это соотносится с принципом information expert ("информация должна обрабатываться там, где она хранится")? По сути класс принтера жёстко связан с классом новости и никогда не будет использоваться отдельно. Тогда зачем плодить лишние классы? Единственное, что нужно было сделать - это сделать принтерские методы статиками чтобы не засирали экземпляры.
@demidovmaxim1008
@demidovmaxim1008 4 года назад
Огромное спасибо за выпуск. Это лучшее.
@kseniazh1738
@kseniazh1738 4 года назад
Ролик был ОЧЕНЬ полезен!!! Хорошо, просто и очень доходчиво объясняешь. Хотела вчера посмотреть сериальчик, а тут такое :). Начала смотреть и прям на одном дыхании! Все в голове разложилось по полочкам. Однозначно буду еще пересматривать. СПАСИБО !!! ТЫ ЛУЧШИЙ !!!
@ИльяИваник-ф8ф
@ИльяИваник-ф8ф 4 года назад
А обязательн описать именно классами? Если мне ближе и понятнее формулировки вида: function News(title, text) { this.title = title this.text = text this.modified = false } News.prototype = { update: function(text) { this.text = text this.modified = true } }
@wristork
@wristork 4 года назад
А что за практика не ставить точки с запятой? В чем выгода?
@N5O1
@N5O1 6 месяцев назад
57:39 проблема с таким подходом в том, что современные языки за исключением парочки, не позволяют множественное наследование и поэтому как не крути все равно придется другой раз продублировать логику
@billyukrop1496
@billyukrop1496 3 года назад
На TypeScript все таки удобнее объяснять
@sergeyscream5065
@sergeyscream5065 4 года назад
спасибо!
@dmitrycherenkov6211
@dmitrycherenkov6211 3 года назад
Считаю SOLID необходимо изучать с самого начала карьеры. Учиться писать хороший код нужно сразу.
@dimasazonov4856
@dimasazonov4856 4 года назад
Пожалуйста, еще таких видео. Было круто.
@АлексейСаломатин-о4ю
Не понял зачем был создан класс Shape в разделе open close? Только для того чтоб показать в ошибке, что у каждого нового класса фигуры должен быть метод area()?
@talivel118
@talivel118 3 года назад
алиэкспресс перевод, идеально)
@tarasshyika5303
@tarasshyika5303 3 года назад
Спасибо
@HOTBOY9961
@HOTBOY9961 4 года назад
больше бы видео мидл+ ибо такого оооочень мало, просто все кому не лень ютубе учат верстать, и обработчики событий навешивать.... ну а за видео как всегда лайк!
@1001-w5q
@1001-w5q 4 года назад
Блин, а я только задумался, что это единственный снг канал, который я смотрю. (по программированию)
@Chat-Mayevskogo
@Chat-Mayevskogo 3 года назад
И чеж ты смотришь, траверси чтоли? Я наоборот у буржуев в выдаче хайпожоры одни про архитектуру мало кто говорит нормально
@ИльяКорнев-ф4х
@ИльяКорнев-ф4х 4 года назад
Стал сеньором)
@fanatic5565
@fanatic5565 4 года назад
класнное видео. Единственное что могу подметить, что 2 и 5 прицнип обьясняються как тоже самое
@zerocool14pvo
@zerocool14pvo 4 года назад
Огонь! Давно хотел, что-то подобное посмотреть
@VladilenMinin
@VladilenMinin 4 года назад
Вперед, приятного просмотра)
@dariaminakova5220
@dariaminakova5220 4 года назад
принцип Лесков вообще не очень был понятен ДО этого видео. Так что спасибо!! SOLID рулит
@SergeiCalabonga
@SergeiCalabonga 4 года назад
Не совсем верно озвучен принцип SRP ... Ключевое понятие - "...одну причину для изменений..."
@centwor1on167
@centwor1on167 2 года назад
"Бэкендеры тоже люди, кстати говоря" - упал со стула xd
@johnd1431
@johnd1431 4 года назад
огонь)
@shoazimov8620
@shoazimov8620 3 года назад
ctrl + shift + f6 = RUN THE FILE
@pargevsargsyan332
@pargevsargsyan332 4 года назад
спасибо Владилен за контент, огромная просьба можешь снять видео про овтаризацию с автоабнавлением токена на express ,jwc token и react
@margaritabozhenova8473
@margaritabozhenova8473 3 года назад
Орлы и правда умеют плавать)
@Kalinkin88
@Kalinkin88 4 года назад
ТОП!
@DAROM-TK
@DAROM-TK 3 года назад
Завис на втором принципе. Так и не понял зачем класс Shape. Понятно, что из класса Areacalculator убрали логику расчёта площадей и перенесли её в классы фигур. Но класс Shape то зачем? Ведь без всякого наследования возвращается площадь фигур обращаясь с методу их класса, считающему площадь , и суммируется в калькуляторе?
@Peter-vz4tb
@Peter-vz4tb 4 года назад
Поставили мне недавно задачу. Написать для сети магазинов retail карту на leaflet.js . Ну, подумал я, хороший повод SOLID попрактиковать. Карта получилась, api в leaflet.js проще чем в google maps, вроде бы все супер, но как же я НАБЫДЛОКОДИЛ пытаясь реализовать все эти SOLID приципы. Жаль что нет метора который мог code review провести. А сам себя не проверишь.
@ko_fes
@ko_fes 4 года назад
Каждый раз смотря ролики/статьи и слушая рассказы про то, как в js с отловом ошибок, хочется понять: а кто вообще пишет на чистом js? - количество ошибок, которые нельзя отловить вне рантайма стремительно приближается к нулю. В плане, в чем вообще профит написания кода на чистом js в проде? у кого-нибудь были такие кейсы не из-за "хотелок" заказчика? Кто-нибудь в среде веб-разработчиков (из "архитекторов"), вообще, думал в принципе уйти от js/ts в сторону компилируемых языков (см. emcc) с простейшей обвязкой на js?
@danielkhachaturian
@danielkhachaturian 3 года назад
А зачем во втором файле добавлял переменные формы, если название формы указано в имени класса, просто instanceof бы сделал
@orucqarayev4759
@orucqarayev4759 4 года назад
Красавчик
@Yevhenii_wnd
@Yevhenii_wnd 4 года назад
Очень информативно, спасибо!
@antond7126
@antond7126 2 года назад
Собес в крупную айти компанию Интервьюер: чем разработчик фронтенд отличается от бэкенда? Владилен: фронтенд умеет создавать фроненд, а бэкенд умеет создавать бэкенд Интервьюер: вы приняты!
@oleh.hubych
@oleh.hubych 4 года назад
2020 год Object.assing реально?
@alexmaster1982
@alexmaster1982 4 года назад
Владилен ты лучший во всем ютубе,но очень нужно видео про Rest Api
@VladilenMinin
@VladilenMinin 4 года назад
REST API ок, записал
@paranoik447
@paranoik447 4 года назад
О Боги! Это то чего мне так давно не хватало, спасибо тебе Владилен за доходчивое объяснение такой довольно запутанной темы. Мне как раз это нужно для повышения грейда до миддла и принципы SOLID там входят в обязательный стек знаний, но в инэте мало инфы именно на примере js, а ты прям как в воду глядел. Теперь все вопросы пропали, а материал уложился в одну полку!
@AndzejTelican
@AndzejTelican 4 года назад
Super !
@sergeisychov9810
@sergeisychov9810 2 года назад
Круто! Спасибо! Все доступно и понятно!
@rudolfkovalyov184
@rudolfkovalyov184 4 года назад
Не совсем понятно "Liskov Substitution Principle " с примера "Цель этого принципа заключаются в том, чтобы классы-наследники могли бы использоваться вместо родительских классов, от которых они образованы, не нарушая работу программы. Если оказывается, что в коде проверяется тип класса, значит принцип подстановки нарушается"
@ОльгаБатаева-ц1ц
@ОльгаБатаева-ц1ц 4 года назад
Присоединюсь. Для себя этот принцип понимаю как "не переопределяй методы родительского класса", но я не гуру ООП и буду рада, если опытные меня поправят. Объяснение же этого принципа в видео ИМХО похоже на Interface Segregation Principle
@vladislavguleaev540
@vladislavguleaev540 4 года назад
если будут еще видео из серии Смотри чтобы стать Senior то я твой постоянный зритель
@sergeypugach6687
@sergeypugach6687 4 года назад
Смотрю твои курсы с того времени как ты ещё делал контент для webformyself, огромное спасибо за твой материал. Продолжай в том же духе.
@ablbaltabekov9083
@ablbaltabekov9083 4 года назад
мне одному кажется что open closed principle противоречит принципу interface segregation? (в данных примерах)
@Иван-у7л7н
@Иван-у7л7н Год назад
У него магический рунический кулон.
@Doox911
@Doox911 4 года назад
Пушка
@vencendor666
@vencendor666 3 года назад
Залип на твои видосы уже третий день :) Кочественая подача, немало нового для себя нашел. Спсибо за твою работу
@Ziraman13
@Ziraman13 4 года назад
Круто, спасибо! Продолжения ждем
@ИльяИваник-ф8ф
@ИльяИваник-ф8ф 4 года назад
Ну вот, сравниваю реализацию "2-Open Close Principle" и "5-Dependency Inversion Principle" и получается одно и то же, только в примере с "2-Open Close Principle" мы зачем-то еще наследуемся от родительского класса. Вообще не понимаю разницы между: "3-Liskov Substitution Principle" и "4-Interface Segregation Principle" "2-Open Close Principle" и "5-Dependency Inversion Principle" они делают одно то же, зачем было городить такой огород? просто чтобы красивая аббревиатура SOLID получилась чтоли?)) Достаточно SID, при этом O и L выполнятся автоматически. Понятно, что я новичек и только пытаюсь разбираться. Ну это мой коллбэк на увиденное. Вот так, представленное выглядит глазами такого недалекого человека, как я
@creemer
@creemer 4 года назад
ОЧень круто объяснил! Добра тебе!
@carved1883
@carved1883 Год назад
Конкуренты тоже люди на самом деле xd 40:34
@constvntine5453
@constvntine5453 4 года назад
Здравствуйте, хороший курс у вас по Ангуляр 9 на юдеми! Пробежался глазком по курсу, информативно, благодарю вас. Сделайте курс по VueJS или ReactJS, очень прошу, хоть платный, хоть бесплатный. Прошлые курсы по реакт и вью были хорошими, хотелось бы чего нибудь нового от вас, (именно с практической частью) не планируете случайно?
@VladilenMinin
@VladilenMinin 4 года назад
Планирую, все будет :)
@constvntine5453
@constvntine5453 4 года назад
@@VladilenMinin Спасибо, если не секрет скажите а что вы сейчас по плану хотите выпустить?😁😂
@ИапГоревич
@ИапГоревич 3 года назад
Я всегда использовал SOLID, не подозревая об этом. Я так с этим мучался. Спасибо Вам большое!
@ДмитрийДова
@ДмитрийДова 4 года назад
Супер, спасибо большое, давно хотел разобраться
@РадмирШаяхметов-й2о
Как всегда, на высоте!
@bd8063
@bd8063 4 года назад
Владилен, спасибо, что заморочился и сделал видео. С удовольствием и интересом посмотрел и что-то даже понял и запомнил)
@MisterGenix
@MisterGenix 4 года назад
Тема огонь! Премного благодарен
@vergo_art
@vergo_art 4 года назад
Как всегда лучший контент по программированию на RU-vid! Спасибо за очередной туториал, Владилен!!!
@it-learner5701
@it-learner5701 3 года назад
sps bro!
@НиколайШироков-т7л
Спасибо за видео и за простые примеры на Typescript.
@evgeniyprowork
@evgeniyprowork 4 года назад
и про GRASP тогда уже :)
@VladilenMinin
@VladilenMinin 4 года назад
Грасп немного вне контекста. Но есть другие вещи)
@_oxios_
@_oxios_ 4 года назад
Спасибо! Поддержал ролик!
@RuSaG0
@RuSaG0 4 года назад
53:45 Давайте придумает Орлу какое-нибудь необыкновенно имя, например, Елена. Так надо было!
@VladilenMinin
@VladilenMinin 4 года назад
Справедливо
Далее
Просто о SOLID (Принципы SOLID)
15:54
Просмотров 220 тыс.
pumpkins #shorts
00:39
Просмотров 9 млн
One of the Greatest Speeches Ever | Steve Jobs
10:31
My Unconventional Coding Story | Self-Taught
27:14
Просмотров 629 тыс.
А КАК ЧИТАТЬ?
29:05
Просмотров 1,4 млн