Скажи НЕТ власти бэкендеров | Пишем swagger сами | Лучший процесс работы с REST API

  Рет қаралды 6,516

Евгений Паромов | Front-end

Евгений Паромов | Front-end

Күн бұрын

Пікірлер: 38
@fuad2069
@fuad2069 3 ай бұрын
Да ты вообще красавчик, и темы у тебя серьезные
@ЕвгенийКарышев-я1я
@ЕвгенийКарышев-я1я 14 күн бұрын
Спасибо дружище... умеешь рассказывать!
@BlexJS
@BlexJS 3 ай бұрын
Если у тебя фронт и бек на тайпскрипте, то контракты можно вынести в нпм пакет, (При локальном подключении - могут быть сложности если клиент и сервер в разных репозиториях, придется добавлять гит саб модуль с контрактами и следить за их обновлением. При удалённом подключении - простота в использование в разных репозиториях, но нужно следить за версией пакета). Или использовать менеджеры моно репозиториев
@osad4enko
@osad4enko 3 ай бұрын
изменяя контракт нужно вводить новую версию ендпоинта, тогда не нужно бегать как ошпаненный на фронт и править контракты
@АлуаИванова-у5э
@АлуаИванова-у5э Ай бұрын
спасибо за видео, даже чайнику понятно
@СветланаАндреевна-х8р
@СветланаАндреевна-х8р 3 ай бұрын
Реально видео у вас серьезные спасибо!
@mercury_2379
@mercury_2379 3 ай бұрын
классно, спасибо. комментарий для продвижения
@АлуаИванова-у5э
@АлуаИванова-у5э Ай бұрын
33:09 если что можно выделить нужный текст и нажать shift+tab
@АлексейСтупников-д4у
@АлексейСтупников-д4у Ай бұрын
А есть ли генераторы, основанные на спецификации OpenAPI, но позволяющие генерировать на основании кода фронтенда спецификацию? Раньше использовал ApiDoc, но сейчас он уже устарел
@beforeidissapear7473
@beforeidissapear7473 3 ай бұрын
Скажи НЕТ власти фронтендеров | Пишем swagger сами
@YakubAx
@YakubAx 3 ай бұрын
Как всегда годнота подъехала
@agag5083
@agag5083 3 ай бұрын
Ну ты монстр . в хорошем смысле. Ничего пока не понял но было очень интересно
@АлексейСтупников-д4у
@АлексейСтупников-д4у Ай бұрын
Благодарю за видео, но шрифт очень маленький
@ЕвгенийКондобаров-ю7г
@ЕвгенийКондобаров-ю7г 3 ай бұрын
чёткий контент)
@АлексейСтупников-д4у
@АлексейСтупников-д4у Ай бұрын
Ещё минус такого подхода (написание схемы ручками) - это то, что схема будет постоянно отставать от актуального состояния кода и нужно будет каждый раз лезть в схему и обновлять её в ручную. то ли дело автогенерация схемы на основе исходного кода, но для фронтенда я не нашел современных инструментов для этого, а устаревшие (apiDoc) не хочется использовать
@paromovevg
@paromovevg Ай бұрын
Тут и смысл, что мы сначала пишем схему, а фронтовый код генерируем на её основе. Схема источник истины и она не может устареть
@BOCbMOU
@BOCbMOU 3 ай бұрын
Выглядит очень хорошо, но у меня один вопрос: а где хранить единый ямл? Если монорепа, то понятно, а если нет? Можно на сервере хранить, конечно, но тогда это никак не спасает от изменений апишки со стороны бека. Да и как отслеживать изменение ямла?
@paromovevg
@paromovevg 3 ай бұрын
Если не монорепа то в отдельном репозитории под yaml файл) Внесение изменений через MR которые должны апрувнуть и бэки и фронты Скачивать его можно через curl перед генерацией новой версии
@BOCbMOU
@BOCbMOU 3 ай бұрын
@@paromovevg допустим, но тут есть проблема: ломающие изменения. В таком случае перед тем, как беку делать работу, надо будет замерджить все необходимые изменения в ямл, но это означает, что ямл будет неактуальный. Хорошо, мы можем оставить ямл в другой ветке, но как тогда автоматически подтягивать изменения? Не то, чтобы это нерешаемый вопрос, но под всё это дейтсво надо скрипты писать, чтобы они ещё и у фронтов, и у беков без проблем запускались, ещё и с учётом того, что для доступа к репе с ямлом нужны креденшалы. Идея так-то хорошая, но минусы у неё заметные.
@ВсеволодРусинский
@ВсеволодРусинский 3 ай бұрын
Топчик
@СергейМеньщиков-р2ш
@СергейМеньщиков-р2ш 3 ай бұрын
Получается целый гайд по сваггеру?)
@Артем-о4щ7р
@Артем-о4щ7р 3 ай бұрын
а что за анализатор зависимостей на 1:03:00
@РустемГадиев-и4к
@РустемГадиев-и4к 3 ай бұрын
34:38 tab + shift чуваак)))
@izzy7541
@izzy7541 3 ай бұрын
А разве не так? openapi - спецификация, у неё есть своя версия swagger - сервис для генерации доки на основе openapi спеки (таких сервисов кстати не мало)
@АлександрСкиталец-ц7р
@АлександрСкиталец-ц7р 3 ай бұрын
Swagger не защищает клиент от проблем. Я перешёл на io-ts бекендеры не очень рады.
@undertale-15075O
@undertale-15075O 3 ай бұрын
Не только swagger. В go вообще почти нет инструментов для него. Graphql gRPC
@SergeyPryada
@SergeyPryada 3 ай бұрын
а вы знаете почему на го нет инструментов? недавно смотрел и сильно этому удивлялся
@araz911
@araz911 3 ай бұрын
скажи нет боссу на стройке
@tusman4ik
@tusman4ik 2 ай бұрын
Сукес.. Итем... Инфаркт.. 😂
@unicoxr5tj417
@unicoxr5tj417 3 ай бұрын
бэк-девы одобряют?))
@biLLie_wiLLie
@biLLie_wiLLie 3 ай бұрын
Что такое контракты?
@jgkdmdevienjjgg8866
@jgkdmdevienjjgg8866 3 ай бұрын
Термин из архитектуры приложений/систем. Абстракция от какой-то системы (реализации). Частный случай - интерфейс в языках программирования. Либо публичная часть чего-либо - сигнатура функции например. А также всякие вещи которые имеются в виду - например знание о том что если дернем вот этот метод то система себя поведет так-то.
@araz911
@araz911 3 ай бұрын
это когда иванушку забирает военкомат служить на сво
@whosane9923
@whosane9923 Ай бұрын
Сразу видно, что ты не знаешь, что такое контракт ...
@АртурЮсупов-о3в
@АртурЮсупов-о3в 2 ай бұрын
Добрый день! Коллеги прошу помочь вас Хочу чтобы при вызове данного компонента можно было бы передать style1 и style2 только с одинаковыми полями. Никак не могу придумать как это сделать, ChatGPT несет чушь. interface OpenableContainerProps extends HTMLProps { children?: ReactNode; isOpened: boolean; duration: number; style1: T; style2: T; } export type AnimationStyleType = { top?: SizeType; bottom?: SizeType; left?: SizeType; right?: SizeType; ... }; Должно чтобы при вызове такого варианта подсвечивалась ошибка, т.к style 1 и 2 имеют разные поля
@m4es7r0
@m4es7r0 2 ай бұрын
а зачем?
Правила быстрого обучения, которые ТЕБЕ НЕ ПОНРАВЯТСЯ
21:28
Евгений Паромов | Front-end
Рет қаралды 9 М.
Каха и лужа  #непосредственнокаха
00:15
Trick-or-Treating in a Rush. Part 2
00:37
Daniel LaBelle
Рет қаралды 45 МЛН
ТЫ В ДЕТСТВЕ КОГДА ВЫПАЛ ЗУБ😂#shorts
00:59
BATEK_OFFICIAL
Рет қаралды 3,7 МЛН
The Singing Challenge #joker #Harriet Quinn
00:35
佐助与鸣人
Рет қаралды 36 МЛН
[REDACTED] 2024 | Cross Chain Future is NEAR
15:02
NEAR Protocol
Рет қаралды 8
JWT авторизация. Основы JWT - механизма.
6:45
Хочу вАйти
Рет қаралды 16 М.
Tanstack query (react-query) полный курс 2024
4:16:20
Евгений Паромов | Front-end
Рет қаралды 11 М.
Как Zod лечит РОДОВУЮ травму Typescript
24:20
Евгений Паромов | Front-end
Рет қаралды 7 М.
ШБР 2023 - Как проектировать HTTP API
2:49:16
Young&&Yandex: бэкенд-разработка
Рет қаралды 30 М.
Каха и лужа  #непосредственнокаха
00:15