Уроки C# - Расширения, Extensions, Синтаксический сахар - C#

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ก.ย. 2024
  • Донаты и на кофе ➜ t.me/win10twea...
    Эксклюзив для спонсоров ➜ / xpuct
    Если недоступна спонсорка ➜
    Форум по C#:
    win10tweaker.r...
    Основной канал:
    / jailbreakvideo
    #Расширения #Extensions #СинтаксическийСахар #СиSharp #СиШарп

ความคิดเห็น • 128

  • @lamax847
    @lamax847 5 ปีที่แล้ว +29

    Мужик, ты крут, урок огонь

  • @jangarach12
    @jangarach12 5 ปีที่แล้ว +22

    Христ ты крутой!! Открыл мне глаза)) Так можно было делать?!

  • @DrainRanger92
    @DrainRanger92 4 ปีที่แล้ว +11

    Просмотрел весь твой курс, хочу сказать спасибо!
    Появилось начальное понимание и представление программирования на c#, а то в моем универе преподы такого дать не могут.
    Буду самостоятельно развиваться в этом направлении, ну и конечно жду новых курсов, у тебя талант доступно объяснять.

    • @HeIvis
      @HeIvis 2 ปีที่แล้ว +1

      привет, прошло 2 года, есть результаты?

  • @SharkVil
    @SharkVil 4 ปีที่แล้ว +4

    4 года обучения, а узнал об этом только сейчас... Спасибо. :

  • @tmps_sound
    @tmps_sound 5 ปีที่แล้ว +11

    Напоминает создание пользовательских элементов, наследуемых от базовых))

  • @Loki.1754
    @Loki.1754 5 ปีที่แล้ว +15

    очень круто что делаешь такие уроки) спасибо по твоим видео учу c#)

  • @nikitanikitenko5338
    @nikitanikitenko5338 5 ปีที่แล้ว +5

    Просто чакра открылась. Конечно понятно! Спасибо большое!

  • @axel6164
    @axel6164 5 ปีที่แล้ว +4

    Всё понятно, понял ещё на первом примере. Спасибо за уроки.

  • @sledleo
    @sledleo 5 ปีที่แล้ว +2

    Лучший вросветитель по C#! Реально круто!

  • @Lera_2808
    @Lera_2808 3 ปีที่แล้ว +2

    .. и почему я раньше не видел Ваш канал, БОЛЬШОЕ уважение, восхищение калорийные лайки и главное здоровья Вам.. Спасибо за Ваши труды..

  • @andreyzakharoff6952
    @andreyzakharoff6952 4 ปีที่แล้ว +2

    Хачатур, спасибо большое тебе за уроки! Очень просто, понятно, доходчиво объясняешь :)

  • @user-du3tj5hk3e
    @user-du3tj5hk3e 4 ปีที่แล้ว +2

    Спасибо Христ, на коленке и понятно! Всех благ, побольше вдохновения и качественного материала!

  • @user-rh6hq8eh5u
    @user-rh6hq8eh5u 3 ปีที่แล้ว +1

    Огромное спасибо за отличные уроки: сложные вещи объясняешь быстро без нудятины и человеческим языком.

  • @happyfog15
    @happyfog15 2 ปีที่แล้ว +1

    Вот эта инфа! Огромная благодарность, то что нужно. Особенно при создании своих собственных элементов управления.

  • @ZordanAndrei
    @ZordanAndrei 4 ปีที่แล้ว +1

    Да, отлично объяснено. Это действительно крутая штука, которой буду пользоваться неоднократно!

  • @roman6572
    @roman6572 4 ปีที่แล้ว +1

    мне кажется самый крутой плюс расширений это оставлять написанные ранее классы "чистыми", не захламляя их доп. функционалом. А вообще по факту расширения это обычные статические методы, их можно писать прям в классе, но для удобства создают отдельный класс, и в методы передают 1 аргументом this, что бы вызывать этот метод прям на экземпляре, так что это синтаксический сахар.

  • @user-ig1fp3lp1r
    @user-ig1fp3lp1r ปีที่แล้ว +1

    Буквально вчера дошел на Metanit до расширений и совершенно не осознал профита от их использования. Ваше видео полностью перевернуло мое представление. Спасибо!

  • @user-ne3ec8hw9f
    @user-ne3ec8hw9f 3 ปีที่แล้ว +2

    Готовлюсь к экзамену по вашим видео)) Спасибо за то, что вы делаете!

  • @Unknown_Eugene
    @Unknown_Eugene 3 ปีที่แล้ว +2

    оч круто рассказал! Спасибо большое за урок! Как раз делаю лабу, и в ней эти расширения просто незаменимы

  • @user-vu6eg4pb6g
    @user-vu6eg4pb6g 3 ปีที่แล้ว +1

    Круто !!!! Не знал!!! Пойду немного подкорректирую код)))))

  • @dmitriykrasnoperov2086
    @dmitriykrasnoperov2086 4 ปีที่แล้ว +1

    Классно очень классно и понятно. Такие уроки прям супер. Жаль что ваш канал нашёл только спустя 2 года обучения C#.

  • @mqst
    @mqst 2 ปีที่แล้ว +2

    То что я искал с момента как начал кодить и изучать все это!
    Нету слов, одни маты как это о****но(офигенно)!
    Вот где лежит оптимизация и быстрота написания
    Пришел со своими инструментами, быстро все сделал и ушел.
    Кайф, спасибо за этот ОЧЕНЬ интересный материал

  • @carlcarlinn7367
    @carlcarlinn7367 5 ปีที่แล้ว +3

    Как люди могут не понимать зачем это нужно? Постоянно пишешь одно и то же, работаешь с одним и тем же и в каждом новом продукте/задаче пишешь одни и те же методы. Догадывался что такое возможно и хотел сделать, но никак не мог найти. Огромное спасибо!

  • @kirillvlasenko3423
    @kirillvlasenko3423 2 ปีที่แล้ว +1

    Очень доходчиво и в приятной атмосфере, спасибо!

    • @XpucT
      @XpucT  2 ปีที่แล้ว

  • @salamatturdukhodzhaev7486
    @salamatturdukhodzhaev7486 5 ปีที่แล้ว +1

    Спасибо за уроки. Все доходчиво и внятно. Пожалуйста, если можно сделай урок про рекурсивные методы

  • @user-gk5vv2vx8z
    @user-gk5vv2vx8z 5 ปีที่แล้ว +3

    Спасибо, въехал в тему )))

  • @Krusensterrn
    @Krusensterrn 5 ปีที่แล้ว +1

    это же можно таким образом смену языка и настроек реализовать еще, прописать все варианты, и потом просто переключать их через расширение. Шикарно :)

  • @serhiizamkovyi9288
    @serhiizamkovyi9288 4 ปีที่แล้ว +1

    Спасибо тебе! Для меня как для .NET junior developer твой канал открытие! Ты супер!

  • @nemounas2127
    @nemounas2127 5 ปีที่แล้ว +1

    Надеюсь автор найдет время и будут еще ролики о c#. ) Каждый ролик заменяет несколько глав из заумных книг. )))

    • @XpucT
      @XpucT  5 ปีที่แล้ว

      Всё будет ;)

  • @user-bg9gl9fl9y
    @user-bg9gl9fl9y 3 ปีที่แล้ว +1

    Очень крутая штука!)

  • @tree-service
    @tree-service 3 ปีที่แล้ว +1

    очень круто и полезно.

  • @_sort_
    @_sort_ 2 ปีที่แล้ว +1

    Пришел сюда, что бы вспомнить синтаксис. И заодно написать, что никогда бы не подумал, что когда то меня припрет написать подобный метод :)

  • @spritoff
    @spritoff 4 ปีที่แล้ว +1

    да, удобно, понятно - класс

  • @Sergioshe
    @Sergioshe 4 ปีที่แล้ว +1

    Спасибо

  • @zimavi
    @zimavi ปีที่แล้ว +1

    Теперь я смогу добавить больше вещей в свою либу

  • @SHILY-PROJECT
    @SHILY-PROJECT 4 ปีที่แล้ว +1

    ВОТ ЭТО НИФИГА СЕБЕ! СПАСИБО ОГРОМНОЕ! ОЧЕНЬ НУЖНАЯ ВЕЩЬ!:3

  • @kalobyte
    @kalobyte 5 ปีที่แล้ว +1

    вот это крутая штука, я сразу ее понял и думал, как бы прилепить свои свойства в контролы
    я там в каждом контроле хранил его порядковый номер и у него было свойство Tag, но оно строковое и приходилось постоянно конвертировать, а так я мог бы сам создать его
    просто не знал, что это свойства называются и что они вообще есть

  • @UFO26
    @UFO26 ปีที่แล้ว

    Век живи, век учись. У меня куча таблиц в окнах и перед динамическим созданием каждого окна, я создаю почти одинаковые настройки таблиц строк на 20 в каждом окне. Я же могу создать расширение с настройками и вызывать метод у свеже созданной таблицы. Не догадался. Хотя расширения юзаю давно. Сделал интересную штуку: например в контролах есть поля Location и Size, а у меня это ещё и методы. Вместо button1.Location = new Point (960, 540); я пишу: button1.Location(0.5, 0.5); и левый верхний угол кнопки будет по центру при любом разрешении экрана с учётом того, где находится полоска пуска: внизу, вверху, сбоку или скрыта и за вычетом хед бара с крестиком и полоски меню.

  • @AndriySylyvonyuk
    @AndriySylyvonyuk 2 ปีที่แล้ว

    Все...меня уволят...останусь без роботы... не знал этого. Очень круто.

  • @user-oo7sz8vn2g
    @user-oo7sz8vn2g ปีที่แล้ว

    Шикарно !

  • @alexeygumenyuk8510
    @alexeygumenyuk8510 4 ปีที่แล้ว +1

    Бляха, у меня сразу глаза загорелись, когда я это увидел. Это просто офигеть как круто. Я прям на своём опыте могу представить дофига случаев, где это могло бы пригодится.
    P. S. Кст, в js это очень не плохо делается с помощью prototype.

  • @vadymkon
    @vadymkon ปีที่แล้ว

    Невероятно крутая штука, прямо таки восторг. Типо действительно сложно описать зачем это нужно, но иметь такую штуку у себя очень круто. Подозреваю, что позже вернусь к этому видео :)
    Кстати вот делаю програмки понемногу по урокам, кидаю друзьям, прикалываюсь, вообще весело, но вот вылетел такой прикол, который фиг знает почему не работает. В одной программе гифки в пикчбоксах запускаются как гифки, а во второй чё бы я не крутил, не запускаются и всё. Статичная картинка. С такой грустью отправил как финальную историю, но вот может знаете как его исправить, чтобы в будущем знать куда кликать, чтобы запускалось нормально.

  • @QuatriuQuirit
    @QuatriuQuirit 4 ปีที่แล้ว +1

    Да, +- понятно. Полезная штука.

  • @giocatory
    @giocatory 4 ปีที่แล้ว +1

    Гораздо понятней, даже чем в код блоге

  • @glebkrel5526
    @glebkrel5526 3 ปีที่แล้ว +1

    Круто. Спс.

  • @user-wu-tang
    @user-wu-tang ปีที่แล้ว +1

    ув. Хачатур привет
    пояснил понятно, но наверно рано))

  • @user-oj2bw8id9f
    @user-oj2bw8id9f 3 ปีที่แล้ว +1

    наааайс, пушка Броо)

  • @tmps_sound
    @tmps_sound 5 ปีที่แล้ว +1

    Добрый день, Хачатур! Хороши видосы)) хотел бы узнать будет ли видео на тему создания апдейтера программы (например по FTP)?

    • @XpucT
      @XpucT  5 ปีที่แล้ว

      Обязательно будет. Это один из тех туториалов, которого не может не быть 👍

  • @Roman-tt2rg
    @Roman-tt2rg 5 ปีที่แล้ว

    Очень понятно, спасибо

  • @coffeebydny393
    @coffeebydny393 4 ปีที่แล้ว +1

    Хочу отдельно поблагодарить за win 10 tweaker, не могу представить как я жил без этой программы. Есть вопрос сам интерфейс твикера сделан на вин формах?

    • @XpucT
      @XpucT  4 ปีที่แล้ว +1

      Всё полностью на Windows Forms 😇

    • @coffeebydny393
      @coffeebydny393 4 ปีที่แล้ว

      @@XpucT еще один вопрос давно хотел узнать. Что у вас за тема папок, синии очень приятные глазу

    • @XpucT
      @XpucT  4 ปีที่แล้ว +1

      ​@@coffeebydny393 th-cam.com/video/gb3DMe5OJBg/w-d-xo.html

  • @user-nw6tz4we5i
    @user-nw6tz4we5i 5 ปีที่แล้ว +1

    Здравствуйте Хачатур!
    Извините,что не по теме. Можно вас попросить снять обучающее видео по Virtual Box. Как правильно пользоваться,настраивать,устанавливать системы и сохранять все изменения в виртуальной машине. Понимаю,что таких видео на ютубе хоть пруд пруди но лично я вам как-то больше доверяю и хотел бы научиться пользоваться данной программой с вашей помощью. Спасибо!

    • @XpucT
      @XpucT  5 ปีที่แล้ว +1

      Добрый день, Рома ☀
      В Уроке 1 как раз рассказывал обо всём, что нужно знать в VirtualBox.
      th-cam.com/video/MGypxPUNtWk/w-d-xo.html

    • @user-nw6tz4we5i
      @user-nw6tz4we5i 5 ปีที่แล้ว +1

      Спасибо большое Хачатур! 👍
      Прошу прощения за мою невнимательность. Что-то с памятью моей стало.

    • @user-nw6tz4we5i
      @user-nw6tz4we5i 5 ปีที่แล้ว

      Прошу прощения за беспокойство. Можете мне объяснить, почему при создании виртуальной машины в списке систем у меня только 32-х битные системы? В данный момент моя основная система 64-х битная и оперативной памяти у меня 8 гигов.

    • @XpucT
      @XpucT  5 ปีที่แล้ว

      Откуда Вы брали VirtualBox?

    • @user-nw6tz4we5i
      @user-nw6tz4we5i 5 ปีที่แล้ว

      С оффсайта.
      Помоему или процессор не поддерживает виртуализацию или может в сборке винды дело.
      Это конторский компьютер с Intel Pentium Dual-Core E5200. Хотел на нем поиграться с Virtual Box но видно не судьба.

  • @Shuhret
    @Shuhret 4 ปีที่แล้ว +1

    У тебя крутые уроки. Ждём WPF.

  • @user-mn2po8ns2z
    @user-mn2po8ns2z 4 ปีที่แล้ว

    очень понятно, разборчиво и доходчиво, но я не понял))

  • @fumanchez
    @fumanchez 4 ปีที่แล้ว +1

    хороший урок, но лучше методы называть глаголами - не просто Bold(), а ToBold() - сделать жирным, как в общем-то и все дефолтные типа ToString()

  • @Happy_Ted
    @Happy_Ted 5 ปีที่แล้ว +8

    Хачатур, будут ли уроки по WPF ?

    • @XpucT
      @XpucT  5 ปีที่แล้ว +7

      Всё может быть. Сначала нужно изучить Windows Forms.

    • @Happy_Ted
      @Happy_Ted 5 ปีที่แล้ว +6

      @@XpucT Буду ждать. Щас пишу программу по твоим урокам, ты обьясняешь как боженька, теперь уроки других людей не воспринимаются)

    • @sledleo
      @sledleo 5 ปีที่แล้ว +3

      @@XpucT ждем WPF! Ты лучший!

    • @sledleo
      @sledleo 5 ปีที่แล้ว +2

      @@XpucT WPF реально нужен, пытался реализовать простенький САПР, который устанавливает связи между объектами, как в табличном виде так и в виде графических связей, но засыпался в особенностях контроллов и связях в БД. Может еще раз соберусь и попробую, но базовых представлений пока маловато.
      Попробую еще раз Linq-ом все связать... или до пенсии отложу... печаль...

    • @aleksandr_sp7721
      @aleksandr_sp7721 4 ปีที่แล้ว

      @@XpucT вроде win forms уже не актуален,его никто не использует

  • @tttakkkumi
    @tttakkkumi 4 ปีที่แล้ว +2

    Давай урок по dll и плагинам)

  • @Happy_Ted
    @Happy_Ted 5 ปีที่แล้ว +2

    Хачатур, вопрос на миллион, покажи пожалуйста, как менять иконку любого файла, получив его путь и выбрав заранее заготовленную иконку ?

    • @XpucT
      @XpucT  5 ปีที่แล้ว +1

      Иконку файла? Перефразируй.

    • @Happy_Ted
      @Happy_Ted 5 ปีที่แล้ว +1

      @@XpucT Ну вот лежит у меня на рабочем столе например екзешник, как мне по нажатию кнопки присвоить этому екзешнику иконку из моего списка ? Или например, я создаю файл командой File.WriteAllByte(path, byte[]) как мне к этому файлу приделать значок ? может есть что то типа (File.Icon = my icon) ?

    • @XpucT
      @XpucT  5 ปีที่แล้ว +1

      @@Happy_Ted крутая задачка однако =))Далеко зашёл Ты =))
      Попробую глянуть.

    • @XpucT
      @XpucT  5 ปีที่แล้ว +1

      @@Happy_Ted вижу, что проще воспользоваться сторонними ресурсами, чем писать своё:
      angusj.com/resourcehacker/

    • @Happy_Ted
      @Happy_Ted 5 ปีที่แล้ว +1

      @@XpucT это я все заню про ресурс хакер, нужно свое, иначе зачем жить ?

  • @676u7njh7uiop99pp9hh
    @676u7njh7uiop99pp9hh 2 ปีที่แล้ว +1

    Top!!!!!

  • @alex63271
    @alex63271 2 ปีที่แล้ว +1

    Хотелось бы понимания как это работает "под капотом", а не просто: "пишите this и будет вам расширение". Я вот понимаю под this - текущий экземпляр класса. Получается в параметрах метода можно указывать экземпляры классов? И что с этой ссылкой на экземпляр статического класса Ext делает метод дальше?

    • @XpucT
      @XpucT  2 ปีที่แล้ว

      Нет, не правильно. Это именно фича и Я не знаю, как можно объяснить почему именно так.
      Мне кажется, что Вы просто взяли разные this из языка и пытаетесь их сравнить. Я тоже так делал по началу, потом просто нажимаю на F1 и залетаю в справку, чтобы точно понять, что это и почему. Не всё даёт MSDN, но многое становится понятно. Если нужна природа происхождения или философия, то это уже на stackoverflow. Там обсуждают логику поступка решить сделать именно так, а не так.

  • @redtayron6390
    @redtayron6390 5 ปีที่แล้ว +1

    Что то сахарку захотелось))

  • @maxmashpit610
    @maxmashpit610 4 ปีที่แล้ว +1

    Я уверовал в Господа.

  • @zetus6423
    @zetus6423 5 ปีที่แล้ว +1

    Спасибо за уроки , объясняете всё очень доходчиво !
    з.ы Немного не по теме, но всё же спрошу, так как Вы автор твикера и скорее всего хорошо знаете внутренности винды :)
    Проблема в 10 -ке есть, память(RAM) забивается под 99% за сутки. Вы не сталкивались с таким? Если да, то случайно не знаете как решить эту проблему.

    • @XpucT
      @XpucT  5 ปีที่แล้ว +3

      Какое-то приложение не сбрасывает свой кэш или висит в памяти.
      Тут, как обычно, поможет Win 10 Tweaker и его виджет очистки оперативной памяти.

  • @unx238
    @unx238 5 ปีที่แล้ว +1

    как сделать так что-бы при наведение на любой контрол под курсором появлялся текст если не трудно в конце следующего видео покажи )) ps спасибо за видео!

    • @XpucT
      @XpucT  5 ปีที่แล้ว

      В следующем после потоков 👍

  • @user-li5ls7gu5z
    @user-li5ls7gu5z 4 ปีที่แล้ว

    привет. win 10 tweaker на каком языке писал?

  • @BlendLogDev
    @BlendLogDev 4 ปีที่แล้ว +1

    Почему я раньше не нашёл это видео? Просто топ! Сейчас решил написать программку для раздачи wifi, благодаря твоим видеороликам сделал такую штуку, чтобы программка показывала количество подключенных устройств и их mac адреса. Большое спасибо)
    кому интересно ссылка на проект
    yadi.sk/d/_nJ5tAN9ENMJKw
    в папке release лежит готовый .exe'шник

    • @XpucT
      @XpucT  4 ปีที่แล้ว +1

      Шикарно 👏

    • @disol588
      @disol588 3 ปีที่แล้ว

      Жаль что проект удалили (

  • @ilyatokar5336
    @ilyatokar5336 5 ปีที่แล้ว +1

    Удобная вещь, а в других языка такое присутствует?

  • @animationfantasymystic7311
    @animationfantasymystic7311 4 ปีที่แล้ว

    Если например я делаю несколько расширений то получается для них надо создать отдельный class? ....

  • @sledleo
    @sledleo 5 ปีที่แล้ว +2

    Лють, кулл!

  • @chuvak_2553
    @chuvak_2553 5 ปีที่แล้ว +1

    Вопрос (не по теме видео):
    Я в последнее время часто работая с БДшками, и у меня вопрос, как правильно структурировать программу?
    Ну, допустим, есть несколько таблиц, они связаны некоторыми полями между собой. Как я обычно делаю: просто создаю формочки с полями ввода (textbox-ы, datatimepicker-ы, combobox-ы ну и т.п.), в коде у них создаю поля (как в табличке БД) и пару функций, что выполняют запросы к БД.
    Стоит ли структурировать код как-то по другому (например вынося все таблицы из БД в классы C#) или мой подход нормальный?
    *Заранее спасибо за ответ

    • @XpucT
      @XpucT  5 ปีที่แล้ว +1

      Чем больше кода, тем больше хочется, конечно, раскидать всё по классам.
      Я считаю, что это вкусовщина и каждый кодер сам выбирает, когда уже пора =))

    • @kalobyte
      @kalobyte 5 ปีที่แล้ว +1

      ты опдошел к тому порогу, когда нужно изучать паттерны проектирования и паттерны программирования, чтобы разделять код форм от кода логики софта и еще там будет код, который связывает эти 2 сущности
      все это называется mvc mvp mvvm
      правда я нигде не нашел годных курсов, где бы создавалось приложение с нуля по такому шаблону

    • @XpucT
      @XpucT  5 ปีที่แล้ว +1

      @@kalobyte годных курсов действительно нет, поэтому найду время и сниму на канале.
      Проблема в том, что очень сложно эту паутину с чего-то начать. Снимают и учат все, а толку ноль.
      Я-то уже знаю, в чём проблема объяснения MVVM - паутина. Но думаю, что найду время и распутаю её, чтобы было всё последовательно.

    • @kalobyte
      @kalobyte 5 ปีที่แล้ว +1

      @@XpucT
      учат неправильно потому что
      я недавно нашел ответ на вопрос по этому поводу и это было как дар с небес
      теперь вот жду, пока автор курс платный сделает, но он по пхп, а пхп мне тоже пойдет
      вот тут дан ответ в 3х роликах
      th-cam.com/video/ibVp1ZQtiDs/w-d-xo.html
      th-cam.com/video/BNbEJHi-aFs/w-d-xo.html
      th-cam.com/video/3UG61JvgW2s/w-d-xo.html

  • @illson4666
    @illson4666 5 ปีที่แล้ว +1

    Покажи как работать с длл

  • @lloydlion8959
    @lloydlion8959 5 ปีที่แล้ว

    Есть вопрос.
    Будут ли расширения написанные для одного базового класса видны у класса наследника?

    • @XpucT
      @XpucT  5 ปีที่แล้ว

      Надо пробовать. Вроде, как должен.

  • @nemanjasekulic711
    @nemanjasekulic711 3 ปีที่แล้ว

    привет! есть возможность с тобой связатсья?

  • @animationfantasymystic7311
    @animationfantasymystic7311 4 ปีที่แล้ว

    Хм....почему мне удалось это расширение вызвать вот так:
    private void button1_Click(object sender, EventArgs e)
    {
    Ext.Bold(label1);
    }


    }
    public static class Ext
    {
    public static void Bold(this Label label)
    {
    label.Font = new Font("Rubik", 9.75F, FontStyle.Bold);
    }
    }

    • @animationfantasymystic7311
      @animationfantasymystic7311 4 ปีที่แล้ว

      ....но все равно это расширение да....потому что ....this ?

  • @disol588
    @disol588 3 ปีที่แล้ว

    Подсажите пожалуйста в чем проблема?! У меня не срабатывает расширение. Подчеркивает красной Ext, при наведении на него пишет: CS1109: Методы расширения должны быть определены в статическом классе верхнего уровня, Ext является вложенным классом. Все повторяю точно, вроде ошибок нет, не понимаю что нужно делать.

    • @XpucT
      @XpucT  3 ปีที่แล้ว

      Ответ в ответе =)
      static забыл?

    • @disol588
      @disol588 3 ปีที่แล้ว

      @@XpucT где именно? пробую c Bold тоже самое =(
      public Form1()
      {
      InitializeComponent();
      }
      void Button1_Click(object sender, EventArgs e)
      {
      label1.Bold();
      }
      public static class Bld
      {
      public static void Bold(this Label label)
      {
      label1.Font = new Font("Papyrus", 9.75F, FontStyle.Bold);
      }
      }

  • @awfsdgsgeefdgwef
    @awfsdgsgeefdgwef 5 ปีที่แล้ว

    А как написать расширения для своей программы? Ну по типу плагинов?

    • @XpucT
      @XpucT  5 ปีที่แล้ว

      А поконкретнее?

    • @awfsdgsgeefdgwef
      @awfsdgsgeefdgwef 5 ปีที่แล้ว

      @@XpucT например у notepad++ есть поддержка плагинов(Converter, MIME tools). Я хотел бы узнать, как можно сделать поддержку плагинов для своей программы.
      Например, грамотно реализовать калькулятор(обычный), и плагин для перевода из dec в hex(чтоб его отдельно можно было скачать и просто в папку рядом кинуть,напримпр) .

  • @stanislavsh6582
    @stanislavsh6582 4 ปีที่แล้ว

    Мне кажется не самая хорошая практика.
    В чем суть, вот ты понаписал своих методов расширений, запихнул их в либу и таскаешь от проекта к проекту. Берет твой код другой человек, он знает фреймворк, он знает как работает то что ему надо, но он не знает что это за какой-то ValMax, он должен сидеть и гадать, тыкать палкой и играть в Вангу, а если ты ушел уже из проекта и исходников твоей библиотеки с расширениям не осталось, то в случае если ты там чего-то нехорошего неделал, оставшиеся работать в проекте вынуждены будут это все выпиливать ручками.
    Конечно, для своих поделок на коленке можно писать как хочешь, но делая что-то серьезное, нужно понимать, что ты не один в команде, люди занимаются отдельными частями проекта, а ты, скорее всего, таки уйдешь из проекта и твое желание написать меньше аукнется тому кто дальше с этим кодом работать будет.

    • @XpucT
      @XpucT  4 ปีที่แล้ว +2

      Это возможность. И как её использовать и кому - это уже другой вопрос. Это как goto. Если бы не нужен был, его бы убрали или не делали. Поэтому не обязательно примерять всё на личной ситуации. Я лично разраб-одиночка. Мне никто не помогает, никто код не знает. Всё своё, всё для себя. И это удобно. Для крупных компаний есть классы, которые одни могу читать, другие нет, всё просто. И там как раз расширения. Просто представь, что у кого-то всё держится на анимации. И каждый раз костылять это... Проще иметь фирменное расширение.

  • @mikkimorfin5406
    @mikkimorfin5406 2 ปีที่แล้ว +1

    Тараторишь много

  • @user-wh1rc3bv4g
    @user-wh1rc3bv4g 2 หลายเดือนก่อน +1

    красиво