Forwarded from 👩🏻💻 Подкаст Системных Аналитиков | GetAnalyst
💫 Вопросы и ответы по REST API: собеседование на системного аналитика 💫
В новом эпизоде подкаста мы обсуждаем вопросы по REST API с собеседований на позицию системного аналитика, и разбираем ответы на них с примерами.
Эпизод рекомендуется к прослушиванию как для начинающих, так и для опытных системных аналитиков, стремящихся углубить свои знания в теме проектирования REST API и успешно проходить технические собеседования. Особенно рекомендуется, если у вас завтра техническое интервью 🙂
00:59 - О структуре выпуска и причине выбора темы.
02:25 - Что такое REST API и его отличия от RESTful.
10:10 - 6 главных принципов REST API.
15:52 - Структура запросов и ответов REST API: типы методов и отличия между ними.
23:50 - URL и URI. Структура URI запроса. Примеры.
query и path-параметры, headers, тело запроса и ответа, авторизация, коды состояний HTTP.
29:10 - Ресурс в контексте REST API. Связь объектов данных (ресурсов) REST API и БД.
31:05 - Query-параметры в запросе. Элементы пагинации в query-параметрах и body. Path-параметры.
36:28 - Что спрашивают по авторизации в API на собеседовании. Про безопасность. Заголовки запросов - Headers. Форматы сообщений в Body.
39:27 - Коды ответов HTTP, их назначения и какие знать обязательно. Вопросы с подвохами про отличия между кодами ответов HTTP в разных ситуациях.
43:40 - Отличия между POST и PUT. Идемпотентность. Получение данных через POST.
47:10 - Другие важные технические вопросы про асинхронные запросы и Webhook-и.
48:48 - Виды практических задач по REST API на собеседованиях для системных аналитиков.
54:00 - Вопросы про опыт работы с REST API. Рекомендация - используйте портфолио (личные демо-проекты).
56:48 - Заключение и рекомендации по самостоятельному освоению REST API.
Эпизод доступен в:
⏯ Apple Podcast
⏯ Яндекс.Музыка
⏯ YouTube
⏯ Telegram
⏯ Castbox
⏯ Spotify
Подписывайтесь и делитесь с коллегами! 😉
В новом эпизоде подкаста мы обсуждаем вопросы по REST API с собеседований на позицию системного аналитика, и разбираем ответы на них с примерами.
Эпизод рекомендуется к прослушиванию как для начинающих, так и для опытных системных аналитиков, стремящихся углубить свои знания в теме проектирования REST API и успешно проходить технические собеседования. Особенно рекомендуется, если у вас завтра техническое интервью 🙂
00:59 - О структуре выпуска и причине выбора темы.
02:25 - Что такое REST API и его отличия от RESTful.
10:10 - 6 главных принципов REST API.
15:52 - Структура запросов и ответов REST API: типы методов и отличия между ними.
23:50 - URL и URI. Структура URI запроса. Примеры.
query и path-параметры, headers, тело запроса и ответа, авторизация, коды состояний HTTP.
29:10 - Ресурс в контексте REST API. Связь объектов данных (ресурсов) REST API и БД.
31:05 - Query-параметры в запросе. Элементы пагинации в query-параметрах и body. Path-параметры.
36:28 - Что спрашивают по авторизации в API на собеседовании. Про безопасность. Заголовки запросов - Headers. Форматы сообщений в Body.
39:27 - Коды ответов HTTP, их назначения и какие знать обязательно. Вопросы с подвохами про отличия между кодами ответов HTTP в разных ситуациях.
43:40 - Отличия между POST и PUT. Идемпотентность. Получение данных через POST.
47:10 - Другие важные технические вопросы про асинхронные запросы и Webhook-и.
48:48 - Виды практических задач по REST API на собеседованиях для системных аналитиков.
54:00 - Вопросы про опыт работы с REST API. Рекомендация - используйте портфолио (личные демо-проекты).
56:48 - Заключение и рекомендации по самостоятельному освоению REST API.
Эпизод доступен в:
⏯ Apple Podcast
⏯ Яндекс.Музыка
⏯ YouTube
⏯ Telegram
⏯ Castbox
⏯ Spotify
Подписывайтесь и делитесь с коллегами! 😉
🔥51👍4
👍34🔥22❤13
📌 Новый проект по REST API - аренда авто через приложение #RentACar 📌
Этот месяц мы посвятим проектированию REST API методов.
По итогам голосования самый большой запрос оказался на разбор связи между REST API и БД. Но этот вопрос гораздо шире. Поэтому мы также затронем его связь с бизнес-процессами, UI/UX и оптимизацией приложений.
Проект, на котором мы будем погружаться в тему - аренда автомобилей через приложение #RentACar.
👉 О проекте 👉
✔️ Приложения и пользователи:
+ мобильные и веб-приложения для клиентов.
+ веб-приложение для сотрудников и администраторов.
✔️ Бизнес-процесс:
1. Клиент выбирает даты аренды, место получения и выдачи, и ищет варианты.
1.1. Результаты можно фильтровать по классу и марке автомобиля, по цене.
1.2. Результаты можно сортировать по цене (возрастание / убывание).
2. Клиент заказывает машину через приложение и сразу вносит оплату онлайн.
2.1. Машина становится недоступна для бронирования на эти даты.
3. Клиент забирает машину из места аренды.
3.1. Сотрудник собирает персональные данные водителей - права + паспорта. Вводит вручную и загружает сканы документов;
3.2. Сотрудник подтверждает выдачу автомобиля.
4. Клиент возвращает машину в место аренды.
4.1. Сотрудник подтверждает возврат автомобиля.
✔️ Дополнительно о бизнесе и разработке:
+ есть офисы в разных городах (места, где можно взять и вернуть машину);
+ машину можно взять в одном офисе, а вернуть в другом;
+ стоимость авто зависит от дня недели и места возврата - учитывать это при настройке цен;
+ к заказам можно продавать страховки, но пока это будет вне системы;
+ клиенты могут повреждать авто, но пока это будет учитываться вне системы.
👉 В рамках работы над REST API 👉
✅ Проектируем БД и анализируем как она влияет на методы REST API
✅ Делаем с нуля методы POST, GET, PUT, PATCH, DELETE
✅ Ставим задачи на разработчиков
✅ Смотрим, как вести документацию в Postman и Swagger
Подписаны на канал?
Значит вы участвуете в проекте и получаете ваш новый опыт 🤝
Проект объявляется открытым 🎉
#RestApiGA
Этот месяц мы посвятим проектированию REST API методов.
По итогам голосования самый большой запрос оказался на разбор связи между REST API и БД. Но этот вопрос гораздо шире. Поэтому мы также затронем его связь с бизнес-процессами, UI/UX и оптимизацией приложений.
Проект, на котором мы будем погружаться в тему - аренда автомобилей через приложение #RentACar.
👉 О проекте 👉
✔️ Приложения и пользователи:
+ мобильные и веб-приложения для клиентов.
+ веб-приложение для сотрудников и администраторов.
✔️ Бизнес-процесс:
1. Клиент выбирает даты аренды, место получения и выдачи, и ищет варианты.
1.1. Результаты можно фильтровать по классу и марке автомобиля, по цене.
1.2. Результаты можно сортировать по цене (возрастание / убывание).
2. Клиент заказывает машину через приложение и сразу вносит оплату онлайн.
2.1. Машина становится недоступна для бронирования на эти даты.
3. Клиент забирает машину из места аренды.
3.1. Сотрудник собирает персональные данные водителей - права + паспорта. Вводит вручную и загружает сканы документов;
3.2. Сотрудник подтверждает выдачу автомобиля.
4. Клиент возвращает машину в место аренды.
4.1. Сотрудник подтверждает возврат автомобиля.
✔️ Дополнительно о бизнесе и разработке:
+ есть офисы в разных городах (места, где можно взять и вернуть машину);
+ машину можно взять в одном офисе, а вернуть в другом;
+ стоимость авто зависит от дня недели и места возврата - учитывать это при настройке цен;
+ к заказам можно продавать страховки, но пока это будет вне системы;
+ клиенты могут повреждать авто, но пока это будет учитываться вне системы.
👉 В рамках работы над REST API 👉
✅ Проектируем БД и анализируем как она влияет на методы REST API
✅ Делаем с нуля методы POST, GET, PUT, PATCH, DELETE
✅ Ставим задачи на разработчиков
✅ Смотрим, как вести документацию в Postman и Swagger
Подписаны на канал?
Значит вы участвуете в проекте и получаете ваш новый опыт 🤝
Проект объявляется открытым 🎉
#RestApiGA
❤44🔥40👏15👍6
📚 REST API и HTTP - что нужно знать? 📚
И чтобы вы действительно поняли значение слов “архитектурный стиль”, когда мы в следующем посте будем подробнее разбирать определение REST API, я хочу рассказать про протокол HTTP.
🔶 Как работает HTTP?
1. Клиент отправляет запрос.
2. Сервер получает запрос.
3. Сервер обрабатывает его по запрограммированным алгоритмам и формирует ответ.
4. Сервер отправляет ответ.
5. Клиент обрабатывает ответ.
👉 Абсолютно также работает и REST API, потому что использует протокол HTTP в качестве транспорта для доставки и получения данных с сервера.
🔶 Протокол HTTP определяет правила, по которым происходит обмен данными:
▫️ Методы запроса: определяют тип действия, которое клиент хочет выполнить над ресурсом (GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD, TRACE)
▫️ Ресурсы — это данные или сущности (например, в БД), к которым можно получить доступ через URL
▫️ Статус-коды ответа: указывают на результат выполнения запроса (например, 200 OK, 404 Not Found). Полный перечень кодов HTTP тут
▫️ Формат запросов и ответов: запросы и ответы включают заголовки (headers), тело (body) и строку запроса (URL)
▫️ Кодировка данных: поддержка различных форматов данных (JSON, XML, HTML, текст) и способов сжатия (gzip)
▫️ Работа в режиме Stateless: каждый запрос обрабатывается независимо, сервер не хранит информацию о предыдущих запросах клиента
А также аутентификация, кэширование, управление сессиями и другие правила.
👉 Все перечисленные правила соответствуют принципам работы методов REST API.
👉 Структура методов HTTP и REST API полностью соответствуют.
Итого:
По сути, методы REST API являются HTTP-методами.
А понятие архитектурного принципа REST API разберем в следующих постах.
#RestApiGA
REST API — это архитектурный стиль, использующий HTTP в качестве протокола передачи данных (или просто: основанный на протоколе HTTP).
И чтобы вы действительно поняли значение слов “архитектурный стиль”, когда мы в следующем посте будем подробнее разбирать определение REST API, я хочу рассказать про протокол HTTP.
HTTP
— это протокол прикладного уровня, используемый для передачи данных между клиентом и сервером в интернете.
🔶 Как работает HTTP?
1. Клиент отправляет запрос.
2. Сервер получает запрос.
3. Сервер обрабатывает его по запрограммированным алгоритмам и формирует ответ.
4. Сервер отправляет ответ.
5. Клиент обрабатывает ответ.
👉 Абсолютно также работает и REST API, потому что использует протокол HTTP в качестве транспорта для доставки и получения данных с сервера.
🔶 Протокол HTTP определяет правила, по которым происходит обмен данными:
▫️ Методы запроса: определяют тип действия, которое клиент хочет выполнить над ресурсом (GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD, TRACE)
▫️ Ресурсы — это данные или сущности (например, в БД), к которым можно получить доступ через URL
▫️ Статус-коды ответа: указывают на результат выполнения запроса (например, 200 OK, 404 Not Found). Полный перечень кодов HTTP тут
▫️ Формат запросов и ответов: запросы и ответы включают заголовки (headers), тело (body) и строку запроса (URL)
▫️ Кодировка данных: поддержка различных форматов данных (JSON, XML, HTML, текст) и способов сжатия (gzip)
▫️ Работа в режиме Stateless: каждый запрос обрабатывается независимо, сервер не хранит информацию о предыдущих запросах клиента
А также аутентификация, кэширование, управление сессиями и другие правила.
👉 Все перечисленные правила соответствуют принципам работы методов REST API.
👉 Структура методов HTTP и REST API полностью соответствуют.
Итого:
По сути, методы REST API являются HTTP-методами.
👉 Полная версия поста в этой
статье.
А понятие архитектурного принципа REST API разберем в следующих постах.
#RestApiGA
❤26👍15💯5
📚 REST API - архитектурный стиль, но не протокол 📚
REST API — это архитектурный стиль для создания веб-сервисов, основанный на протоколе HTTP.
То, что REST API основан на протоколе HTTP, означает, что все принципы работы, структура запросов и ответов, будут также применимы и для REST API.
Архитектурный стиль REST приносит для HTTP дополнительные правила и принципы, по которым должен происходить обмен данными в Интернете 👇
Главные принципы REST:
1. Строгое разделение клиента и сервера
2. Единый интерфейс
3. Без сохранения состояния (Stateless)
4. Многоуровневая система
5. Кэширование
6. Выполнение кода по запросу
В картинках к посту просто и с примерами разобрала эти принципы. Сохраняйте и пользуйтесь 🤍
Это не самая ценная в работе информация, но перечень этих принципов и их понимание могут спрашивать на собеседованиях 📚
#RestApiGA
REST API — это архитектурный стиль для создания веб-сервисов, основанный на протоколе HTTP.
То, что REST API основан на протоколе HTTP, означает, что все принципы работы, структура запросов и ответов, будут также применимы и для REST API.
Архитектурный стиль REST приносит для HTTP дополнительные правила и принципы, по которым должен происходить обмен данными в Интернете 👇
Главные принципы REST:
1. Строгое разделение клиента и сервера
2. Единый интерфейс
3. Без сохранения состояния (Stateless)
4. Многоуровневая система
5. Кэширование
6. Выполнение кода по запросу
В картинках к посту просто и с примерами разобрала эти принципы. Сохраняйте и пользуйтесь 🤍
Это не самая ценная в работе информация, но перечень этих принципов и их понимание могут спрашивать на собеседованиях 📚
#RestApiGA
❤44👍16🔥9👏1🤔1
🤩 Структура методов REST API в одной картинке 🤩
Коллеги, публикую для вас картинку-шпаргалку, которую можно использовать при проектировании методов REST API 🙌
Эта задача актуальна для старших системных аналитиков, которые работают с Backend-командами, с мобильной разработкой, в проектах с микросервисной архитектурой или в других сложных проектах, где нужно проектировать и описывать процесс обмена данными между системами.
А чтобы вы наглядно могли сопоставить структуру на картинке с реальными REST API, предлагаю вам посмотреть примеры открытой API-документации для интеграции с крупными сервисами:
Avito Доставка
ЦИАН
#RestApiGA
Коллеги, публикую для вас картинку-шпаргалку, которую можно использовать при проектировании методов REST API 🙌
Эта задача актуальна для старших системных аналитиков, которые работают с Backend-командами, с мобильной разработкой, в проектах с микросервисной архитектурой или в других сложных проектах, где нужно проектировать и описывать процесс обмена данными между системами.
А чтобы вы наглядно могли сопоставить структуру на картинке с реальными REST API, предлагаю вам посмотреть примеры открытой API-документации для интеграции с крупными сервисами:
Avito Доставка
ЦИАН
#RestApiGA
🔥24❤9👍4