Какую IDE выбрать Android, Flutter и iOS-разработчику

/* Статья обновлена 7 апреля 2022 */

 

IDE (Integrated Development Environment) — это интегрированная, единая среда разработки, которая используется программистами для создания ПО. По-другому называется редактором.

Согласно Википедии, на сегодняшний день существует больше 50 различных IDE — универсальных или заточенных под конкретную технологию. Какие-то существуют на рынке давно и собрали свою аудиторию, а какие-то только развиваются. Поэтому перед начинающими разработчиками встает вопрос: какой редактор выбрать?

В этой статье мы разберемся, какими IDE пользуются mobile-разработчики MediaSoft, расскажем про альтернативы и поделимся полезными плагинами и расширениями, которые сделают редактор удобнее в работе. 

Другие статьи серии: «Какую IDE выбрать — backend» и «Какую IDE выбрать — frontend».

ANDROID STUDIO

Валерия, Android-разработчик

Почему именно эта IDE

Для разработки под Android я, как и все в нашей команде, использую Android Studio. Доступна для Windows, macOS и Linux. Подойдет как начинающим, так и опытным разработчикам.

Основные преимущества:

  • Поддержка разработки на нескольких языках программирования: Java, Kotlin и другие. Установив Flutter SDK, можно писать еще и на Dart;
  • Поддержка Gradle;
  • Удобный, настраиваемый редактор с подсветкой синтаксиса, умным завершением кода и другими фичами. Зная комбинации горячих клавиш, можно в несколько раз ускорить свою работу;
  • Встроенный AVD Manager с инструментами для работы с эмуляторами;
  • Android Profiler для отслеживания загрузки процессора, памяти, сети и батареи устройства;
  • Layout Inspector для анализа оптимальности верстки в приложении;
  • Android Debugger для просмотра и изменения информации о состоянии объектов и переменных во время отладки. Также показывает стек вызова методов и предоставляет возможность настраивать breakpoints;
  • VCS Tools для работы с Git прямо из студии.

Минусы

Android Studio использует очень много оперативной памяти, так что для комфортной разработки требуется мощный компьютер.

Альтернативы

Eclipse — установив плагин Android, можно писать приложения на Java и Kotlin. Или Visual Studio — плагин Flutter позволяет использовать Dart и создавать кроссплатформенные приложения.

Советы

Выучить набор горячих клавиш и просто начать пользоваться :) Все необходимое уже есть, за последнее время я установила только один плагин — Flutter. 

Гайд. Там же можно и скачать IDE

Ярослав, Android-разработчик

Почему именно эта IDE

Если вы разрабатываете на Android в 2022 году, то кроме Android Studio у вас буквально нет альтернатив. Можно вспомнить плагин для Eclipse, который перестал поддерживаться ещё в 2015, или Visual Studio и Xamarin. Но едва ли найдётся хоть один, кто скажет, что эти инструменты были лучше, чем IDE на базе JetBrains.

Обозначу, что здесь я рассматриваю особенности Android Studio в первую очередь с точки зрения нативной разработки. Но многое из этого будет справедливо и для кроссплатформенной.

Минусы

Первая и главная проблема Android Studio — её прожорливость. Она потребляет очень солидное количество ресурсов. Хотите начать разрабатывать под Android и чувствовать себя комфортно? Готовьте машину с хорошим процессором и минимум 8 ГБ оперативной памяти. И это только для учебных проектов. В больших коммерческих приложениях необходимым минимумом по ОЗУ будет уже 16 ГБ.

Не обойдётся без зависаний даже на самых мощных конфигурациях. Причём на Mac OS они будут немного чаще. Ещё можно вспомнить отсутствие отладки по WiFi через интерфейс Android Studio для версий Android 10 и старше. Впрочем, при необходимости такая проблема легко решается через терминальные команды adb, либо установку плагина.

Альтернативы

