🎧 GRASP принципы с адаптацией для JavaScript и Node.js

Поделиться
HTML-код
  • Опубликовано: 2 окт 2024
  • Плейлист: • GRASP
    Автор: github.com/tsh...
    Патреон: / tshemsedinov

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

  • @ITKAMASUTRA
    @ITKAMASUTRA 3 года назад +24

    В поддержку канала и вашей образовательной движухи ✊🚀

  • @timashoff
    @timashoff Год назад +1

    временами приятно послушать лекцию без кода, особенно в дороге удобно. Спасибо!

  • @vitaliizvarych6469
    @vitaliizvarych6469 3 года назад +7

    Спасибо за контент!)

  • @uNkind33
    @uNkind33 3 года назад +33

    лайк до просмотра!

    • @TimurShemsedinov
      @TimurShemsedinov  3 года назад +28

      Всем джаваскрипта, бесплатно, много, и пусть ни кто не уйдет обиженным!

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

      @@TimurShemsedinov Начал смотреть ваши видео, и полюбил нодочку) и федорочку))

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

      @@TimurShemsedinovзабросил js, учу флаттер, но всеравно смотрю ваши видео)

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

      @@evgenysmirnov4762 Хаха)

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

    Спасибо Вам, за то что вы делаете. Спасибо, что делитесь своим опытом и знаниями!

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

    Лайк не глядя!

    • @TimurShemsedinov
      @TimurShemsedinov  3 года назад +6

      Я надеюсь, ты посмотришь )

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

      @@TimurShemsedinov Обязательно! Отличная тема!

  • @СмтрТб
    @СмтрТб 3 года назад +1

    Круто. Спасибо большое

  • @ivankrig7285
    @ivankrig7285 2 года назад +5

    5:03 Information Expert
    13:06 Creator
    18:15 Cohesion & Coupling
    21:33 Controller
    24:58 Polymorphism
    31:55 Indirection
    34:34 Pure Fabrication
    38:36 Protected Variations

  • @varanakonda
    @varanakonda 3 года назад +9

    Вы крут! Спасибо, что делитесь знаниями!

  • @404Negative
    @404Negative 29 дней назад

    промисы в реальной жизни существуют. давай так, если промисов не существует, то с меня лайк!

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

    Refactoring GURU !!!!

  • @661marker
    @661marker 6 месяцев назад

    показалось описание controller и indeirection (по которому в пример приводится контроллер из mvc)- пересекаются.

  • @ВіленКупрієнко
    @ВіленКупрієнко 3 года назад +24

    Класс! Хотим больше видео про проектирование и архитектуру

    • @TimurShemsedinov
      @TimurShemsedinov  3 года назад +19

      ну вот будет еще 8 лекций в этом курсе по GRASP, всего 10, а потом по SOLID пройдемся

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

      @@TimurShemsedinov ждем с нетерпением!

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

      🔥

    • @Денис-в5д5ь
      @Денис-в5д5ь 3 года назад +1

      @@TimurShemsedinov Просто супер!!! Тимур Гафарович, а когда будут лекции по SOLID?

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

      @@Денис-в5д5ь В этом году запишу, пока ограничен по времени, пишу техстек Метархия, это важнее

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

    Интересно было бы послушать о кейсах, когда grasp идут в конфронтацию с solid и между собой

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

      SOLID:SRP противоречит GRASP:Polymorphism, потому, что полиморфизм размывает ответственность, рассредоточивая ее по цепочке наследников, а SRP концентрирует. Вообще полипорфизм я признаю только на 1 уровень: интерфейс или абстрактный класс (что хуже) и от них 1 уровень классов наследников. Если больше, то можно запутаться и лучше делать композицию или агрегацию. Они даже друг-другу противоречат, например, GRASP: Indirection частично противоречит GRASP: High Cohesion, иногда нам нужно понизать Cohesion, а иногда повышать, зависит от конкретного случая и интуиции инженера. GRASP Information Expert частично противоречит GRASP: Pure Fabrication. Это все вопрос баланса.

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

    Топ!

  • @Andrey-qf8uw
    @Andrey-qf8uw 3 года назад +3

    дякую!

  • @artem_travlo
    @artem_travlo Год назад +1

    лучшее объяснение принципов GRASP

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

    Крутяк!

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

    По мне лучшее объяснение принципов GRASP

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

    Дякую за мудрість!

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

    мне нравится перевод Высокая сплочённость классов.

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

    Интересное и познавательное продолжение нас ждёт. Спасибо за лекцию

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

    Очень полезно.

  • @user-QesOrwuMqN
    @user-QesOrwuMqN 3 года назад +1

    любые принципы/паттерны - должны иметь примеры кода, любые попытки описать их текстом - автоматическое переусложнение

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

      Смотрим примеры и это только начало курса ruclips.net/video/cCHL329_As0/видео.html
      но это не значит, что о концепциях нельзя говорить человеческим языком

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

    Чистая выдумка - что вы имеете ввиду под сменой предметной области? Смена проекта?

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

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

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

    Дякую! Гарний матеріал з добрим поясненням. 👍

  • @user-vlad2020
    @user-vlad2020 3 года назад +1

    Тимур расскажите вы скорее всего герой ТС39 можно о ваших достижениях .

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

    Я вижу только одно адекватное решение всех этих проблем - это Typescript. А на фронтенде - Angular

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

    Класс, спасибо

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

    14:20 - Это о DepencyInjection ? Когда инстанс класса становиться свойством в другом классе.

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

      Если перндается в конструктор

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

      Еще по теме - ruclips.net/video/tOIcBrzezK0/видео.html

  • @ОлегПетров-п4у
    @ОлегПетров-п4у 3 года назад +1

    Спасибо за уроки!

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

    Отлично!

  • @НикитаКононов-д9ц
    @НикитаКононов-д9ц 3 года назад

    Какие более актуальные методологии вы имели ввиду в начале ролика, когда упоминали UML?

  • @Antonio-fm1sq
    @Antonio-fm1sq 2 года назад

    Спасибо!

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

    Подскажите когда будет продолжение?

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

    Кто может сказать почему лучше не применять в конструктуре класса, сразу метод валидации на входящие данные? Тогда как? Отдельным приватным методом в другом публичном методе? Тоже плохая идея. При учете что абстракция не протикает и зона отвественности класса ни нарушена. Валидация необщая а именно под эти данные. Смысла создавать класс под валидаци? Если придется поменять ее то тоже в одном классе.

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

      Валидацию лучше всего вынести в отдельную библиотеку, а потом снабжать модель метаданными в декларативном стиле и по ним валидировать. Вызывать валидацию из контроллеров.

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

      @@TimurShemsedinov про библиотеку не подумал. Благодарю.

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

    - Пойдешь ко мне в штат?
    - Кем?
    - Криэйтором.
    - Это творцом? Если перевести?
    - Творцы нам тут на х... не нужны, - сказал он. - Криэйтором, Вава, криэйтором.