Введение в шаблоны GRASP

Поделиться
HTML-код
  • Опубликовано: 4 фев 2025

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

  • @yuriyfedoryshyn5206
    @yuriyfedoryshyn5206 5 лет назад +44

    Говорить о сложных вещах простыми словами - талант.
    Сергей, спасибо.

  • @user-friendhors
    @user-friendhors Год назад

    Сепгей, вы умница обожаю вашу харизму и знания,спасибо!!!

  • @белка-у8б
    @белка-у8б 2 года назад +1

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

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

    Сергей, здравствуйте! Спасибо большое за лекции, я ваш поклонник!)
    Когда вы объясняете паттерн "Indirection" на 52:40, ваш пример с вынесением интерфейса показался не совсем корректным, так как суть паттерна "Перенаправление", на мой взгляд, заключается в том, чтобы разорвать двустороннюю связь между двумя классами посредником. (в 2008 году на слайде был корректный пример с продажей, репозиторием и базой данных)
    Могу ошибаться, но вроде по описанию паттерна все так :)

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

    вот это огонь! на мног инетреснее чем на канале по обучению.))) не знал что у вас еще этот канал есть,как то упустил. спасибо!

  • @WarbeastMr
    @WarbeastMr 4 года назад +5

    Круто! Спасибо.
    Тот случай, когда сам дошёл до понимания половины этих принципов, и узнал, что 20 лет назад из уже кто-то сформулировал.
    Получился паттерн - Инверсия обучения :)

  • @farenoy6848
    @farenoy6848 3 года назад +12

    Как же Сергей хорошо объясняет, чувствую +250$ к зп))

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

    Благодаря вашим лекциям влюбляюсь в программирование

  • @eugenstakhursky9604
    @eugenstakhursky9604 5 лет назад +2

    Очень интересная лекция, посмотрел с удовольствием!
    Сергей, жму руку!)

  • @ПашаХЗ-м8й
    @ПашаХЗ-м8й 5 лет назад +2

    Когда все вокруг умирает и рассыпается остается То ЕДИНОЕ, ВЕЧНОЕ -- это ПАТТЕРНЫ ПРОЕКТИРОВАНИЯ!

  • @тимурсаруханов
    @тимурсаруханов Год назад

    Только сдесь услышал понятное объяснение что такое инкапсуляция

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

    Самые крутые лекции в интернете. Нужно прочитать кучу книг чтобы прити к простым выводам.

  • @ansarozden5767
    @ansarozden5767 4 года назад +5

    49:50 Про рефакторинг придумано просто гениально

  • @anonanonov7394
    @anonanonov7394 5 лет назад +3

    Пихать суммирование в строчку чека - какая-то дичь.
    Уже лет 6 не пишу логику в классах с данными. DTO хранят данные, Services обрабатывают то что соответствует интерфейсам. Объекты почти не наследую от других объектов, зато использую множественное наследование интерфейсов.
    Код получается простой. Брат жив.
    Придумали себе какие-то принципы, и теперь страдают.

  • @ms_shifu7047
    @ms_shifu7047 5 лет назад +6

    Наконец-то обучающее видео. Сделайте плиз видос, что по вашему мнению будет с java с появлением платного JDK, .NET победит?

    • @ььььъъъьььь
      @ььььъъъьььь 5 лет назад +2

      Присоединяюсь к вопросу.+++

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  5 лет назад +2

      ничего не будет :)

    • @ms_shifu7047
      @ms_shifu7047 5 лет назад +3

      @@SergeyNemchinskiy звучит стремно: - А что будет если вон те дяди уронят вон ту штуку? - Ни чего не будет, в радиусе 50 км.

    • @ms_shifu7047
      @ms_shifu7047 5 лет назад

      @@uasco-da-gama ну да, либо каждые полгода менять версию java либо сидеть с дырами в безопасности (или криво работающими фичами). Все такое заманчивое, прям даже не знаю что и выбрать.

  • @ivanivanovq2964
    @ivanivanovq2964 5 лет назад +7

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

  • @orda13
    @orda13 5 лет назад +1

    Сергей, приветствую! Спасибо за Ваши труды.. Есть вопрос, в 33 -35 лет , есть ли шанс устроитьсья junior Java или это конец))? До этого работал немного iOS приложения покупал, последний год Golang junior был, но не срослось.. Сейчас в тестировании, но очень хочу научиться и стать разработчиком. Главный вопрос, говорят, что после 30 Junior устроиться очень сложно, это так?

    • @Sam66019
      @Sam66019 5 лет назад

      @@uasco-da-gama Вы же говорите, что это в нашей дикой стране с 20-ти летними синьорами типа такое в ИТ- 30 лет и на пенсию. Мне 36 и учу Джаву, есть желание сменить работу.

    • @Sam66019
      @Sam66019 5 лет назад

      @@uasco-da-gama Простите, перечитал еще раз вдумчиво ответ. Обознался, прошу прощения. Все верно в видео рассказано.

    • @orda13
      @orda13 5 лет назад

      Мне просто кажется, что HRы проходят мимо чаще, если возраст приклонный), в Москве по крайней мере, да и вакансий junior не много.

    • @orda13
      @orda13 5 лет назад

      Вопрос снят, парни - спасибо! Педалим...

    • @klerg321
      @klerg321 5 лет назад +1

      @@orda13 зарегтесь на линкедине и добавляте в связи всех эйчарок. Окажется что вакансий куча.

  • @ЮрийПлохов-к2в
    @ЮрийПлохов-к2в 4 года назад +1

    Правило бойскауата forever

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

    Почему-то сказанное по поводу индирекшина не коррелирует со слайдом. Там описано создание Хранилища-чистовыдуманного, а не то, что мы инверсируем зависимость через интерфейс.
    А в целом:"Об очевидных вещах нужно писать снова и снова. Чтобы они не теряли своей очевидности в глазах людей. Чтобы люди, подгоняемые гнетом действительности не могли отринуть очевидное, как малозначимое. Чтобы они не могли придумать хитроумных псевдоаргументов с целью оправдать свое пренебрежительное отношение к очевидным вещам. Очевидные вещи такого не прощают. И планирование проектов тому не исключение." Из старой и удаленной статьи с Хабра.

  • @Lammax2012
    @Lammax2012 5 лет назад +2

    Офигенно!!! Только слишком коротко. У Вас есть более развёрнутые лекции на тему архитектуры? =)

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

    15:53 Когда говорил о вакцинации до того как это стало мэйнстримом)

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

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

  • @ПашаХЗ-м8й
    @ПашаХЗ-м8й 5 лет назад

    А корпоративные паттерны в youtube выложите?

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

    Зачем нужны вообще публичные поля, если они нарушают принцип инкапсуляции? К примеру в Java есть класс Point для повышения производительности для работы с графикой там поля публичные, а если брать к примеру PHP (у которого поля по умолчанию публичные)?

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

    Ребят, возник вопрос, который прям не дает покоя:
    - Не противоречит ли принципе DIP паттерну Creator. По DIP надо объекты передавать другим объектам через их интерфейсы, а по Creator'у эти объекты следует создавать там, где они используются. Как разрешить это противоречие?

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

      Dip не про это, он говорит, что типу надо зависеть от абстракции, а не от реализации. это немного другое нежели, выдача инстанса по запросу. Один за архитектуру связей, второй за поведение при создании. Это проще рассмотреть на конкретном примере, но сколько встречал, то обычно это либо неправильное понимание/смешение понятий, либо незаконченная декомпозиция и как следствие нарушение coupling/cohesion

  • @maxlich9139
    @maxlich9139 5 лет назад +3

    доски вообще не видно =(

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

    25 секунда - не могу расслышать слово между "шаблонам" и "gof и grasp" - ещё какое-то название общее?

  • @ruslanabramov3047
    @ruslanabramov3047 5 лет назад

    Микрофон бы ему нацепить - вообще сказка была бы!

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  5 лет назад +1

      да, это не мы писали, а у организаторов - треш какой-то был :) Если лекция интересна - могу переснять в формате вебинара

    • @ruslanabramov3047
      @ruslanabramov3047 5 лет назад

      @@SergeyNemchinskiy да, было бы неплохо

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

    вместо посредника объясняется дипенденси инвершен, что не одно и то же

  • @vladik8947
    @vladik8947 5 лет назад +1

    Спасибо за лекцию =)

  • @NikolayVerhovcev
    @NikolayVerhovcev 5 лет назад

    Отдельное спасибо за 1С, где-то на 8ой минуте

  • @x-neimi4493
    @x-neimi4493 4 года назад

    Петличку бы Сергею для записи звука

  • @ЮрийПлохов-к2в
    @ЮрийПлохов-к2в 4 года назад

    А без if-ов код нечитабелен будет

  • @klerg321
    @klerg321 5 лет назад

    Проблема с обьектами, которые используются для сериализации. Приходит/отправляется в Jira какую json, где логически обьект 1 , задача, а api реализован так, что в задаче обьект транзакция, в которой лист транзакций, в которых статус, в которых лист статусов, а приходит обьект с одними полями, уходит с немного другими. Когда совсем жопка, конечно, пишется кастомный сериализатор, но не будешь пилить его прям на все извращенные поля, иначе сам сериализатор превратится в говнокод. Вот и приходится выбирать среднее из зол, и брать информацию через вложенные обьекты, если это меньшее из зол...

  • @БорисЮринов-ъ8ъ
    @БорисЮринов-ъ8ъ 4 года назад

    Вместо "зацепления" можно использовать "согласование", ИМХО наного более понятно получается

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

      До, но это общепринятый перевод

  • @Alex11Fox
    @Alex11Fox 5 лет назад +1

    Были же видосы про шаблоны

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  5 лет назад

      да. Но давно очень

    • @user-ug1fk8ob3q
      @user-ug1fk8ob3q 3 года назад

      @@SergeyNemchinskiy Они уже неактуальны? Какие у них есть минусы?

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

      @@user-ug1fk8ob3q плохое качество записи и они не полны

  • @mormeoi
    @mormeoi 5 лет назад

    За пользовательский ввод на тредах минус. Даже в java всё можно делать в одном потоке через epoll и аналоги (библиотека netty).

  • @AsEv-y7t
    @AsEv-y7t 5 лет назад

    57:48 TL;DR

  • @oleksiisvitiashchuk1144
    @oleksiisvitiashchuk1144 5 лет назад +1

    Шо за тотальний буллшіт? Indirection - це про інтерфейси? Рілі, блять?))
    Учіть матчасть, господа, indirection - це паттерн посередник між сервісами і не важливо чи в GoF паттернах чи в GRASPі.

  • @WillSom056
    @WillSom056 5 лет назад +1

    Плохой звук, отсвечивает экран

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  5 лет назад

      не я снимал, можете оценить разницу