Обновить
35.22

Проектирование API *

О создании API

Сначала показывать
Порог рейтинга
Уровень сложности

Rust: параметризуем мутабельность через маркеры и ассоциированные типы

Время на прочтение7 мин
Охват и читатели5.3K

КПДВ: borrow checker не даёт стрелять в ногу при работе с FFI


Borrow-checker — отличный секюрити, который очень эффективен, если мы находимся в безопасном Rust. Его поведение отлично описано в RustBook, и, по крайней мере, я почти никогда не сталкиваюсь с придирками, которым я бы не был благодарен.


Но вот когда нужно написать семантически-безопасный API над функциями и данными, которые вообще не безопасны — у меня всё стало валиться из рук. Последние пару дней я потратил на то, чтобы придумать элегантный способ параметризации мутабельности. Над тем, чтобы на уровне API сохранялась семантика — зависимость изменяемости полей друг от друга. Даже если на самом деле они живут сами по себе.


На английском, с примерами — на GitHub pages.


Исходник тестов — на GitHub.

Читать дальше →

Улучшенные API навигации SwiftUI

Время на прочтение7 мин
Охват и читатели1K

Сегодня мы выпускаем самое большое обновление для нашей библиотеки SwiftUINavigation с момента её первого выпуска год назад. В нём обеспечена поддержка новых API-интерфейсов iOS 16, исправлены ошибки некоторых навигационных инструментов Apple, улучшена поддержка оповещений и диалоговых окон подтверждения, а также улучшена документация.

Присоединяйтесь к нам для быстрого обзора новых функций и обязательно обновитесь до версии 0.4.0, чтобы получить доступ ко всему этому и многому другому:

Читать далее

Обзор новых API навигации в SwiftUI

Время на прочтение7 мин
Охват и читатели3.4K

SwiftUI имеет совершенно новые API-интерфейсы навигации в iOS 16 и macOS 13. Они позволяют нам определять навигацию на основе стека и навигацию по нескольким столбцам.

Читать далее

Получаем статистику Telegram-канала при помощи api и python или свой tgstat с регистрацией и смс

Время на прочтение3 мин
Охват и читатели29K

В некоторых группах в Telegram доступна интересная и познавательная статистика, которую можно посмотреть не только со смартфона, но и нехитрых действий с api. А если каналов много, то вообще очень полезная вещь.

Читать далее

Зачем банкам подключаться к Открытым API?

Время на прочтение7 мин
Охват и читатели7.6K

Концепция открытого банкинга предполагает, что игроки финансового сектора — банки, финтехи, страховые организации и МФО, а также технологические компании — все получают равным доступ к пользовательским данным. «Общение» в среде открытого банкинга происходит посредством универсального языка, которым являются открытые API.

Взаимодействие через Открытые API развивает конкуренцию и создает равные возможности для всех участников цифрового финансового рынка по созданию новых продуктов и сервисов. Кроме того, открытый банкинг позволяет клиентам управлять своими данными и получать персонифицированные услуги.

Меня зовут Тимур, я тружусь в отделе информационной безопасности и Открытых API компании eKassir, разрабатывающей ПО для банков. Мы работаем с инструментарием открытого банкинга, и, основываясь на этом опыте, в кратком цикле статей я бы хотел рассказать: что такое среда Открытых API? зачем банкам и финтехам к ней подключаться? как участники рынка проходят техническую проверку на сертификационном стенде Открытых API?

Читать далее

Web3.0 на Python, часть 2: advanced

Время на прочтение13 мин
Охват и читатели25K

Привет, хабр! В первой части мы рассмотрели базовые операции на web3py. Здесь же речь в основном пойдет про улучшение производительности и различные "фишки". Скорее всего, они не будут полезны тем, кто делает какой-то pet-project или проект на хакатоне. А полезны они будут тем, кто делает реальный боевой проект и кому важна производительность.

Нырнуть в advanced web3

Пишем бота на JavaScript для Minecraft (1.8-1.18) / Часть 10-14

Время на прочтение2 мин
Охват и читатели5.4K

Здравствуйте, уважаемые читатели Хабра! Продолжаем писать бота для Minecraft(1.8 - 1.18) с помощью библиотеки mineflayer. С прошлыми уроками можете ознакомиться ТУТ.

Читать далее

Непредсказуемые инвестиции с Python

Время на прочтение13 мин
Охват и читатели9.1K

О чем эта статья: В основном, о том, как создать рандомайзер биржевых активов используя данные Московской и Питерской бирж на Python.

Кому не важна реализация то вот готовый код с минимальными инструкциями по запуску. Ну или можно воспользоваться телеграмм ботом для всего-того же самого, но в удобном формате (если он не работает, то скорее всего я перестал платить за админку ?). А в самом низу есть небольшое подведение итогов.

Читать далее

Тестирование gRPC

Время на прочтение3 мин
Охват и читатели35K

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

Все эти потребности удовлетворяют большинство современных технологий таких как REST, SOAP и GraphQL. Наиболее популярная это REST. Однако в последнее время набирает обороты технология gRPC, который обладает высокой производительностью, типизированными данными и отличным инструментарием.

Сегодня мы рассмотрим на конкретном примере как тестировать сервис работающий по технологии gRPC.

Читать далее

API для Инвестиций, или Как написать торгового робота

Время на прочтение6 мин
Охват и читатели40K

На связи команда Тинькофф Инвестиций. В этой статье разберем, как клиенты с минимальными навыками программирования создают торговых роботов. Базой будет API брокера Тинькофф Инвестиций — Tinkoff Invest API. Добро пожаловать на борт!

Читать далее

