Друг, Ты безумно крут! Никогда в твоих видео не слышал уже наслышанных с других видео фраз: Если не знаете что это, то посмотрите предыдущее видео, а в видео мы это разбирать не будем. Наоборот: "Если не знаете что это или забыли сейчас в крациях или подробно объясню", ты никогда не исходешь из экономических суждений так сказать, а всегда из добрых и человеческих побуждений. С таким подходом, как у тебя Вы продвинетесь на первое место во всех соц сетях по программированию, уверен, не бросай это дело, у тебя есть талант объяснять информацию и есть человечность и добро в душе!!!
Огонь, до сих пор не могу понять. Думаю с этим видео все встанет на свои места. Давай еще про лямбда выражения, тоже такая муть))). Спасибо за топ видосы!
Отличное объяснение. Я б наверное какое-то резюме еще сделал, что событие это некое подобие свойства, в котором хранится список делегатов с указателями на методы, которые подписались на событие, событие под капотом содержит методы add() и Remove()(аналогично get, set) которые вызываются при срабатывании операторов += , -=. Вызов в коде события, приводит к запуску всех методов содержащихся в делегатах добавленных в список в вызываемом событии.
Проверку на пустое значение можно было бы проще сделать: onMidPoint?.Invoke(); Видео шикарное, прежде чем посмотреть попробовал сначала сам написать программу, получилось) Лайк, подписка и уважение++
@@Bytepp , я думаю, Вы поняли, о чем я) Я вижу там static, но разве это дает возможность вызывать метод без класса. Не отрицаю, что не знаю каких-то тонкостей делегатов или про вложенные классы, но всё таки прошу рассказать:). И даже, если Вы мне ответите, появляется второй вопрос Что делать, если существует еще один класс Program2 и в нём тоже будет метод Subscribe
Зачем использовать событие, если всё тоже самое делается через делегат? Имею ввиду "подписка" методов и вызов их один за другим. В чем разница между событием и делегатом, кроме того, что делегат можно сразу обнулить, а событие нет и у события есть add и remove?
Разница тут как с точки зрения объектно ориентированного представления объектов, так и с практической стороны. Событие - это нечто большее чем делегат. Плюс ещё что немаловажно: событие может быть вызвано только из того класса, где оно объявлено. И методы доступа про которые ты сказал, это тоже важная штука, добавляющая значительно отличий. ru.stackoverflow.com/questions/226505/event-%D0%B8-delegate-%D0%B2-%D1%87%D0%B5%D0%BC-%D0%BE%D1%82%D0%BB%D0%B8%D1%87%D0%B8%D0%B5 Тут прям хорошо расписано
На события можно подписать метод, анонимный метод, лямбда выражение или лямбда оператор. Подписка на событие сосуществует для того чтобы обрабатывать его
@@Bytepp вы не знаете, как в статическом классе можно вызвать сервис (интерфейс). Путем создания экземпляра класса реализации не выходит, особенно если конструктор реализации принимает параметры. Нужно в статическом классе, допустим в его методе, вызвать этот интерфейс для получения данных. Весь интернет что мог перерыл, нет информации( спасибо!
@@Bytepp проблема в том, что сама реализация, точнее её конструктор, тоже принимает в параметры абстракцию..... ( таким образом что можно передать в параметры при создании экземпляра? Другой экземпояр?
@@Bytepp о. Ну, метод можно заменить, ивент можно переназначить. Может, ивенты раскрывают свою нужность при определенной архитектуре? При высокой сложности и большим количестве классов?
Я так и не понял в чем прикол event, если убрать слово event, то все точно так же работает, как и обычный делегат. В чем разница практическая? Что такого может событие, что не может делегат? По моему событие это тупо тот же делегат с приставкой event. WTF??? Объясните дураку, пожалуйста
Друг, Ты безумно крут! Никогда в твоих видео не слышал уже наслышанных с других видео фраз: Если не знаете что это, то посмотрите предыдущее видео, а в видео мы это разбирать не будем. Наоборот: "Если не знаете что это или забыли сейчас в крациях или подробно объясню", ты никогда не исходешь из экономических суждений так сказать, а всегда из добрых и человеческих побуждений. С таким подходом, как у тебя Вы продвинетесь на первое место во всех соц сетях по программированию, уверен, не бросай это дело, у тебя есть талант объяснять информацию и есть человечность и добро в душе!!!
Благодарю за урок! Очень хорошее объяснение такой сложной в понимании темы.
Золоте ты моё. Спасибо. Я 2 часа не мог понять свойства, зачем они нужны если есть делегаты.
Искренне благодарю Вас за понятное объяснение.
Спасибо! Предельно ясно!
Очень хороший урок! Я всё понял, наконец-то. Спасибо! Заодно и по плейлисту ускоренно пробежался, повторил остальную базу.
Супер))
да . .. супернаглядно . . . когда есть тандем - СТУДИЯ + ГРАФИКА
Просто божественное объяснение!!! Ты лучший!
Спасибо за объяснения!
Пожалуйста!)
Красава, все понятно, кратко, и при этом с детальным разбором
Благодарю))
Огромное тебе спасибо за материал!) Все очень подробно и понятно разобрано на отличном примере!
Рад стараться))
OGORMNOE SPASIBO!!! NEgde ne mog naiti takuyu ponyatnuyu informaciu naschet Eventa!
Спасибо за отличную подачу материала! Готовлюсь к экзамену по си#, ваш плейлист очень мне в этом помогает)
Успехов на экзамене))
Спасибо, хороший материал.
Огонь, до сих пор не могу понять. Думаю с этим видео все встанет на свои места. Давай еще про лямбда выражения, тоже такая муть))). Спасибо за топ видосы!
после этого видео всё стало на свои места)
*СПАСИБО ЗА ВИДЕО!*
Пожалуйста))
Лучшее, на что я наткнулся, рекомендую!
Рад, что понравилось!)
Спасибо за твой труд,бро
Здорово, спасибо за понятное объяснение. А то после прочтения про делегаты не очень было понятно зачем они нужны. Теперь ясно.
Thanks a million! I haven`t seen such a useful tutorial
Просто лучший
Отличное объяснение. Я б наверное какое-то резюме еще сделал, что событие это некое подобие свойства, в котором хранится список делегатов с указателями на методы, которые подписались на событие, событие под капотом содержит методы add() и Remove()(аналогично get, set) которые вызываются при срабатывании операторов += , -=.
Вызов в коде события, приводит к запуску всех методов содержащихся в делегатах добавленных в список в вызываемом событии.
Очень хорошо объясняешь
Красавчик
Лучшее объяснение событий, что я нашел за 3 дня. Спасибо!
Спасибо
Проверку на пустое значение можно было бы проще сделать: onMidPoint?.Invoke();
Видео шикарное, прежде чем посмотреть попробовал сначала сам написать программу, получилось)
Лайк, подписка и уважение++
Скажите, почему Subscribe вызывается без Program
Subscribe - это событие, вызов которого обусловлен годнотой видео))
@@Bytepp , я думаю, Вы поняли, о чем я) Я вижу там static, но разве это дает возможность вызывать метод без класса. Не отрицаю, что не знаю каких-то тонкостей делегатов или про вложенные классы, но всё таки прошу рассказать:).
И даже, если Вы мне ответите, появляется второй вопрос
Что делать, если существует еще один класс Program2 и в нём тоже будет метод Subscribe
Мне нравиться языки C++ & & C#
Круто)) мне тоже)
Класс ))))
👍
Добрый день ! а где-то можно скачать краткую "выжимку" по теме, идущую в виде текста с первых секунд ролика ? пожалуйста.
Круто, очень здорово с рисунками! Спасибо. А как на счет своего компонента, как можно написать? Например прогресс бар виде часов?
Спасибо) рад, что понравилось) можно, но я не пробовал
если мы убираем ключевое слово event, тоесть мы прверащаем событие в делегат то результат будет аналогичный, так в чем прикол событий тогда?
а если считать должен до одного определённого цифра например 5, то есть не серединка то что должна изменить?
pretty good。
Thanks))
все что вы привели в пример, можно спокойно реализовать с обычным делегатом. Так и не понял, зачем нужны события
Super Widos))
Thanks)))
Зачем использовать событие, если всё тоже самое делается через делегат? Имею ввиду "подписка" методов и вызов их один за другим. В чем разница между событием и делегатом, кроме того, что делегат можно сразу обнулить, а событие нет и у события есть add и remove?
Разница тут как с точки зрения объектно ориентированного представления объектов, так и с практической стороны. Событие - это нечто большее чем делегат. Плюс ещё что немаловажно: событие может быть вызвано только из того класса, где оно объявлено. И методы доступа про которые ты сказал, это тоже важная штука, добавляющая значительно отличий. ru.stackoverflow.com/questions/226505/event-%D0%B8-delegate-%D0%B2-%D1%87%D0%B5%D0%BC-%D0%BE%D1%82%D0%BB%D0%B8%D1%87%D0%B8%D0%B5
Тут прям хорошо расписано
а можно ли подписаться без метода? ну у меня происходит какое то событие в другом классе. Просто подписаться на это событие. Это возможно?
Как в Инстаграм или как на Ютуб подписаться?
На события можно подписать метод, анонимный метод, лямбда выражение или лямбда оператор. Подписка на событие сосуществует для того чтобы обрабатывать его
@@Bytepp вы не знаете, как в статическом классе можно вызвать сервис (интерфейс). Путем создания экземпляра класса реализации не выходит, особенно если конструктор реализации принимает параметры. Нужно в статическом классе, допустим в его методе, вызвать этот интерфейс для получения данных. Весь интернет что мог перерыл, нет информации( спасибо!
@@glebbsif, чтобы с интерфейсом работать надо его реализовать. После реализации, создаёшь экземпляр класса, где его реализовал, и вперёд
@@Bytepp проблема в том, что сама реализация, точнее её конструктор, тоже принимает в параметры абстракцию..... ( таким образом что можно передать в параметры при создании экземпляра? Другой экземпояр?
А без делегата это возможно сделать?
Нет. Делегат определяет требования события к методам, которые можно подписать на него.
Что за программа для рисования?
Lightshot) он и для скриншотов
Почему просто метод не вызвать? Зачем обязательно ивент? Ведь это получается, что иенты просто прокладка-посредник для метода.
Суть ивента в том, что ты можешь на него навесить любой метод с любой логикой) а если сразу навесить метод, то всё, никакого разнообразия
@@Bytepp о. Ну, метод можно заменить, ивент можно переназначить. Может, ивенты раскрывают свою нужность при определенной архитектуре? При высокой сложности и большим количестве классов?
Я так и не понял в чем прикол event, если убрать слово event, то все точно так же работает, как и обычный делегат. В чем разница практическая? Что такого может событие, что не может делегат? По моему событие это тупо тот же делегат с приставкой event. WTF??? Объясните дураку, пожалуйста
Бутя, ты шо, живой? Я думал канал заброшен, а он цветет и пахнет)))
Кто нибудь может нормально объяснить что такое EVENT и как это применять на ПРИМЕРАХ!!! без, сука, ВОДЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