Для кроссплатформенной разработки — уже упомянутая Visual Studio с фреймворками Xamarin или Flutter.

Советы

Плагины и программы, которыми пользуюсь я:

  • Drawable Importer — плагин для добавления в проект картинок более удобным образом, чем это реализовано в самой IDE.
  • WiFi ADB Ultimate — плагин, который упрощает настройку отладки по WiFi.
  • Vysor — специализированная программа для вывода экрана вашего реального устройства на компьютер. Плотно интегрируется с Android Studio. Есть в бесплатной и платной версии, но удалённый доступ через интернет возможен только во второй.
  • Layout Inspector — встроенный инструмент в Android Studio. Нужен для отладки интерфейса. Позволяет посмотреть, как располагаются элементы на экране в данный момент при конкретных манипуляциях, и показывает иерархию элементов, включая те, отображение которых скрыто.
  • Android Profiler или Prefetto UI — инструменты для мониторинга производительности приложения.

Крайне рекомендую освоить работу с шаблонами Android Studio. Вот примеры шаблонов на базе MVP-библиотеки Moxy

Очень обстоятельный список инструментов и подсказок для Android-разработки. Есть и горячие клавиши, и ссылки на наиболее популярные инструменты. 

VISUAL STUDIO CODE

Артем, Flutter-разработчик

Почему именно эта IDE

Мой выбор пал на Visual Studio Code, или по-другому VS Code, потому что эта IDE быстрее всех адаптировалась под новые MacBook на процессоре M1. 

По сути VS Code — это текстовый редактор, поэтому он работает быстрее, чем тот же Android Studio. Важным фактором при выборе редактора для работы с Flutter была простота интерфейса. Также VS Code можно удобно настроить под себя — доступны не только самые базовые версии подсветки кода и отладки, но и широкие возможности кастомизации.

Минусы

В VS Code нет опции создания нового Flutter-проекта. По умолчанию он может только открывать готовый. Для создания нового нужно использовать командную строку. 

Альтернативы

В качестве альтернатив рассматривал Android Studio и IntelliJ IDEA. Они выигрывают у VS Code по расширенному функционала, но проигрывают по быстродействию. VS Code нужно в разы меньше оперативной памяти. 

Советы

В самом VS Code есть сервис Extensions, где можно найти множество полезных для работы плагинов. Помимо тех, которые необходимы для работы Dart и Flutter, могу посоветовать:

  • Russian Language Pack для установки русского языка и YAML для работы с yaml-файлом, который будет полезен при установке новых библиотек и прописывании путей к файлам;
  • Git Lens для работы с Git и просмотром автора кода прямо по строкам;
  • Error Lens который используется для подсвечивания ошибок и предупреждений прямо в коде. 
  • Расширение BLoC, если вы используете в проекте архитектуру BLoC. 
  • После установки расширения Flutter будет доступен набор инструментов DevTools, который используется для верстки, работы с API и памятью приложения.

Инструкция по установке и настройке VS Code

X CODE

Елизавета, iOS-разработчик

Почему именно эта IDE

Xcode — IDE от Apple для разработчиков Mac и iOS. Это единственный официально поддерживаемый инструмент для создания и публикации приложений в App Store.

Есть сторонние решения, однако эти IDE не справляются с тестированием и отладкой, а для создания действительно функционального приложения без них не обойтись.

Плюсы Xcode:

  • Имеет встроенный инструмент отладки. Вы можете увидеть, сколько ЦП использует приложение и сколько ресурсов оно задействует на вашем устройстве по сравнению с другими запущенными приложениями. Навигатор тестов выполнит любые дополнительные тесты, которые вы хотите реализовать;
  • Вы можете просматривать несколько файлов одновременно в редакторе Xcode. Работа сохраняется автоматически, поэтому не нужно беспокоиться о потере каких-либо изменений;
  • Xcode имеет средство проверки исходного кода и функцию автозаполнения, что значительно упростит написание кода новичкам и ускорит процесс разработки опытным разработчикам;
  • Процесс добавления приложения в App Store довольно прост. Через Xcode загрузите свое приложение в App Store Connect, протестируйте его, а затем отправьте на рассмотрение и утверждение;
  • Регулярно обновляется, а сами обновления часто привязаны к выходу новой ОС. Это помогает заранее отследить все критичные изменения, которые могут возникнуть в приложении с выходом новой версии системы.

