Архитектура и принципы REST. Что значит RESTful? Что такое SOAP? Какие проблемы решает GraphQL?

Sdílet
Vložit
  • čas přidán 30. 05. 2024
  • Привет, это видео - одна из частей моих лекций в рамках проекта "ITMO.Mentors". Рассказываю про архитектуру REST, принципы REST, о том, что было до появления REST (SOAP) и о том, что должно быть после него (GraphQL).
    Полезные ссылки:
    Презентация и аннотация - t.me/davidobryakov/1001
    Телеграм-канал - t.me/davidobryakov
    Написать мне - t.me/kantegory
    Ставить звёздочки на гитхабе - github.com/kantegory
    VDS со скидкой в 10% - vdsina.ru/?partner=uxkhnzk56y
    Таймкоды:
    00:00 Вступление
    00:05 Клиент-серверное взаимодействие (http)
    01:17 Что такое REST?
    01:40 Принципы REST
    10:35 HTTP-методы
    12:01 Статус-коды HTTP
    15:01 Что было до REST? (SOAP)
    21:14 Что было дальше? (GraphQL)
    31:57 Заключение (+анонсы)

Komentáře • 56

  • @therealsova3268
    @therealsova3268 Před rokem +19

    Учился с этим челиком в школе, красава

  • @lilidemini
    @lilidemini Před 2 lety +9

    Очень понятно и структурировано, огромное спасибо!

  • @viktors01
    @viktors01 Před rokem +7

    Лучшее видео, что я нашел по этой теме, все понятно и лаконично. Спасибо)👍

  • @ojas8181
    @ojas8181 Před 3 lety

    отличный канал! автору спасибо!)

  • @abylaym4157
    @abylaym4157 Před 3 lety +7

    Все классно понятно! Благодарю за объяснение

  • @dimakof
    @dimakof Před měsícem

    Очень понятно , огромное спасибо!

  • @oleksaveres7536
    @oleksaveres7536 Před 10 měsíci

    Супер! Благодарю!

  • @eldarbochkarev5474
    @eldarbochkarev5474 Před 2 lety +2

    Большое спасибо за видео! Помогло понять суть

  • @7nolikov
    @7nolikov Před rokem +1

    очень неточный пересказ документации

  • @ruslanundefined2242
    @ruslanundefined2242 Před rokem +5

    Очень информативное видео! Спасибо автору, здоровья и больше подписчиков!

  • @varossimonyan
    @varossimonyan Před 2 lety +3

    Очень классное видео, спасибо!)

  • @dimav1640
    @dimav1640 Před 2 lety +2

    Очень классный ролик, спасибо!

  • @armanmkrtchyan9182
    @armanmkrtchyan9182 Před 2 lety +2

    Отличное видео, все на понятном языке, спасибо.

  • @guitarhub7860
    @guitarhub7860 Před 11 měsíci

    КРАСАВЧИК ^_^😊

  • @_vist
    @_vist Před rokem +1

    Спасибо, очень информативно!

  • @macintosh156
    @macintosh156 Před 2 lety

    Отличное видео, спасибо огромное!

  • @SergeyGuns
    @SergeyGuns Před rokem

    JSON это XML совместимый формат, можно парсить туда и обратно, нужны только договоренности как назвать вложенные объекты например "children". Мне не приходит в голову кейс, где у XML больше возможностей. Может вы знаете такой? Строкой покрываются любые не стандартные типы данных.

  • @standwithukrain
    @standwithukrain Před 3 lety +1

    доступно і цікаво, дякую! лайк + підписка!

  • @aleksey2793
    @aleksey2793 Před 2 lety +3

    Не совсем понял, почему вы называете REST архитектурой. Это больше похоже на стиль взаимодействия компонентов, в крайнем случае это можно назвать узкоспециализированным архитектурным паттерном. Мы же не называем, например, очередь сообщений архитектурой.

  • @cryptoalewka
    @cryptoalewka Před rokem

    Коммент в поддержку канала! Удачи!

  • @Freeline95
    @Freeline95 Před 2 lety

    Спасибо.
    Правильно ли я понимаю, что приложение не может обойтись только GraphQL endpoint'ами? Например, когда мы производим перевод денег в банковском приложении, то по нажатию на кнопку "Отправить" в REST приложении уходит запрос /transaction/send и происходит куча каких-то операций. Как в таком случае должен выглядеть запрос на GraphQL? Будет создан кастомный тип transaction и будет отправляться POST запрос на якобы создание сущности transaction?
    Ну то есть сложилось впечатление, что GraphQL отлично подходит для CRUD-овских endpoint'ов. А если что-то посложнее, то как?)

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

      Да, одного GraphQL недостаточно

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

    respect bro, it was very cool, thanks

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

    22:40 в чем проблема сделать АПИ №3 которое будет возвращать все нужные данные? не вижу сдесь проблемы........

  • @lytican
    @lytican Před 2 lety +2

    Держи лайк. Спасибо за видео! Хотя в конце 5 минут извинений можно было бы заменить на объяснение откуда взялся класс Book. Он подсвечивается как класс, но на скриншоты декларация не вошла. Неполнота картины - это главная проблема у начинающих.

    • @ihmeita
      @ihmeita Před 2 lety

      Поддерживаю!

  • @privetabdul
    @privetabdul Před 3 lety +1

    супер!

  • @antonstezhkin5991
    @antonstezhkin5991 Před 2 lety

    А как у GraphQl с кэшированием? Там же вроде запросы хитровывернутые. Как кешировать ответы?

    • @sergeykapshuchenko5695
      @sergeykapshuchenko5695 Před rokem

      Нет кеша с коробки, нужно использовать дополнительный софт

  • @leonidboyko980
    @leonidboyko980 Před 3 lety

    Спасибо)

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

    спасибо автору

  • @oleksandrmelnyk4571
    @oleksandrmelnyk4571 Před 3 lety +1

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

    • @dobryakov
      @dobryakov  Před 3 lety +2

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

  • @ivanstrelka3448
    @ivanstrelka3448 Před 2 lety

    Огонь

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

    Чем put отличается от patch?

    • @inmosh
      @inmosh Před 2 lety +2

      put заменяет ВСЕ поля объекта, а patch может изменить только одно поле. Put по сути заменяет всё кроме айдишника получается. По опыту, чаще используется patch, потому что всё менять тебе не нужно так часто.

    • @antonstezhkin5991
      @antonstezhkin5991 Před 2 lety

      @@inmosh большое спасибо.

  • @abobunus
    @abobunus Před 4 měsíci

    что у тебя пищит?

  • @OlegBedriy
    @OlegBedriy Před 2 lety +3

    "XML в далёком прошлом"
    Разработчики из банковского сектора, где xml только ввели как золотой стандарт, хватаются за сердце.

    • @dobryakov
      @dobryakov  Před 2 lety +2

      Банковский сектор - это отдельный мир, но указание ценное. Спасибо! Я и сам заметил, что множество платёжных систем до сих пор через XML общаются. Но там, к счастью, не SOAP и это уже хорошо :)

  • @leninzhiv6180
    @leninzhiv6180 Před rokem

    про GraphQL автор просто прочитал шапку доки, ничего по сути не сказал

  • @ikarton
    @ikarton Před rokem +1

    1. Супер
    2. Ты ничего не должен и не обязан
    3. Тратить время на учёбу вместо развития себя, как специалиста... - проблема века

  • @walcermelodia
    @walcermelodia Před rokem +1

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

    • @Deletedeletedelete
      @Deletedeletedelete Před 8 měsíci

      Чел он об этом и говорит в видео. Держи в руках свою токсичность 25:04

  • @konstantinchvilyov9602

    Спасибо! Если перейдёте с рунглиш на русский будет отлично.

    • @snap-313
      @snap-313 Před 2 lety +1

      Это так не работает

    • @konstantinchvilyov9602
      @konstantinchvilyov9602 Před 2 lety

      @@snap-313 А Вы пробовали?

    • @dobryakov
      @dobryakov  Před 2 lety

      Проф. деформация на фоне рабочих чатиков) Пытаюсь что-то с этим сделать, но пока не очень хорошо выходит

    • @konstantinchvilyov9602
      @konstantinchvilyov9602 Před 2 lety

      @@dobryakov Признание существования проблемы - это, я считаю, первый большой шаг на пути к её решению. И уже успех. Потому что большинство и его не сделало.
      Дорогу осилит идущий. От души желаю окончательного успеха!

  • @ZVA_NOOK
    @ZVA_NOOK Před rokem

    Здорово, спасибо!
    REST гут, но, SOAP в 100500 раз удобнее для межсерверного взаимодействия.
    Ну, и судя потому, что не упомянул такую штуку как WSDL, видимо SOAP сервисы и клиенты всё же не писал.
    Парсинг и формирование XML-сообщений вообще за рамками продуктивного кода, от слова совсем :)
    Тупо работаешь с удалённым сервисом как с объектом в своем коде, что может быть проще или быстрее с точки зрения разработчика?
    Уж точно не REST )

  • @ko22012
    @ko22012 Před rokem +1

    ролик можно было сократить в 2 раза, если не лить воду.

  • @Techpowers
    @Techpowers Před 11 měsíci

    Что за бред несёт этот человек. Граф кл нагружает базу данных?

    • @Deletedeletedelete
      @Deletedeletedelete Před 8 měsíci

      Да потому что запросы ебические получается с использованием графкуэль

  • @user-nc1pn4ii2n
    @user-nc1pn4ii2n Před rokem +1

    Ходил с ним в детский сад,крутой чел

  • @zsnjA
    @zsnjA Před 11 měsíci

    Graphql не понятно братик