Одним из аспектов программирования, который я считаю чрезвычайно полезным, является его компонуемость; возможность повторять и улучшать существующие структуры и основы для инноваций и создания новых интересных решений для рутинных и распространенных проблем. По этой причине я очень благодарен тем, кто улучшает все техническое сообщество, внося свой вклад в проекты с открытым исходным кодом, позволяя таким людям, как я, использовать свою работу и учиться на ней.
Ресурс с открытым исходным кодом, который я недавно нашел полезным, — это Axios, HTTP-клиент на основе обещаний, который упрощает выполнение запросов на выборку в Javascript. Я считаю, что написание запросов на выборку любого типа CRUD (создание, чтение, обновление, удаление) слишком долго и излишне утомительно. Вот пример POST-запроса, взятого с веб-сайта Javascript, где простой пользовательский объект публикуется в фиктивной базе данных.
Можно легко забыть написать метод, правильные заголовки для ввода или форматировать тело сообщения, что замедлит ваш прогресс и отнимет драгоценное время от размышлений о более важных аспектах вашей работы. Кроме того, необходимый код громоздкий и раздувает внешний вид и поток всего кода. К счастью, Axios предлагает более удобное и простое решение для выполнения простых запросов на выборку, не требующих дополнительных изменений заголовков, кроме стандартного типа контента. Используя Axios, вы могли бы написать приведенный выше запрос следующим образом:
Вместо 8 строк операция выполняется в две. Вот как можно записать остальные операции:
Написание операций CRUD непосредственно в виде метода Javascript делает действия по выполнению запросов на выборку компактными, прямыми и простыми для понимания. И, как упоминалось ранее, Axios — это инструмент с открытым исходным кодом, который позволяет любому использовать его, если он устанавливает и импортирует правильный пакет.
Для личного примера. Для моего последнего проекта в программе Software Engineering Bootcamp школы Flatiron перед нами стояла задача создать локально размещенный сервер с Ruby, который мог бы взаимодействовать с интерфейсным приложением React. Мой партнер, Скарлетт Эллер, и я решили создать приложение для знакомств с дерзким, но ужасным поворотом.
Ghostd — это приложение, которое имитирует опыт популярного приложения для знакомств, но в игровой форме посвящено возможности встретить свою вторую половинку в загробной жизни. Вы можете поставить лайк или не понравиться, проводя по отображаемым карточкам или нажимая на предоставленные кнопки, с возможностью сопоставления с историческими личностями, такими как Чингисхан, Билли Холидей и Клеопатра, или «призраками» из поп-культуры, такими как Candy Man или Джейсон. .
Каждое действие с профилем, пролистывание влево или вправо, сопоставление или несовпадение и т. д., требовало некоторой формы взаимодействия с локально размещенными данными, что означало множество запросов на выборку. Две вещи помогли максимально упростить получение и редактирование моих данных. 1. Ассортимент методов и конечных точек внутреннего сервера и 2. Использование Axios в качестве клиента для выполнения запросов. Я не буду вдаваться в подробности нашего проекта, но вы можете больше узнать о разработке бэкенда в блоге Скарлетт в разделе ее блог здесь!
Вот как просто было создать лайк, проверить совпадение и обновить отображение:
Когда пользователь проводит пальцем вправо по отображаемой карточке профиля, объект, содержащий идентификатор пользователя и выбранного профиля, отправляется на указанную конечную точку URL. Затем серверная часть автоматически создает подобный объект, который указывает, что пользователю понравился этот профиль, если между ними еще нет взаимодействия, то есть. В случае взаимодействия серверная часть возвращает true или false в зависимости от того, ставил ли профиль лайк пользователю ранее. Если возвращается true, то пользователь и профиль «сопоставляются», и отображается следующее.
Использование Axios позволило нам со Скарлетт написать чистый и понятный код для нашего проекта. Без написания длинных и утомительных запросов на выборку мы смогли реализовать больше функций и разработать более сложную серверную часть (что помогло сделать вышеупомянутые запросы на выборку еще проще!) Звучит как совпадение!
Я планирую использовать Axios в будущих проектах и рекомендую его всем, кто изучает основы Javascript, или тем, кто выполняет базовые запросы на выборку, не требующие дополнительных изменений в объекте конфигурации запроса.
Весь исходный код Axios доступен для просмотра в их репозитории github. Вы можете узнать больше, прочитав их веб-сайт здесь.
Если вас интересует Ghostd и его исходный код, вы можете просмотреть репозитории Github здесь: Front-End / Back-End. Я обновлю эту статью, как только приложение будет полностью развернуто для общего пользования!
Если вам понравилось читать это пошаговое руководство по Axios и то, как я реализовал этот инструмент в своем проекте, поделитесь им и подпишитесь на получение аналогичного контента в будущем.
Не стесняйтесь проверить мой профиль GitHub, если вы хотите увидеть любой другой код, который я написал.
Есть вопросы? Оставить комментарий! Если я не свяжусь с вами быстро, это потому, что я занят просмотром Ghostd 👻.