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

Sdílet
Vložit
  • čas přidán 21. 08. 2024
  • Презентация: drive.google.c...

Komentáře • 64

  • @yuriyfedoryshyn5206
    @yuriyfedoryshyn5206 Před 5 lety +44

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

  • @user-friendhors
    @user-friendhors Před 9 měsíci

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

  • @farenoy6848
    @farenoy6848 Před 3 lety +12

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

  • @WarbeastMr
    @WarbeastMr Před 4 lety +5

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

  • @user-ur4ev7vl6c
    @user-ur4ev7vl6c Před 2 lety +1

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

  • @katerina6259
    @katerina6259 Před 2 lety +1

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

  • @ardarchic
    @ardarchic Před rokem +1

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

  • @IT_psychopath
    @IT_psychopath Před rokem

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

  • @ansarozden5767
    @ansarozden5767 Před 4 lety +5

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

  • @user-is4ji8mr7j
    @user-is4ji8mr7j Před 5 lety +2

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

  • @user-hr8jd2kz5n
    @user-hr8jd2kz5n Před rokem

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

  • @Petro_Bandera
    @Petro_Bandera Před 2 lety

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

  • @ms_shifu7047
    @ms_shifu7047 Před 5 lety +6

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

    • @user-nq1oh6fm2u
      @user-nq1oh6fm2u Před 5 lety +2

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

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  Před 5 lety +2

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

    • @ms_shifu7047
      @ms_shifu7047 Před 5 lety +3

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

    • @ms_shifu7047
      @ms_shifu7047 Před 5 lety

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

  • @arsen_ua
    @arsen_ua Před 3 lety +4

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

  • @anonanonov7394
    @anonanonov7394 Před 4 lety +3

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

  • @user-mt9bq2xe1z
    @user-mt9bq2xe1z Před 3 lety +1

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

  • @Lammax2012
    @Lammax2012 Před 5 lety +2

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

  • @eugenstakhursky9604
    @eugenstakhursky9604 Před 5 lety +2

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

  • @ivanivanovq2964
    @ivanivanovq2964 Před 5 lety +7

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

  • @RedkeiGost
    @RedkeiGost Před 2 lety

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

  • @vladik8947
    @vladik8947 Před 5 lety +1

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

  • @inbuckswetrust7357
    @inbuckswetrust7357 Před rokem

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

  • @maxlich9139
    @maxlich9139 Před 5 lety +3

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

  • @orda13
    @orda13 Před 5 lety +1

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

    • @Sam66019
      @Sam66019 Před 5 lety

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

    • @Sam66019
      @Sam66019 Před 5 lety

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

    • @orda13
      @orda13 Před 5 lety

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

    • @orda13
      @orda13 Před 5 lety

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

    • @klerg321
      @klerg321 Před 5 lety +1

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

  • @user-is4ji8mr7j
    @user-is4ji8mr7j Před 5 lety

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

  • @klerg321
    @klerg321 Před 5 lety

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

  • @vasilyheyerdahl3565
    @vasilyheyerdahl3565 Před 4 lety

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

  • @user-wd4mo4vl3h
    @user-wd4mo4vl3h Před 5 lety

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

  • @x-neimi4493
    @x-neimi4493 Před 4 lety

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

  • @youknowme9732
    @youknowme9732 Před 2 lety

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

  • @pu6istiy1
    @pu6istiy1 Před 4 lety

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

  • @user-hj6oh4bw3n
    @user-hj6oh4bw3n Před 2 lety

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

    • @dvdrelin
      @dvdrelin Před rokem

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

  • @mormeoi
    @mormeoi Před 4 lety

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

  • @user-tv9gk8df1u
    @user-tv9gk8df1u Před 4 lety

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

  • @ruslanabramov3047
    @ruslanabramov3047 Před 4 lety

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

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  Před 4 lety +1

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

    • @ruslanabramov3047
      @ruslanabramov3047 Před 4 lety

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

  • @Alex11Fox
    @Alex11Fox Před 5 lety +1

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

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  Před 5 lety

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

    • @user-ug1fk8ob3q
      @user-ug1fk8ob3q Před 3 lety

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

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  Před 3 lety

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

  • @user-mt9bq2xe1z
    @user-mt9bq2xe1z Před 3 lety

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

  • @user-hd9ku3kb7u
    @user-hd9ku3kb7u Před 5 lety

    57:48 TL;DR

  • @oleksiisvitiashchuk1144
    @oleksiisvitiashchuk1144 Před 5 lety +1

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

  • @WillSom056
    @WillSom056 Před 5 lety +1

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

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  Před 5 lety

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