Сегодня мы рады объявить о полном выпуске нашей библиотеки-помощника нового поколения для Java. Готовьтесь к новому уровню продуктивности.
Java — это вторая библиотека-помощник нового поколения, которую мы выпускаем после анонса новой библиотеки для PHP в прошлом месяце. Мы полностью переработали её с нуля, основываясь на отзывах ваших и других Java-разработчиков.
Чтобы узнать больше о нашем инновационном подходе к созданию более согласованных библиотек-помощников, ускорению их развития и улучшению за счёт общей основы для разных языков, ознакомьтесь с нашим блог-постом, в котором были представлены библиотеки-помощники Twilio нового поколения.
Библиотека Twilio для Java претерпела значительные изменения по сравнению с предыдущей версией, чтобы сделать новую библиотеку проще и интуитивно понятнее в использовании.
Новая библиотека:
— Упрощает базовые операции, такие как инициализация объектов и импорт.
— Повышает эффективность работы с сетью благодаря внедрению Actions.
— Добавляет встроенную поддержку постраничной загрузки, которая была одной из самых востребованных функций.
— Использует систему типов для отображения доступных параметров при работе с ресурсом.
Библиотека совместима с Java версии 7 и выше. Рассмотрим несколько примеров.
**Основы**
**Действия (Actions)**
Выполнение действий было абстрагировано в пять отдельных типов: Fetcher, Creator, Updater, Deleter и Reader.
— Fetcher: Получает экземпляр ресурса
— Creator: Создаёт новый экземпляр ресурса
— Updater: Изменяет экземпляр ресурса
— Deleter: Удаляет экземпляр ресурса
— Reader: Получает список ресурсов
Мы предоставляем только те действия, которые можно выполнить над ресурсом, и всё, что компилируется, считается «допустимым» действием с точки зрения API. У каждого типа есть соответствующий метод для выполнения HTTP-запроса: fetch, create, update, delete и read. Это позволяет повысить эффективность работы с сетью и делает очевидным, когда библиотека выполняет HTTP-запросы.
**Постраничная загрузка (Paging)**
При итерации по Iterable библиотека автоматически загружает следующую страницу по мере необходимости. Для дополнительной настройки можно использовать методы setPageSize или setLimit в действии Reader, чтобы задать размер каждой загружаемой страницы или максимальное количество возвращаемых результатов.
**Шаблоны построения (Builders)**
Новая библиотека использует шаблон Builder. Это делает очевидным, что единственное поле, которое можно изменить в существующем сообщении, — это поле Body. С другой стороны, у Creator есть такие методы:
Вот пример, показывающий, как можно создать экземпляр Creator, задать нужные параметры и затем вызвать метод Create:
Лучше всего начать с нового руководства по началу работы, которое охватывает установку и отправку первого сообщения. Краткое руководство содержит примеры кода для нескольких сценариев использования, а наша документация Javadoc предоставляет отличную справочную информацию.
Ещё одним полезным ресурсом является Руководство по миграции, особенно если вы знакомы с предыдущим поколением библиотек. В нём описаны некоторые новые функции и подчёркнуты различия.
Новые библиотеки выпускаются в двух версиях. Основная версия (mainline) содержит наши продукты, прошедшие общедоступный релиз, и является наиболее стабильной. Версия «edge» включает новые функции, находящиеся на стадии Developer Preview или Beta. Более подробно о нашей стратегии версионирования можно прочитать здесь.
В дальнейшем новые функции будут добавляться только в новые библиотеки (Java 7.x). Старые библиотеки (Java 6.x) будут официально поддерживаться до 15 января 2017 года. После этой даты Twilio перестанет предоставлять исправления ошибок, а служба поддержки может попросить вас обновиться перед началом отладки.
Мы будем рады вашим отзывам о других кандидатах на релиз. Они уже доступны на GitHub, и мы ждём ваших issue-заявок и pull request.
Следующим языком, для которого мы выпустим библиотеку, станет C#. Оставайтесь с нами!