Откинулся на спинку, сидя на табуретке, но не упал, потому что благодаря паттерну стратегия смог прямо в рантайме на лету заменить логику табуретки на логику кресла.
Нет, конечно. Использование интерфейсов по назначению это описание типа и абстрагирование от конкретных объектов. Для примера можно взять видос на каком-то сервисе. Предположим, что у его можно посмотреть, можно прослушать аудио(в наушниках во время пробежки), можно оставить комментарий. Этот функционал находится в разных модулях системы. Тогда интерфейсы будут следующее: interface IVideo { public void show();} interface IAudio { public void sound();} interface IHasComments { public void comment(string comment);} Тогда подсистема отвечающая за проигрывания звука принимает на вход объект, имплеменирующий интерфейс (реализующий тип) IAudio. Примерно так: void play (IAudio someObject) { someObject.sound();} И ей, по большому счету, все все равно видео это или аудио или что-то еще, главное чтобы это что-то имело методы описанные в интерфейсе. В данном случае метод sound. Другими словами аудиоплеер принимает на вход метода play некий объект типа аудио, что еще там есть кроме возможности проиграть аудио, и как конректно он проигрывает аудио аудиоплееру пофиг. То же самое с комментариями. Чуть более сложный пример, у нас есть аудиозапись и мы ходим её прослушать через вебморду для роликов. Тогда мы реализуем поведение типа видео таким образом, чтобы метод show показывал статичную картинку и проигрывал аудио. Примерно так: class AudiobookVideoWrapper : IVideo { IAudio audio; ... public void show() { this.showStaticPicture(); this.audio.sound(); } ... }
@@EshkinKot1980 Я всё равно не понял, по моему Madgel _ всё правильно сказал(а). Если мы внедряем зависимость по интерфейсу и юзаем эту зависимость только через методы интерфейса, то это стратегия?
@@TKSherlock Не все паттерны это стратегия, а интерфейсы используются почти во всех паттернах. Более того интерфейсы можно и нужно использовать даже без паттернов и без внедрения зависимостей.
Орнул с воркера и его работы))) PS: Помните, когда приходите на собеседование и Вас спрашивают о том какие паттерны вы знаете и используете. Лучше начните со стратегии "HandJob, FootJob", а не с синглтона, когда вы примените стратегию, интервьюеру будет похуй на какие-то паттерны=)
- Стратегия (шаблон программирования) - Мотивация программировать - Порно видео онлайн бесплатно - Winderton - Что делать когда всё заебало - My Little Pony в кино(2017) Хорошие рофлы, я оценил.
После этого ответа, его никто не видел. Поговаривают, что Артем сам пришел к нему в ночи. Задал ему тот проклятый вопрос и схватив, взлетел на стратосферу. Тем самым убив его.
инкапсуляция - это в первую очередь АБСТРАГИРОВАНИЕ ... какое же количество тупорылых отбитых на всю тупую свою бошку кодеров и учителей и преподов я повидал на своём веку.. СОВЕРШЕННО НИХЕРА НЕ ПОНИМАЮЩИХ что из их рта вылетает.. и соответственно после них такие же ученики-инвалиды умственные выходят.. и уже 20 лет эта цепочка никак не прервётся )))))))))))))))))))))) почему не начать учить ООП с ПРОЕКТИРОВАНИЯ!!! чтобы люди понимали - НАХЕРА ВООБЩЕ НУЖЕН ООП.. ООП надо учить уже ПОСЛЕ того как вы поймёте ЗАДАЧИ ПРОЕКТИРОВАНИЯ )))) вот вам самый яркий пример: для чего нужно колесо автомобилю.. ответ: чтобы крутиться... и вот отсюда далее не зная практики представте что вы отлично понимаете что надо поворот проходить дрифтом, подгазовывая на задней передаче )))) --- так же и в ООП.. учат что колесо нужно чтобы крутиться - ДА НЕТ ЖЕ БЛЯДЬ ДЕБИЛЫ-УЧИТЕЛЯ... колесо нужно не для того чтобы крутиться ... Сколько же тупорылых просто наглухо отбитых людей лезет туда, куда им просто нельзя ни при каких условиях лезть.. особенно в процесс обучения.. сколько судеб загубленных, сколько светлых голов сошло с дистанции из-за этих выродков-преподов ))) з.ы.: может сложиться впечатление что я автора гноблю... не, это я о своём о наболевшем )) автор молодец редкостный, что не бухает, не колется - а пытается познавать прекрасное ))
Ну все понятно: Класс Worker - девушка, выполняющая определенные услуги за деньги Класс Handjob - это понятно - ананизм Класс Footjob - происходит таким же образом, как и handjob, только ногами Стратегия - взаимозаменять Handjob с помощью Footjob в записимости от сексуальных предпочтений.
Чувак, я тебя люблю! Не мог бы ты снимать ну хоть немножечко почаще, пожалуйста. Ещё у тебя голос классный и такая ехидная интонация, будто ты ржешь, это странно, но кайфово. Давай видосики, про что хочешь (:
Т.к. все классические "шаблоны проектирования" - это про имитацию функционального программированиения с помощью ООП, то стратегия, как идеологический предок понятия интерфейса в VB, Java и C#, тут должна быть на первом месте.
Отличный видос. Если кто-то считает, что недостаточно разобрался, то могу посоветовать первую главу книги Head First: "Паттерны проектирования". Отличный пример с практикой.
Наконец из этого видоса узнал, что пишут видосы на этот канал 2 чела, даже имена их узнал. Коля и Артём 3>. А то думал то ли у меня шиза, то ли микрофон меняет этот чел постоянно.
можешь поставить видео на паузу и сделать вид, что изучаешь схемку)).... меня порвало, я таки поставил сначала на паузу, потом запустил видео дальше и услышал это.
Все что находится в фигурных скобках это и есть инкапсуляция, {капсула} - оболочка. Из книжки Шилдта можно узнать что фигурные скобки инкапсулируют все что в них есть. А все что не помечено пабликом скрывается от "вне скобок". Хош скрыть кусок кода? Возьми его в фигурные скобки.
Вы будете смеятся, но это реально производит впечатление на собеседующих, когда перечисление знакомых паттернов начинаешь со стратегии, а не адаптера/синглтона/фабрики. Причем, иногда его даже не просят объяснить. Спасибо за видос.
Кстати по поводу инкапсуляции...я ее представлял всегда как прием создания каких-то библиотек на которые опираются другие прогеры, не особо парясь как она реализована(через што с точностью до символа ' '). Так вот не кажется ли вам что термин "сокрытие" встречаемый в описании данного подпункта объектной парадигмы в различных источниках связан непосредственно с идеей выделения 2х вещей: бизнес логики и ее реализации, (с явным подчеркиванием того что именно бизнес-логика должна переходить от прогера к прогеру, а никак не реализация ) а не к непосредственному сокрытию данных, как вы упоминали в видосе про ООП? Да и "объединение данных и методов в классе" как то слишком очевидно для такого важного принципа который в случае моего понимания решает проблему написания велосипедов...
1:25 откинулся на спинку табуретки и только потом вспомнил, что у табуреток нету спинки
не та стратегия табуретки попалась
Откинулся на спинку, сидя на табуретке, но не упал, потому что благодаря паттерну стратегия смог прямо в рантайме на лету заменить логику табуретки на логику кресла.
не упал, потому что это была не табуретка, а абстрактная фабрика
Тоесть, стратегия это просто использовать интерфейс по назначению?
Да!!!!!
Нет, конечно. Использование интерфейсов по назначению это описание типа и абстрагирование от конкретных объектов.
Для примера можно взять видос на каком-то сервисе. Предположим, что у его можно посмотреть, можно прослушать аудио(в наушниках во время пробежки), можно оставить комментарий. Этот функционал находится в разных модулях системы. Тогда интерфейсы будут следующее:
interface IVideo { public void show();}
interface IAudio { public void sound();}
interface IHasComments { public void comment(string comment);}
Тогда подсистема отвечающая за проигрывания звука принимает на вход объект, имплеменирующий интерфейс (реализующий тип) IAudio. Примерно так:
void play (IAudio someObject) { someObject.sound();}
И ей, по большому счету, все все равно видео это или аудио или что-то еще, главное чтобы это что-то имело методы описанные в интерфейсе. В данном случае метод sound.
Другими словами аудиоплеер принимает на вход метода play некий объект типа аудио, что еще там есть кроме возможности проиграть аудио, и как конректно он проигрывает аудио аудиоплееру пофиг.
То же самое с комментариями.
Чуть более сложный пример, у нас есть аудиозапись и мы ходим её прослушать через вебморду для роликов. Тогда мы реализуем поведение типа видео таким образом, чтобы метод show показывал статичную картинку и проигрывал аудио. Примерно так:
class AudiobookVideoWrapper : IVideo
{
IAudio audio;
...
public void show() {
this.showStaticPicture();
this.audio.sound();
}
...
}
@@EshkinKot1980 Я всё равно не понял, по моему Madgel _
всё правильно сказал(а). Если мы внедряем зависимость по интерфейсу и юзаем эту зависимость только через методы интерфейса, то это стратегия?
@@TKSherlock Не все паттерны это стратегия, а интерфейсы используются почти во всех паттернах. Более того интерфейсы можно и нужно использовать даже без паттернов и без внедрения зависимостей.
какое-то инкапсулированное определение:D не проще ли сказать:
"стратегия это просто реализация полиморфного поведения. "
Самое гавняное видео про хенджоб и футджоб что мне приходилось видеть...
даже блоу джоба нету..
Артем Витальевич ЛУЧШИЙ в мире
Когда пришло уведомление, что вышло видео, я подумал, это глюки... А неееее))) Наконец-то, дождались)))
Орнул с воркера и его работы)))
PS: Помните, когда приходите на собеседование и Вас спрашивают о том какие паттерны вы знаете и используете.
Лучше начните со стратегии "HandJob, FootJob", а не с синглтона, когда вы примените стратегию, интервьюеру будет похуй на какие-то паттерны=)
))))))))))))))))))
- Стратегия (шаблон программирования)
- Мотивация программировать
- Порно видео онлайн бесплатно
- Winderton
- Что делать когда всё заебало
- My Little Pony в кино(2017)
Хорошие рофлы, я оценил.
инкапсуляция это сокрытие, понятно же тут всё
После этого ответа, его никто не видел. Поговаривают, что Артем сам пришел к нему в ночи. Задал ему тот проклятый вопрос и схватив, взлетел на стратосферу. Тем самым убив его.
@@ladykamykadze3112 не... Ну серьезно сокрытие же... Только реализации а не данных...
Накинул на вентилятор. =))
Троль)
инкапсуляция - это в первую очередь АБСТРАГИРОВАНИЕ ... какое же количество тупорылых отбитых на всю тупую свою бошку кодеров и учителей и преподов я повидал на своём веку.. СОВЕРШЕННО НИХЕРА НЕ ПОНИМАЮЩИХ что из их рта вылетает.. и соответственно после них такие же ученики-инвалиды умственные выходят.. и уже 20 лет эта цепочка никак не прервётся ))))))))))))))))))))))
почему не начать учить ООП с ПРОЕКТИРОВАНИЯ!!! чтобы люди понимали - НАХЕРА ВООБЩЕ НУЖЕН ООП.. ООП надо учить уже ПОСЛЕ того как вы поймёте ЗАДАЧИ ПРОЕКТИРОВАНИЯ ))))
вот вам самый яркий пример: для чего нужно колесо автомобилю.. ответ: чтобы крутиться... и вот отсюда далее не зная практики представте что вы отлично понимаете что надо поворот проходить дрифтом, подгазовывая на задней передаче )))) --- так же и в ООП.. учат что колесо нужно чтобы крутиться - ДА НЕТ ЖЕ БЛЯДЬ ДЕБИЛЫ-УЧИТЕЛЯ... колесо нужно не для того чтобы крутиться ... Сколько же тупорылых просто наглухо отбитых людей лезет туда, куда им просто нельзя ни при каких условиях лезть.. особенно в процесс обучения.. сколько судеб загубленных, сколько светлых голов сошло с дистанции из-за этих выродков-преподов )))
з.ы.: может сложиться впечатление что я автора гноблю... не, это я о своём о наболевшем )) автор молодец редкостный, что не бухает, не колется - а пытается познавать прекрасное ))
Вы прекрасны, только что дочитал книгу по паттернам и ваше видео более проще и доступнее описывает Стратегию. Спасибо парни)
что за книгу читал ? :)
@@scolopendrachilopoda9704 возможно Head First Паттерны.
Господи, это лучший канал по программированию. Спасибо за ваши труды)
Пожалуйста, снимите новые ролики про паттерны. У вас самая классная подача а главное все понятно и без нудятины.
Яы юмщыс даоюяоы, чыпрм озесш ъыозц охрыюхч
|\ /|
(.•ы•.)
Даю подсказку: ROT13
20
ROT20 :)
@@ExtremeCode вот нахера? - теперь сижу цезаря алгоритмы изучаю ,вместо сна )))
Начал изучать C# по вашему курсу, видео закончились, где инфу дальше брать?(
Ну все понятно:
Класс Worker - девушка, выполняющая определенные услуги за деньги
Класс Handjob - это понятно - ананизм
Класс Footjob - происходит таким же образом, как и handjob, только ногами
Стратегия - взаимозаменять Handjob с помощью Footjob в записимости от сексуальных предпочтений.
Ну так понятнее стало
Бл...ть, я сегодня увидел видео с Паниным и слово Footjob теперь вызывает рвотные порывы. Можете переснять видео с другими примерами?
ФЛЕНОВ ты что его канал смотриш? Зачем тебе?!
хахахах, рил очень понятно))
а BlowJob?
Ставь лукас если тоже любишь хэнд джоб!
Кстати автор, по мимо изложения кучи гов... кхм... сатиры))) очень хорошо и просто объяснил паттерн. Кому нужно:
4:12 - начало
5:08 - конец
Братан, хорош, давай давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот по чаще
Чувак, я тебя люблю! Не мог бы ты снимать ну хоть немножечко почаще, пожалуйста. Ещё у тебя голос классный и такая ехидная интонация, будто ты ржешь, это странно, но кайфово. Давай видосики, про что хочешь (:
судя по вкладкам, автор передал в worker только HandJob
0:25 гоша дударь и его братья близнецы
Т.к. все классические "шаблоны проектирования" - это про имитацию функционального программированиения с помощью ООП, то стратегия, как идеологический предок понятия интерфейса в VB, Java и C#, тут должна быть на первом месте.
Качественный контент(но это не точно)
Артем Витальевич "лучший в мире"
Будет ли видос по виндертону?
Отличный видос. Если кто-то считает, что недостаточно разобрался, то могу посоветовать первую главу книги Head First: "Паттерны проектирования". Отличный пример с практикой.
Братан, хорош, давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
Спасибо за разъяснение темы. Оч. круто =)
Артём Витальевич лучший в мире!))
хахах, закладки топ, особенно с Winderton'ом, кстати а как вы к нему относитесь?
Вернулся
Вы просто лучшие, продолжайте
Артём Витальевич лучший в мире)
Я думал Вас уже забрал Garbage Collector жизни
Если к авторов канала появиться хотя бы одно видео без матов, ребята сообщите мне!
"Вики не любит землю"
Справедливо 👌
Артём Витальевич лучший в мире, ждём видос всей семьёй
Только вчера смотрел, а тут Экстрим Код, отлично
Мужики, давайте побольше паттернов o!o
Артём Витальевич, ну ты понял...
Артём Витальевич ЛУЧШИЙ в мире
Артем Витальевич лучший в мире!
0:35 - у нас так каждый митап
- Лучшая работа в мире.
- Лучшая работа в мире!
всё понятно, спасибо за контент!
Артем Витальевич ЛУЧШИЙ в мире. ( И это я пишу не потому что совсем не представляю что такое инкапсуляция, а потому что меня зовут так же) )))
Аж, шишка встала
А в чем отличие стратегии от dependency injection?
*Почему так годно?*
Артём Витальевич ЛУЧШИЙ В МИРЕ
Артем Витальевич лучший в мире
Спасибо за то что ты есть ❤
Мало кто заметил, что "Вики не любит Землю"
Наконец из этого видоса узнал, что пишут видосы на этот канал 2 чела, даже имена их узнал. Коля и Артём 3>. А то думал то ли у меня шиза, то ли микрофон меняет этот чел постоянно.
Только сейчас понял, что Артём и Коля живут вместе, если вы понимаете, о чём я
Ну и что, я теперь состарюсь когда выйдет следующий видос?
Антон Валерьевич лучший в мире
Добрый день, а разжуйте пж разницу Стратегии и Стейт
Подбор вкладок сладок!😁👍
Понял, стратегия - сокрытие данных, спасибо!
Не прошло и месяца!
Артём Витальевич лучший в мире
10 из 10ти просто огонь!!)))
Прикольная отсылка на School 13 - игрооргии в начале
Спасибо! Откинулся на табуретке!
Что делать когда все заебало?
Снимать видос по стратегии
Твое видео записано с использованием шаблона "Презентация".
Безмерная благодарочка
лучшая работа в мире, ой Артем Витальевич лучший в мире
можешь поставить видео на паузу и сделать вид, что изучаешь схемку)).... меня порвало, я таки поставил сначала на паузу, потом запустил видео дальше и услышал это.
Николай Николаевич ЛУЧШИЙ в мире
Тёма - молодец!)
Я уже школу закончил, когда вы видос запилили. Жесть. Не надо так
Артём Витальевич, спасибо!!! Я немного охуYELL, но это 7-минутное видео для меня было понятнее, чем часовой урок!!! Аж даслёз!!!
Ожидал вначале услышать: откиньтесь на спинку сиденья, кресла, табуретки, или бутылки, но в те годы съёмки бутылка ещё не была мейнстримом
Все что находится в фигурных скобках это и есть инкапсуляция, {капсула} - оболочка. Из книжки Шилдта можно узнать что фигурные скобки инкапсулируют все что в них есть. А все что не помечено пабликом скрывается от "вне скобок". Хош скрыть кусок кода? Возьми его в фигурные скобки.
5 сек видео и я под столом xDDD ты лучший
© спинка табуретки
Хорошее видео, только инкапсуляция это сокрытие.
Артем Витальевич, Инкапсуляция - это слово
Вы будете смеятся, но это реально производит впечатление на собеседующих, когда перечисление знакомых паттернов начинаешь со стратегии, а не адаптера/синглтона/фабрики. Причем, иногда его даже не просят объяснить.
Спасибо за видос.
чууууувааааааааааакккккк ты лучший бро
Ты лучший
Не могу уловить паттерн поведения чувака, который матерится фоном и устроил драку вначале видосика )))
у кого времени в обрез и кому не до "юмора", смотреть с 1 минуты 30 секунды
Thanks!
Расскажите пожалуйста про ваш опыт работы в геймдеве
забыл закладку с порно закрыть :)
Я ничего не понял, это что получается если использовать интерфейсы то это уже есть паттерн стратегия?
Валерий Артемьевич.бля я забыл...
с хэнд джоб и футджоб поугарал чето
Витальевич лучший в мире Артём.
Хорошие видео.
Это не Конфуций, это Морихэи Уэсиба.
Кстати по поводу инкапсуляции...я ее представлял всегда как прием создания каких-то библиотек на которые опираются другие прогеры, не особо парясь как она реализована(через што с точностью до символа '
'). Так вот не кажется ли вам что термин "сокрытие" встречаемый в описании данного подпункта объектной парадигмы в различных источниках связан непосредственно с идеей выделения 2х вещей: бизнес логики и ее реализации, (с явным подчеркиванием того что именно бизнес-логика должна переходить от прогера к прогеру, а никак не реализация ) а не к непосредственному сокрытию данных, как вы упоминали в видосе про ООП? Да и "объединение данных и методов в классе" как то слишком очевидно для такого важного принципа который в случае моего понимания решает проблему написания велосипедов...
Функции высшего порядка - лучшая реализация стратегии в мире!
- (с) Штрохайм
Артём Витальевич ЛУЧШИИИИЙ в мире - забайтил
запели видос про коллекции плес
Так и не врубился зачем это, и это нарушает DL принцип.
Май литл пони в кино, су**а! Ты лучший!
расскажи еще про паттерны
Да все ведь понятно ведь! Инкапсуляция - это сокрытие!
P.S. Давай только без бана, плиз.
Я соскучился
Артём Витальевич Лучший в Мире
Почему в начале не было шутки про гачимучи?