Организованное программирование

#17 Проектирование REST API / OpenAPI (TypeSpec) / Кеширование / Денис Семененко


Listen Later

В этом выпуске мы с Денисом Семененко, Principal Software Engineer в DocGo, обсуждаем разработку REST API, спецификации, преимущества и недостатки инструментов типа TypeBox и TypeSpec, и как понимание всех этих аспектов влияет на процесс проектирования.

✅ Подписывайтесь на канал «Организованное программирование» в Telegram
Список подкаст-платформ (Apple Podcast, Google Podcast, Spotify, Яндекс.Музыка и другие)
Смотреть в ВК Видео
Смотреть в Youtube


Мы затронем исторический контекст REST, его ограничения и концепцию HATEOAS для построения гибких интерфейсов. Также рассмотрим, как REST и RPC решают схожие задачи и чем отличаются JSON API и GraphQL, поговорим про OpenAPI и Async API, стандарты обработки ошибок, перемещение логики на промежуточные серверы и разделение ответственности между клиентом и сервером. В общем в этом эпизоде очень много о программировании и архитектуре.


Полезные ссылки:

  • Твиттер Дениса: https://twitter.com/denblackstache
  • Тред про REST API: https://x.com/mokevnin/status/1824512290793853328
  • Hypermedia Factors. Факторы для сравнения разных message formats между собой
    http://amundsen.com/hypermedia/hfactor/
  • AsyncAPI https://www.asyncapi.com/
  • OpenAPI Tools https://openapi.tools/
  • Книга Сергея Константинова https://twirl.github.io/The-API-Book/API.en.html

00:00 Обсуждение REST и API
08:55 Инструменты и спецификации для API
12:44 Инновации в программировании с Closure
20:09 TypeSpec: Будущее описания API
24:47 Сравнение подходов к описанию API
29:54 Сравнение OpenAPI и альтернативных решений
34:36 Книга Сергея Константинова и мифология REST
39:11 Понимание hateOS и его значение
42:07 Гипермедиа и его роль в вебе
44:31 Динамическое построение интерфейсов
46:54 Проблемы с реализацией API
48:54 Преимущества REST по сравнению с RPC
51:18 Перемещение логики на промежуточный сервер
54:33 Стандарты обработки ошибок в API
59:45 Сравнение JSON API и GraphQL
01:04:31 Проблемы упаковки данных в JSON
01:07:41 Форматы сообщений и обратная совместимость
01:10:42 Семантический веб и его влияние на API
01:12:56 Гибкое выборочное представление контента
01:14:53 Разнообразие форматов API и их применение
01:17:05 Стандарты API и их эволюция
01:20:40 Выбор технологий для построения API
01:23:52 Frontend и API: как строить взаимодействие
01:25:49 ГрафQL: хайп и реальность
01:29:11 Проблемы и ограничения GraphQL
01:29:42 Оптимизация REST API и его преимущества
01:30:12 Знакомство с Ransack и его концепцией
01:31:14 Фильтрация данных и ее сложности
01:32:53 Преимущества Ransack в фильтрации
01:35:34 Использование Doreos и Grape для API
01:37:14 Валидация данных и ее уровни
01:39:35 Проектирование микросервисов и Domain Driven Design

★ Support this podcast ★
...more
View all episodesView all episodes
Download on the App Store

Организованное программированиеBy Кирилл Мокевнин

  • 5
  • 5
  • 5
  • 5
  • 5

5

3 ratings


More shows like Организованное программирование

View all
Завтракаст (Zavtracast) by Завтракаст (Zavtracast)

Завтракаст (Zavtracast)

120 Listeners

BeardyCast: гаджеты и медиакультура by 🧢 Kepka Production

BeardyCast: гаджеты и медиакультура

122 Listeners

Podlodka Podcast by Егор Толстой, Стас Цыганов, Екатерина Петрова и Евгений Кателла

Podlodka Podcast

45 Listeners

Радио Медуза by Медуза / Meduza

Радио Медуза

95 Listeners

kuji podcast by kuji podcast

kuji podcast

132 Listeners

Запуск завтра by libo/libo

Запуск завтра

86 Listeners

Закат империи by libo/libo

Закат империи

210 Listeners

ГОВОРИТ ВАФИН by Jura.Vafin

ГОВОРИТ ВАФИН

28 Listeners

Экономика на слух by РЭШ

Экономика на слух

12 Listeners

Подкаст Глеба Соломина by Глеб Соломин

Подкаст Глеба Соломина

5 Listeners

На пенсию в 35 лет! by Babaykin

На пенсию в 35 лет!

12 Listeners

Базаров порезал палец by Борис Прокудин, Филипп Жевлаков, Анастасия Медведева

Базаров порезал палец

18 Listeners

Почему мы еще живы by libo/libo

Почему мы еще живы

114 Listeners

Прием by Т—Ж

Прием

6 Listeners

Горящий бензовоз by Вадим Елистратов, Иван Талачев

Горящий бензовоз

36 Listeners