Слышали про телеграм-бот для управления Tesla? Мы поговорили с его разработчиком-самоучкой из Чечни

Время на прочтение3 мин
Охват и читатели7.9K

В сентябре российские СМИ и соцсети облетела новость о том, как разработчик из Чечни Рамзан Шахбиев создал телеграм-бота для управления Tesla. Через него можно управлять климат-контролем, медиасистемой и зарядкой, обновлять ПО, открывать багажник, сигналить, моргать фарами, проверять уровень заряда, запас хода и местоположение машины. Разработка хайпанула и вызвала спрос других владельцев электромобиля Маска — Рамзан удивился шумихе и запустил бота для всех. Под катом — наше интервью с программистом-самоучкой о деталях бота и других его проектах. 

Читать далее

Пишем обёртку для API Токийской фондовой биржи на Golang

Время на прочтение11 мин
Охват и читатели5.6K

Целевым REST API будет jquants-api, описанный в предыдущей статье.

Я решил реализовать обёртку на Golang, что оказалось чрезвычайно быстро и удобно. В итоге я выполнил эту задачу за один вечер, а получившуюся Golang-обёртку с базовыми функциями загрузил на GitHub.

В этой статье я вкратце расскажу о процессе написания API и моих шагах по реализации проекта.
Читать дальше →

REST API в микросервисной архитектуре

Время на прочтение9 мин
Охват и читатели25K
image

В этом посте расскажу о том, какой вред может нанести межсервисная коммуникация по HTTP в микросервисной архитектуре и предложу альтернативный способ совместного использования данных в распределенной системе.
Читать дальше →

Ближайшие события

API Токийской фондовой биржи Jquants

Время на прочтение6 мин
Охват и читатели2.8K

Недавно вышедшая бета-версия jquants-api позволяет получать массивы суточных финансовых данных от более чем четырёх тысяч компаний, представленных на Токийской фондовой бирже.

На данный момент через API доступны следующие массивы данных:


В будущем добавятся новые массивы данных.

Хотя текущие исторические данные доступны только начиная с 2017 года, поощряется отправка пользователями отзывов об API через обычные каналы github (и т. п.), чтобы разработчики могли подробнее понять особенности его использования.

В настоящий момент API бесплатен для личного пользования, для доступа к нему достаточно потратить несколько секунд на регистрацию и создание аккаунта на официальном веб-сайте с указанием адреса электронной почты, пароля и основных сведений.
Читать дальше →

Как упростить жизнь за 312 коротких шагов: проектируем GraphQL API в микросервисной архитектуре

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели15K

Звук – HiFi-сервис с большой командой инженеров. Мы используем передовые технологии и современный стек, и экспериментируем, чтобы решать сложные, нестандартные задачи. Одна из технологий  – GraphQL.

Эта статья изначально создавалась как гайд по работе с GraphQL для инженеров Звука (системные аналитики, разработчики, QA). При этом статья может быть полезна всем, кто никогда не работал с GraphQL, но очень хочет понять, зачем он может быть нужен, и как поможет решить задачу вашего бизнеса.

Читать далее

API Тестирование без Postman

Время на прочтение3 мин
Охват и читатели30K

Современные приложения и сервисы в большинстве своем состоят из фронтона и бэкенда. Когда мы говорим о тестировании бэкенда, в основном речь идет о тестировании с помощью API запросов и ответов. А для этого желательно иметь под рукой необходимые инструменты. Полагаю что одним из лучших и самых популярных инструментов тестирования API является Postman. А есть ли альтернатива?

Сегодня мы рассмотрим одну из лучших альтернатив этому популярному инструменту. Особенно она понравится тем, кто работает с Postman постоянно.

Читать далее

Старый код в новой обёртке — как наша команда избавлялась от legacy

Время на прочтение7 мин
Охват и читатели4K

В этой статье я — Станислав Решетнев, Teamlead команды разработки Link Building в компании Sape — хочу рассказать об опыте нашей компании по избавлению от legacy. Многие компании сталкиваются с проблемой legacy-монолита, когда технический долг накапливается на протяжении долгих лет и разрыв по технологическому стеку становится всё больше похожим на пропасть. Нам удалось найти решение, позволившее провести полное обновление, и заодно выполнить другие бизнес-задачи.

Читать далее

Создание Telegram бота на PHP #4: отправка файлов и изображений в Telegram

Время на прочтение5 мин
Охват и читатели47K

В новом уроке мы с вами научимся отправлять файлы и изображения в Telegram сообщениях. Мы с вами изучим 2 новых метода: sendPhoto() и sendDocument().

Для отправки файлов в Телеграм, нам необходимо воспользоваться функцией curl_file_create(), которая формирует специальный объект файла, для того чтобы его можно было передавать через HTTP запросы.

Читать далее

Создание Telegram бота на PHP #3: примеры отправки сообщений с кнопками в Telegram

Время на прочтение5 мин
Охват и читатели83K

В новом уроке мы с вами рассмотрим отправку базовый запросов в Telegram. Я покажу вам как отправлять простые текстовые сообщения в Telegram, как отправлять кнопки и дополнительные клавиатуры.

Всю информацию по параметрам запросов мы будем брать из официальной документации Telegram.

Все ответы от Telegram приходят в виде JSON строки. Для удобного отображения массива ответа в браузере, советую вам установить специальное расширение для браузера, которое называется JSON Viewer

Читать далее

Создание Telegram бота на PHP #2: создание первого бота для Telegram

Время на прочтение3 мин
Охват и читатели34K

Во втором уроке я вам покажу как создать бота для Telegram и мы с вами попробуем отправить сообщения в чат в Telegram.

Читать далее

Вклад авторов