Минусы

К существенным недостаткам можно отнести неудобство мержа pbxproj. Для решения проблемы приходится прибегать к использованию Xcodegen.

Xcode проигрывает другим IDE по части рефакторинга, автодополнения, кодогенерации, но предоставляет широкие возможности для отладки и профайлинга: Debug View Hierarchy, Memory Graph.

В ряде моментов для Xcode характерны внезапные и нетипичные ошибки в работе, которые, как правило, устраняются перезапуском среды. 

Альтернативы

AppCode — платная IDE от JetBrains. Но совсем обойтись без Xcode не получиться, так как вылить готовое приложение в App Store можно только через него.

Советы

  • Используйте Xcodegen для удобства мержа pbxproj;
  • Приоритетнее делать верстку кодом, особенно если над функционалом трудятся несколько разработчиков, иначе будет много неприятностей при мерже файлов .storyboard;
  • Новичкам рекомендую пользоваться официальной документацией.

Вадим, iOS-разработчик

Почему именно эта IDE

В начале моей карьеры доступными IDE были бесплатный Xcode и AppCode по подписке. Само собой, студенту не хочется переплачивать, поэтому я остановился на первом варианте. К тому же Xcode выпускает сама Apple, что дает больше уверенности в продукте.

Среди плюсов выделю наличие встроенного менеджера зависимостей — Swift Package Manager, который в последнее время стал еще комфортнее для работы. Сторонние библиотеки теперь можно загружать прямо из Xcode. Раньше же приходилось сначала устанавливать диспетчеры зависимостей, например, CocoaPods, описывать Podfile и только затем из терминала запускать загрузку библиотек. 

Минусы

Баги на новых версиях продукта. Например, на 12 версии Xcode приложение просто крашилось после перехода по quick help.

Ошибки при билдинге. Например, связанные с атрибутом IBDesignable или билдингом при использовании большого количества библиотек на Objective-C.

Необходим большой объем памяти при обновлении на новую версию — 40-50 ГБ на накопителе.

Swift Package Manager при запуске проекта проверяет все загруженные сторонние библиотеки, что занимает какое-то время. Иногда вовсе их теряет и грузит заново.

Альтернативы

AppCode от JetBrains.

Советы

Рекомендую:

  • Использовать hotkeys;
  • Добавить Tabbar или navigation можно через Editor -> Embed in;
  • View можно добавить внутрь stack/view/scroll view через embed view in (кнопка рядом с констрейнатами);
  • Использовать для дебага Xсode Instruments.

Если вы такие же любители простоты, то могу посоветовать следующие плагины:

  • Swiftlint. Помогает форматировать ваш код и подсвечивает возможные ошибки;
  • Backlight — выделение редактируемой строки;
  • DerivedData-Exterminator — помогает чистить Derived Data через меню Xсode.

Обучающий материал про IDE

В ИТОГЕ

Если вы:

  • Разработчик под Android, рекомендуем использовать Android Studio. В качестве альтернативы можете рассмотреть Eclipse или Visual Studio Code. 
  • Разработчик на Flutter, обратите внимание на Android Studio или Visual Studio Code. 
  • Разработчик под iOS, вам подойдет редактор Xcode. Как альтернатива, AppCode.

Но выбор всегда остается за вами — поймите цели и задачи вашего проекта и с умом используйте советы наших разработчиков при выборе редактора.

Хорошей работы и учебы и до встречи!