От автора: релиз новых IDE сумел стать трендом в мире программирования. Каждая из них имеет свои особенности: позитивные и не очень. Но факт в том, что некоторые IDE для веб-разработки подходят хорошо, а некоторые – не очень. Здесь множество факторов, каждый из них мы детально рассмотрим. Тем более, что облачные решения тоже имеют свои конкурентные преимущества. Необходимо выяснить, почему при высокой функциональности и широком модельном ряде сред разработки, существуют адепты текстовых редакторов для кода.
Время установить среду разработки: для чего нужна IDE
Для начала разберемся с понятиями. Начинающих разработчиков может сбить тот факт, что аббревиатуру IDE имеет еще одна информационная технология – интерфейс подключения жесткого диска и оптического привода (Integrated drive electronics). К средствам для веб-разработки она имеет весьма косвенное отношение – является составляющим элементом компьютера. Так что, пусть заголовки, вроде «raid или ide что лучше», не сбивают вас с толку: это сравнение режимов подключения дисков. Но, если вас интересуют средства программирования не только для веба, стоит углубляться в устройство ПК.
Тема нашего обзора именно IDE – интегрированная среда, которая может выполнять функции для web-разработки. Большинство из них проектировались с целью создания программного обеспечения для персональных компьютеров и переносных девайсов. Но время диктует свои условия и вчерашние инструменты оптимизации поиска малвара, сегодня работают на благо веб-индустрии. Примерно то же самое произошло с самими разработчиками.
Интегрированная среда внешне очень напоминает текстовый редактор для кода: участки кода подсвечиваются, система указывает на ошибки благодаря предзагруженной базе с синтаксисом языков. Но IDE для веб-программирования гораздо более функциональны, ведь позволяют проводить весь цикл работ над программой от начала до конца. Современная IDE содержит средства для компиляции или интерпретации, автоматизации сборки, дебаггинга кода и прочие. Наиболее продвинутые сборки оснащены различными инструментами относительно объектно-ориентированного программирования, которое набирает популярности и в вебе.
Одним из ключевых отличий IDE от текстовых редакторов называют возможность видеть результат своей работы. К примеру, вы разрабатываете визуальную часть приложения, а на соседней панели сразу видите, как преображаются объекты готового продукта. Благодаря такому функционалу можно значительно ускорить разработку. Но правда в том, что это не отличительный признак IDE. Множество текстовых редакторов оснащены подобным образом.
IDE, как правило, пытаются начинить как можно большим спектром функций. Это не всегда приводит к оптимизации: некоторые операции лучше выполнять на стороне. Именно потому возник альтернативный способ разработки, который предусматривает работу с совокупностью средств: редактор, отладчик и прочие должны подключаться отдельно. И он иногда оправдывает себя – эту тему мы затронем несколько ниже.
Почему не редактор кода?
Некоторые пользователи, встретившись лицом к лицу с массивной и сложной в освоении средой разработки, склоняются к мнению, что намного лучше создавать приложения при помощи текстового редактора. И правда, редакторы кода являются отличным средством для веб-разработки. В отличии от IDE они обладают минималистичным интерфейсом, легкостью в настройке и прочими преимуществами. Также, современные текстовые редакторы еще и имеют ряд функций, характерных для среды веб-программирования. Так что вопрос о том, переходить/не переходить на IDE, открыт для разработчиков.
Но, согласитесь, будь редакторы совершенным орудием для создания хитов веба, среда для web-разработки не существовала бы как явление. Среди очевидных недостатков, которые можно привести касательно текстовых редакторов кода:
цена. Никто бы не говорил о таких очевидных вещах, как стоимость текстового редактора, если бы вокруг не было столько бесплатных сред для веб-программирования. Самые топовые из редакторов, которые можно назвать настоящими легендами веб-разработки, стоят до 100$. Например, Sublime Text требует от вас оплатить подписку (70$) каждый раз перед выполнением значимого действия. Однако, это уведомление можно бесконечно игнорировать и продолжать работать с ним, как и с лучшими бесплатными IDE;
поддержка и обновляемость. Большинство редакторов были созданы во времена, когда веб-разработка нуждалась в среде с минимальными техническими требованиями. Потому, с приходом компьютеров нового поколения, компании осознали отсутствие конкурентного преимущества. Их обновление прекратилось, хотя эволюция веба не прекращалась. Когда текстовый редактор не поддерживает новые спецификации JavaScript, невольно хочется установить современную среду для веб-программирования;
доустановленные плагины. Функциональность текстового редактора нередко пытаются расширить до среды для web-разработки. Причем, происходит это не средствами производителя, а сторонними плагинами, которые разрабатываются сообществом пользователей редактора. Их качество оставляет желать лучшего, а те, которые созданы компаниями, не могут удовлетворить потребностей разработчика;
сложность. Несмотря на то, что некоторые IDE отличаются невероятной сложностью изучения, есть и редакторы, которые превзошли их в данном направлении. Например, Vim покажется сложным даже продвинутому разработчику, который ранее не сталкивался с ним. Мы вернемся еще к этому редактору;
сложности при работе с объемными файлами. Именно благодаря IDE мы смогли увидеть большинство программных решений. Операции с архитектурой приложений покажутся сложными при работе в текстовом редакторе: лишь хаос в папках и никакой структуры.
И это не все, что заставляет современного веб-разработчика обращаться к IDE. Интересным фактом является и то, что некоторых приучают к IDE со школьной скамьи. Компания Microsoft бесплатно распространяет среду разработки Visual Studio для IT-школ. В итоге, выпускники не умеют решать задачи другими средствами. Они вынуждены приобретать подписку, чтобы продолжить программирование на профессиональном уровне.
Отбор по пунктам
Большинство ресурсов в интернете анализируют IDE весьма субъективно. Одним среда для web-разработки может покажется интуитивной, другим – нет. Некоторым приходится по душе средство, которое обладает плагином для визуального программирования. Но все это мало похоже на то, чего ждут пользователи: разумных обзоров, с учетом всех преимуществ и недостатков. Мы пойдем по правильному пути и не дадим личным предпочтениям определить результаты исследования.
На каждую среду для веб-программирования мы будем накладывать воображаемую матрицу, состоящую из таких пунктов:
кроссплатформенность. Уже ни один серьезный продукт не составляется в одиночку. Потому важно, чтобы среда разработки могла быть установлена на различные девайсы с разными операционными системами (нет Vim, мы не о тебе );
цена. Чтобы полюбить среду для web-разработки, ее нужно испытать. Плохо, когда первые шаги в IDE нужно делать за деньги. Еще хуже, когда все наработки могут быть утеряны в один день: день оплаты подписки, который вы пропустили. Именно потому бесплатные IDE – лучшие;
поддержка. Если среда для веб-программирования не получает регулярных обновлений, ее трудно назвать современной. Потому, такой критерий выбора, как саппорт, является одним из ключевых. Поддержка старого Python прекратится уже через год – постарайтесь обновить IDE до того времени.
совместимость с веб-разработкой. Главная цель нашего обзора – найти среду, которая будет хороша именно для веб-разработки, а не для любого другого направления. Хотя, универсальность и возможность применения сторонних технологий – всегда плюс: никогда не знаешь, какая из них послужит для потребностей веба.
Из этих четырех элементов будет состоять призма, сквозь которую мы посмотрим на каждое предложенное решение. Только так можно добиться объективности.
Уютные, настольные
Здесь будут представлены те, которые заслужили внимание не только благодаря тем пунктам, которые мы предложили выше, но и характеристике, которая является одной из решающих в веб-разработке – популярности. Именно она делает среду веб-программирования героем нашего обзора.
NetBeans
Сектор приз на барабане, если вы ищете средство для веба. Она не только полностью бесплатная, но и поддерживает основные инструменты разработки веб-приложений. поддерживает основу бэкенда всего мира – PHP, и умеет анализировать этот язык. На лету обрабатывает все спецификации HTML, CSS и JavaScript. Angular и Node тоже в комплекте. Последние обновления выходят регулярно.
NetBeans красиво и понятно подсвечивает код, позволяя оценить его корректность. Не говоря уже о том, что программа умеет определять, какая строчка делает код некорректным. Самостоятельно делает отступы и интервалы, не хуже дорогостоящей Visual Studio. Является полностью кроссплатформенным приложением с постоянным расширением поддерживаемых «осей».
Eclipse
Одно из самых популярных решений в арсенале веб-разработчика. Как и NetBeans – полностью бесплатна. Считается одной из самых быстрых и интуитивно понятных сред разработки для веб-приложений. Последнее обновление на Eclipse было выпущено в июне 2018 года. Уже несколько версий подряд Эклипс выходит и в полностью русифицированной версии.
IDE поддерживает создание не только веб-приложений, но и мобильного программного обеспечения. Это значительно расширяет возможность программиста: большинство площадок теперь имеют нативное приложение. Среди осей, на которых может работать Eclipse значится Android – разработка и тестирование происходит на одной платформе. Zend Studio – одно из приложений Eclipse. Позволяет создавать веб-приложения на основе языка PHP.
Visual Studio
У этой IDE можно назвать один существенный недостаток – цена. Все остальное находится на высоком уровне. Кроме того, что программа регулярно обновляется, у нее есть целый набор инструментов исключительно для веб-разработки. Ну, а если вы хотите отвлечься на любой другой вид программирования, VS не имеет ограничений. Здесь можно создать все: от полномасштабной компьютерной игры до калькулятора на веб-странице. И все это в рамках одного приложения. Большие компании почти всегда обеспечивают своих сотрудников именно этим программным обеспечением.
Кроме цены, негативным моментом можно назвать узкий ряд операционных систем, с которыми может работать Visual Studio: пока это только Windows и Mac. Как только Microsoft решат выйти на более широкий рынок, мало кто сможет составить конкуренцию этой IDE. Однако, с этим шагом они не спешат, считая что уже заняли свою нишу.
Хорошие новости есть и для тех, кто хочет попробовать легендарную IDE бесплатно. Кроме длительного пробного периода, Microsoft приготовили пользователям и простое средство веб-разработки – Visual Studio 2013 Express Edition. Кроме того, что сама среда занимает чуть больше одного гигабайта, она еще и способна на толковый фронтенд. Так что, если вам нужна бесплатная и легкая среда веб-программирования, то Visual Studio может стать хорошим выбором. К тому же, стартуя с нее, можно получить временный бесплатный доступ к Azure.
Решение в «облаках»
Хоть перенесение в онлайн разработки веб-сайта считается жертвой безопасностью, но джедаи фронтенда давно облюбовали эти средства. Ранее, в эпоху медленного интернета это казалось фантастикой, но сегодня, современные решения находятся именно там.
Девятое облако
Cloud9 – это едва ли не единственная среда разработки, которая полностью написана на JavaScript. Благодаря этому, она остается быстрой и стабильной в рамках своей функциональности. Естественно, что кодеры на JavaScript чувствуют себя здесь, как дома. И опять мы возвращаемся к Vim: эта IDE поддерживает режим работы этого текстового редактора.
Среди преимуществ – поддержка остальных популярных языков, хоть и не такая полная, как хотелось. Ну, а взаимодействием с Git – системой контроля версий, уже никого не удивишь. Цена за месяц работы с «облаком» составит 19 долларов, но есть и бесплатная версия с урезанным функционалом.
Koding
Как только вы увидите в окне браузера эту среду для веб-программирования, вам покажется, что поиск средства для разработки окончен. Но, не все так гладко, несмотря на широкий функционал и поддержку большинства традиционных веб-языков.
Среда разработки постоянно подвисает, ей не хватает оптимизации и толкового UX. Постоянно выскакивают окна, которые невозможно закрыть. Интуитивно понятный редактор кода – отсутствует. Добавление собственного ftp-сервера невозможно. Радуют функции для совместной разработки: есть инструмент для программирования в паре. Существует бесплатная версия, но этот пакет слишком мал для полноценной разработки.
Несмотря на все недостатки Koding, он является прогрессивным продуктом. Просто всей этой индустрии облачных IDE еще предстоит развитие.
Бегство в Vim
Можете считать это параграф просто шуткой, можете воспринимать всерьез. Но, суть в том, что разработчики правда массово начинают использовать Vim. И для этого есть свои причины. Во-первых, в отличии от среды для разработки, он поддерживает практически все языки программирования. В современных условиях это важно: один продукт может содержать фрагменты на разных PL.
Во-вторых, те, кому не повезло учится в университетах на платформе Visual Studio, учились именно на Vim. После годов поиска, разработчики возвращаются к истокам, так как это то, с чем они умеют работать. Скорость разработки, которую дают Vim + прямые руки, не сравнится ни с одной IDE. Кстати, о руках: с Vim вы можете полностью забыть о таком HID, как компьютерная мышь. Ну, а для опытного разработчика, Vim – это всего лишь основание, на котором можно построить собственное персонализированное окружение.