C#. События / Обработка и создание / event. Урок 66

Поделиться
HTML-код
  • Опубликовано: 3 окт 2024
  • #csharp #event #события
    Поддержите автора - www.donationale...
    На карту сбера 4276400076514539 (Андрей Николаевич)
    Даже 100, даже 10 рублей будет просто превосходно!
    Если миллион скинет по рублю будет миллион рублей!)))
    В этом видео я расскажу как создать событие в c#, как обработать событие, как подписать метод на событие и как отписать метод от события. Мы разберём правила создания событий и многое другое.
    Событийно-ориентированное программирование (event-driven programming) - парадигма программирования, в которой выполнение программы определяется событиями -
    действиями пользователя (клавиатура, мышь), сообщениями других программ и потоков, событиями операционной системы (например, поступлением сетевого пакета).
    События пришли из событийно-ориентированнаного программирования и выражены через объекто-ориентированные конструкции. Всё что берется из других подходов (функциональные, событийные)
    выражаются через объекты.
    Событийно-ориентированное программирование, как правило, применяется в трех случаях:
    1. При построении пользовательских интерфейсов (в том числе графических);
    2. При создании серверных приложений в случае, если по тем или иным причинам нежелательно порождение обслуживающих процессов;
    3. При программировании игр, в которых осуществляется управление множеством объектов.
    События позволяют классу или объекту уведомлять другие классы или объекты о возникновении каких-либо ситуаций.
    Подписывайтесь на канал, ставьте лайки, задавайте вопросы в комментариях!

