РИТ++ 2017, Frontend Сonf
Зал Дели + Калькутта, 6 июня, 10:00
Тезисы:
http://frontendconf.ru/2017/abstracts/2468.html
Разработка API/Framework/встраиваемого контента сильно отличается от разработки обычного frontend-приложения. На примере нашего API Яндекс.Карт я расскажу, чем именно.
+ Какие задачи обычно решают разработчики API?
+ С каким проблемами сталкиваются?
+ Какие есть ограничения в разработке?
+ Чем еще должен заниматься разработчик API, кроме непосредственно разработки?
Одна социальная сеть предоставляла в своем API такой метод. Ну тот все просто и логично. Вызываешь getFriends – получаешь список друзей.
Код, который использует этот метод выглядет бы примерно так. Но оказалось, что не все так просто.
Если у тебя нет друзей список возвращает Null. Ну тоже логично. Наверное.
И примерно такой код должен писать каждый разработчик, который будет использовать этот метод. Не надо так.
Я думаю, что абсолютно все в зале когда-то сталкивались с очень неприятной ситуаций. Вы вдруг узнаете (обычно ночью), что в вашем проекте вдруг что-то перестало работать. И обычно все сразу. Вы разбираетесь и оказывается, что какая-нибудь внешняя библиотека вдруг стала работать как-то по другому. Не так как вы ожидали ранее.
Естественно после одного такого случая ваше доверия к компоненту, который предоставляет такой интерфейс заметно снизится.
Но из-за чего такое произошло? Разработчики API не соблюли обратную совместимость.
Но бывает, что новую мажорную версию нельзя выпустить. Не хватает ресурсов, недавно выпустили предыдущую версию, слишком большие изменения. Причин может быть много.Тогда можно сделать «особый» режим работы. Хороший пример строгий пример работы JS. В этом режиме многие привычные вещи из JS начинает работать не
Разработчикам, чтобы понимать свое API нужно его использовать. Не абстрактно, а вполне по назначению.Попытайтесь придумать какой-то проект, который бы можно было реализовать на основе вашего API и попытайтесь его реализовать. Пишите не основе копипаста своих наработок, а как бы делал внешних пользователь. Откройте свою же документацию и пройдитесь по первым пунктам.Я вас уверяю вы найдете несколько багов, сразу обнаружите какой из методов работает нелогично.
Значительно интересней смотреть живые примеры! Для этих целей мы сделали песочницу – интерактивные примеры с «живым» кодом.
Куда вынесли самые часто востребованные кейсы.
Но и здесь нужно себя перебороть и не делать избыточные примеры. Конкретно этот пример не очень простой, но у него специфика такая. На самом деле он показывает только добавление определенных типов кластеров на карту.Хочется показать как можно больше сразу, но это может обернуться против вас же.
К примеру, однажды мы обнаружили достаточно большое кол-во пользователей с такими картами …
К примеру, однажды мы обнаружили достаточно большое кол-во пользователей с такими картами …
Значительно интересней смотреть живые примеры! Для этих целей мы сделали песочницу – интерактивные примеры с «живым» кодом.
Куда вынесли самые часто востребованные кейсы.
Но и здесь нужно себя перебороть и не делать избыточные примеры. Конкретно этот пример не очень простой, но у него специфика такая. На самом деле он показывает только добавление определенных типов кластеров на карту.Хочется показать как можно больше сразу, но это может обернуться против вас же.
Этот сервис позволяет буквально нарисовать карту. Конструктор решает очень популярный и простой кейс разработчика. Быстро создать карту с несколькими объектами на карте.
Этот сервис позволяет буквально нарисовать карту. Конструктор решает очень популярный и простой кейс разработчика. Быстро создать карту с несколькими объектами на карте.
Единственный элемент программирования – это вставка полученного кода в свой html.