В арсенале разработчика несколько языков программирования, но еще больше различных фреймворков и вспомогательных утилит, которые применяются наряду с основной средой разработки, характерной для каждого языка.
Я работаю с платформой .NET и помимо незаменимой IDE Visual Studio использую другие полезные инструменты и сервисы: SourceTree, Robo 3T, Elasticsearch-head, Asana, Figma. В этом материале расскажу подробно, какие задачи они решают и как помогают упростить процесс создания программного обеспечения.
Git заслуженно считается одной из самых функциональных, гибких и надежных систем управления версиями файлов. Как и в большинстве прикладных утилит, созданных изначально для Linux, работа в ней ведется только через интерфейс командной строки с бесчисленным набором параметров.
Оригиналом в виде командной строки пользуются опытные программисты: для этого требуется изучить большой объем документации и уметь писать собственные скрипты для автоматизации операций. Этот инструмент сложен для восприятия, особенно новичкам, поэтому лучше выбрать удобный клиент с графическим интерфейсом. Он проще для понимания, позволяет автоматизировать типичные операции и наглядно видеть структуру репозитория, а также помогает быстрее освоиться в принципах коллективной работы с кодовой базой разрабатываемого программного обеспечения.
SourceTree — отличный графический клиент для Git, который решает практически любые задачи: управление репозиторием, создание веток, решение конфликтов и просмотр истории изменений без необходимости обращаться к консольной версии Git.
Все больше проектов и веб-сайтов используют документоориентированные системы управления базами данных. Одна из наиболее популярных — MongoDB. Однако не все находят легким и интуитивным ее родной клиент для работы с данными Compass.
Я выбираю альтернативный клиент Robo 3T с менее перегруженным интерфейсом. Он быстро запускается, прост и отзывчив.
Программа ориентирована скорее на программиста, нежели администратора баз данных, и позволяет оперативно просматривать содержимое какого-либо хранилища или очереди, написать несложный поисковый запрос или отредактировать документ. Достаточно выбрать нужную коллекцию в дереве сервера и при необходимости дописать в запросе поле для фильтрации выборки. Выдача отобразится в одном из трех представлений: древовидная, табличная или в виде исходных JSON-документов.
Внести изменения просто: открываем окно для ввода запроса на обновление, вписываем запрос и новый JSON-документ, выполняем.
Elasticsearch — удобная поисковая система и хранилище для больших объемов данных. Единственный минус — в ней нет родного графического клиента для работы с данными или управления самим кластером.
Проект Elasticsearch-head легким и удобным способом решает эти задачи. Приложение написано на Node и поддерживает запуск через локальный сервер, Docker-контейнер или как расширение для браузера Chrome. Последний вариант очень удобен, вообще не требует установки. Заходите в свой аккаунт в браузере на любом компьютере — и уже через несколько секунд можно начать работать с данными в Elasticsearch.
Интерфейс приложения представляет собой веб-страницу с вкладками для решения типичных задач с данными или настройкой самого сервера Elasticsearch:
Отдельно хочется выделить построитель структурированных запросов, в котором очень удобно составлять запросы к индексу с помощью конструктора фильтров. В нем буквально несколькими кликами мышки можно создать запрос по набору условий и получить выборку, а не писать руками полноразмерный запрос в JSON-формате.
Удобная система планирования и постановки задач необходима для правильной организации командной работы. Мы используем веб-приложение Asana, которое при поддержке нативного мобильного приложения прекрасно справляется с ведением проектов и стартапов малого и среднего размера.
Аналогичных инструментов много, все они работают по схожим принципам. Главный отличительный признак Asana — это прежде всего удобство и интуитивно понятный и приятный интерфейс. В инструменте гибкие настройки проектов и уведомлений, широкие возможности по оформлению задач и подзадач, есть чаты, вложения файлов и многочисленные представления задач в виде таблиц, календарей и досок, сгруппированных по статусам выполнения.
В нем удобно планировать спринты как менеджерам, так и исполнителям, контролировать задачи, перебрасывать их между исполнителями, тестировщиками и менеджерами. Вся история изменений содержимого и статусов наглядно сохраняется и отслеживается.
У портала есть API и многочисленные интеграции с другими сервисами типа Google Диска, Dropbox и Slack.
Современные подходы разработки интерфейсов требуют все более гибкого и технологичного инструментария, и привычные всем инструменты компании Adobe быстро теряют свои позиции. На острие прогресса в подобных задачах сегодня выступает сервис Figma.
Эта платформа сделала популярным иной подход к проектированию интерфейсов: нет четкой границы между графической формой дизайна и верстки. Вы сразу создаете интерфейс из векторных компонентов со свойствами стиля в формате CSS или контролов платформ iOS и Android. Можете создавать библиотеку собственных элементов, переиспользовать их в других проектах и строить полноценную дизайн-систему.
Не менее важные преимущества — возможность совместно и одновременно работать над макетом и облачный подход к хранению материалов. Так разработчик может в любой момент открыть актуальную версию макета, обсудить ее с заказчиком, передать ссылку и показать интерфейсы сразу во всех версиях от десктопа до мобильной без установки какого-либо дополнительного ПО.