Редактор кода здорово упрощает жизнь программисту, такой инструмент позволяет писать, редактировать и отлаживать код. Редакторов достаточно много, и подавляющее большинство позволяет автоматически расставлять отступы, подсвечивать синтаксис, запускать, компилировать и выполнять отладку кода. В этой подборке — проверенные инструменты, которые могут пригодиться многим. Опытные программисты уже давно выбрали редактор себе по вкусу, так что эта статья — для начинающих специалистов.
Visual Studio Code (VS Code)
Один из лучших редакторов, он лёгкий и быстрый. Пользуются им тысячи и тысячи разработчиков. В нём есть поддержка большого количества языков программирования. Кроме того, базовую функциональность можно дополнить при помощи плагинов. Кстати, о них мы писали вот в этой статье.
Ещё одно достоинство редактора — беспроблемная интеграция с системами контроля версий, конечно, включая Git. Поддерживаются почти все известные языки, а если какой-то не включён в базовую поддержку, для него, скорее всего, уже написан плагин.
Среди минусов — отсутствие интерпретаторов и компиляторов плюс не особо удобная IDE.
Notepad++
Это очень быстрый и функциональный текстовый редактор, который прекрасно подходит для редактирования кода. В нём, кстати, есть продвинутый текстовый поиск, который позволяет искать нужный фрагмент текста/кода сразу в нескольких исходниках.
Есть подсветка синтаксиса для большинства языков программирования. Интерфейс простой и понятный, возможностей много. А если каких-то нет, их совершенно точно можно добавить благодаря плагинам.
Что касается минусов, то они тоже есть. Так, отсутствует компилятор и встроенный файловый менеджер. Несмотря на это, у редактора есть большое количество поклонников.
Кстати, 9 сентября вышел Notepad++ v8.5.7 с патчами против четырёх уязвимостей, одна из которых позволяла удалённо запускать сторонний код.
PyCharm Community Edition
Полноценный IDE для Python. У него весьма простой и понятный интерфейс, который не вызовет затруднений у начинающего разработчика. Эта версия даёт возможность изучать Python и писать код для небольших проектов.
К сожалению, это узкопрофильный инструмент, соответственно, у него нет поддержки JavaScript, CSS и других веб-технологий. Ещё один недостаток — отсутствие интеграции с базами данных.
Но если всё это нужно, тогда потребуется уже профессиональное платное издание PyCharm. В целом, редактор можно посоветовать для начинающих разработчиков. А когда понадобится больше функций, можно уже перейти на профессиональную версию.
Eclipse
Очень мощная и гибкая платформа для разработки. Достоинств множество, включая интеграцию с большим количеством языков программирования, например Java, C и C++, PHP, Perl, Python, Cobol и другие. Часто Eclipse используют Java-разработчики.
Среди возможностей инструмента — буквально пошаговая сборка кода, весьма удобные рабочие области и отличные темы.
Минусы: сложный интерфейс, в котором с первого раза вряд ли удастся разобраться. Но зато когда разработчик адаптируется, положительные моменты сразу становятся видны, а инструмент перекочёвывает в список must have.
Brackets
А этот редактор — весьма простой, с понятным интуитивным интерфейсом. Среди положительных моментов стоит выделить интеграцию с веб-технологиями (HTML, CSS, JavaScript) и встроенный просмотрщик для визуализации изменений в CSS без перезагрузки страницы.
Несмотря на любовь к нему большого количества разработчиков, два года назад Adobe, компания, которая и поддерживала редактор, объявила о прекращении поддержки. Зато она предоставила исходные файлы на GitHub, так что любой желающий может использовать редактор и сейчас.
Стоит отметить, что этот инструмент узкоспециализированный, он ориентирован в первую очередь на веб-разработку. Он мультиплатформенный, использовать можно как в среде Windows, так и в macOS, Linux.
BlueJ
Это интегрированная среда разработки, рекомендованная Java-разработчикам, которые только вступили на путь программирования. Интерфейс очень простой, что можно видеть на скриншоте. Есть всё необходимое, включая инструменты для создания и отладки Java-программ. Кроме того, предусмотрена визуализация объектов и классов.
Единственный недостаток инструмента — он предназначен в первую очередь для обучения, так что профессиональным его сложно назвать. Но поскольку сама подборка — для начинающих, мы добавили BlueJ.
Emacs
Программируемый текстовый редактор для разработчиков. Для расширения Emacs используется диалект языка Lisp — Emacs Lisp. Строго говоря, Emacs нельзя назвать просто текстовым редактором.
Небольшая часть GNU Emacs реализована на Си, она отвечает за ввод/вывод, базовое взаимодействие с операционной системой и т. п. Все остальные функции реализованы на Emacs Lips. Благодаря такой архитектуре инструмент можно расширять, кастомизировать и подстраивать под себя. Он гибче в этом отношении, чем другие редакторы.
Правда, оперативно освоить этот инструмент вряд ли получится. Это сложное ПО для серьёзной работы. Над ним работали десятки людей, оптимизируя и дополняя функциональность. По словам тех, кто давно работает в среде Emacs, «туристом» в среде этого инструмента быть не получится. Если уж выбрали его, то придётся осваивать досконально. Это одновременно и достоинство, и недостаток Emacs, поскольку концепция «сел и поехал» не про него.
Xcode
Инструмент для разработчиков под iOS и macOS, созданный командой корпорации Apple. Соответственно, он работает с языками программирования Swift и Objective-C. В нём есть все нужные инструменты для создания и отладки мобильных приложений.
Vim
Инструмент для профессионалов, которому исполнилось полвека. Главное его достоинство (и одновременно недостаток) — быстрая работа с текстом при помощи клавиатуры. Он потребляет очень мало ресурсов и быстро запускается.
Из-за концепции работы при помощи клавиатуры у начинающих разработчиков могут возникнуть сложности. Не зря на просторах интернета часто встречается ответ на вопрос «Как выйти из Vim», который стал практически мемом.
Vim встроен в большинство Unix-подобных систем и поддерживает почти все языки.
Вот и вся подборка. Все существующие редакторы поместить в материал не получится, да и сама подборка, как и все они, — субъективна. Если у вас есть инструмент, который вы можете порекомендовать, расскажите о нём в комментариях.