Комментарии • 44

  • @i386
    @i386 2 года назад +2

    Спасибо, долго не мог в голове уложить как реализованы события в C#, а тут вы хорошо все рассказали.

    • @xeither289
      @xeither289 11 месяцев назад

      ❤БОГ СОЗДАЛ ТАКОЙ ПРЕКРАСНЫЙ МИР! НЕ БУДЕМ РАЗРУШАТЬ МИР! ПОЛЮБИМ БОГА И ВСЕХ ЛЮДЕЙ! НЕТ ВОЙНЕ!!

  • @ilya_dikushnikov
    @ilya_dikushnikov Год назад

    Лучше всех объясняешь! Спасибо🙏

    • @xeither289
      @xeither289 11 месяцев назад

      ❤БОГ СОЗДАЛ ТАКОЙ ПРЕКРАСНЫЙ МИР! НЕ БУДЕМ РАЗРУШАТЬ МИР! ПОЛЮБИМ БОГА И ВСЕХ ЛЮДЕЙ! НЕТ ВОЙНЕ!!

  • @begenchdovletov5034
    @begenchdovletov5034 3 года назад +8

    Я и до этого немного понятие имел. Но с примерами автора все стало намного понятнее. Спасибо!!!)

    • @xeither289
      @xeither289 11 месяцев назад

      ❤БОГ СОЗДАЛ ТАКОЙ ПРЕКРАСНЫЙ МИР! НЕ БУДЕМ РАЗРУШАТЬ МИР! ПОЛЮБИМ БОГА И ВСЕХ ЛЮДЕЙ! НЕТ ВОЙНЕ!!

  • @geedroponika
    @geedroponika 3 года назад +14

    Лысый из ITVDN тебе привет передавал 😉

  • @controlTheBallGame
    @controlTheBallGame Год назад

    Офигенный жизненный пример привел с подпиской на канал👍

  • @IichiKohuro
    @IichiKohuro 4 года назад +3

    Спасибо за урок, очень доходчиво.

    • @Bytepp
      @Bytepp  4 года назад

      Рад, что понравилось))

  • @OpalGooDog
    @OpalGooDog 3 года назад +1

    Админ, спасибо тебе большое за прекрасное объяснение

    • @Bytepp
      @Bytepp  3 года назад

      Пожалуйста))

  • @accordh82
    @accordh82 3 года назад +3

    Уже не первый подход у меня к делегатам и событиям. И не первое видео, соответственно. Довольно понятно изложено, в голове устаканилась структура работы событий, сейчас ещё дополнительное видео посмотрю, думаю, станет ещё понятнее. Спасибо!

    • @Bytepp
      @Bytepp  3 года назад +1

      Рад, что видео понравилось)) успехов)

  • @criminalplushtoy7682
    @criminalplushtoy7682 7 месяцев назад

    Броу спасибо тебе. Долго не мог понять события

  • @ПавелЕрошенко-ц4ь
    @ПавелЕрошенко-ц4ь 2 года назад +3

    Приведённые примеры особо не раскрывают суть событий. Вот если в MyClass у вас убрать слово event, то ничего не изменится. Более того, тогда можно и не создавать промежуточные методы, ведь делегат может вызываться в другом классе без методов-посредников. И произойдет то же самое - бесконечный цикл слушает нажатие кнопок, при нажатии w/s делегат выполняет вложенные методы

  • @tarasiskiv9037
    @tarasiskiv9037 3 года назад +1

    Спасибо за видео

    • @Bytepp
      @Bytepp  3 года назад

      Пожалуйста))

  • @只是約翰紐約市
    @只是約翰紐約市 Год назад

    Спасибо большое за урок! Как я понял, делегат + событие - это просто список (стек) указателей на функции

  • @viktor_ovod
    @viktor_ovod 3 года назад +1

    Для меня, подписаться на канал - это целое событие! Гыгы...

  • @KingDog25
    @KingDog25 2 года назад

    С юмором)) отличный урок!

  • @John83_
    @John83_ 3 года назад +2

    электроды в мозгу из ITVDN , от лысого привет)

  • @ewgenbi
    @ewgenbi 4 года назад +2

    За урок спасибо. Можно вызывать событие одной строкой: _event?.Invoke();

    • @Bytepp
      @Bytepp  4 года назад +1

      Пожалуйста)) конечно) наилучший способ

  • @codemystery
    @codemystery 2 года назад

    Привет! Спасибо за видео. Я верно понимаю что момент когда происходит событие в коде это момент вызова метода InvokeEvent() в примере или нет ?

  • @codemystery
    @codemystery 2 года назад +1

    не понял почти ничего. Не понятен пример оберткой InvokeEvent(). Можно же было просто сказать что нельзя напрямую вызвать событие в другом классе, а метод вызвать можно, именно поэтому мы и написали этот метод. Я также не совсем понял из видео где подписчик а где издатель. Пришлось глянуть другое видео, откуда мне стало понятно, что издатель этот тот класс в котором объявляется событие. в примере это MyClass, а подписчики это все те, где есть оператор +=.

  • @mrpaganinifeed2617
    @mrpaganinifeed2617 3 года назад +1

    Спасибо, я ослеп

  • @UFO26
    @UFO26 Год назад

    А можно создать дополнительное событие для кнопки через расширения extensions?

  • @alexkot9849
    @alexkot9849 Год назад

    Где можно скачать исходники?

  • @andrey_khrulkov
    @andrey_khrulkov 4 года назад +4

    Какую таблетку съесть, чтобы вкурить весь этот C#?

    • @Bytepp
      @Bytepp  4 года назад

      Определись, будешь таблетки глотать, или всё таки вкуривать?))

    • @andrey_khrulkov
      @andrey_khrulkov 4 года назад +1

      @@Bytepp я не подписан на эти действия

    • @Bytepp
      @Bytepp  4 года назад

      @@andrey_khrulkov, это хорошо))

    • @ewgenbi
      @ewgenbi 4 года назад +4

      Я тоже 1.5 года назад был в таком же неведении. Не запаривайся. Двигайся дальше. Понимание потом само придёт. Говорю из собственного опыта.

    • @Олег-ц2и5п
      @Олег-ц2и5п Год назад +1

      ​@@ewgenbiкакой результат на сегодня?)

  • @GDrakula
    @GDrakula Год назад

    Класс delegate? Разве delegate это класс? Microsoft определяет delegate как тип данных. Поясните? Это на 7:30

  • @kasdo6649
    @kasdo6649 2 месяца назад

    В чём проблема создать метод вызывающий все эти методы, в том, что это проще в 100 раз?

  • @ostrov11
    @ostrov11 4 года назад +1

    создание event C# События Обработка

    • @Bytepp
      @Bytepp  4 года назад

      Именно так👌

  • @Павел-щ5р8ы
    @Павел-щ5р8ы 2 года назад

    public void WKeyPressedEvent ()
    {
    wKeyPressedEvent?.Invoke();
    }
    public void WKeyPressedEvent () => wKeyPressedEvent?.Invoke();
    мне кажется проще=)

  • @applifeer1589
    @applifeer1589 3 года назад

    Ой сложная тема, ничего не поняла почти( Хотя хорошо объясняете

    • @Bytepp
      @Bytepp  3 года назад

      Посмотри это ещё ruclips.net/video/X2KCGviMeOI/видео.html

  • @antonsimkin
    @antonsimkin 3 года назад

    Ужас

    • @va1r347
      @va1r347 2 года назад

      Почему?