От автора: среди всех языков, которые используются в веб-разработке, наиболее чувствительным является Java. Этот PL характеризуется сложным синтаксисом, высокой типизацией данных и невосприимчивостью к ошибкам. Именно потому столь востребованным является этот инструмент для Java – IDE. Среда разработки помогает обойти подводные камни, которые ждут программиста, пишущего в текстовом редакторе. Если не хотите идти долгой и тернистой дорогой текстовика, добро пожаловать в обзор топовых сред разработки, наиболее подходящих для кофейного языка.
Для разработки нужна IDE
Java – один из тех языков, для которого среда разработки является не прихотью отдельных специалистов, а настоящим средством выживания. Сложный язык не поддается чтению и выполнению, пока все элементы системы не будут настроены должным образом. Иногда, веб-разработчику трудно понять зачем ему такое громоздкое и производительное программное обеспечение. Все веб-языки, вроде HTML/CSS, JavaScript и PHP можно внедрять без дополнительного ПО (хотя, для последнего даже есть топовая платная IDE – PHPStorm). Но, как только дело доходит до Java, все становится на свои места. Длинные и сложные документы кода не поддаются ручной систематизации.
Но, как всегда, есть противники идеологии. Некоторые разработчики называют IDE «костылями», которые нужны только мало подготовленным программистам. Для них скачать среду разработки подобно измене основным принципам. К сожалению, такой подход может оставить разработчика позади эволюции программирования: большие корпоративные проекты, как и высокофункциональные веб-приложения, требуют тесного взаимодействия между членами команды, быстрого запуска и отладки кода. Тем более, что скилл работы с основными IDE является критерием для трудоустройства на лучшие позиции.
Конечно, существуют и те, кто умеет настолько хорошо отстроить свои инструменты разработчика, что полноценная IDE становится ненужной. Как бы там ни было, среда разработки потребляет ресурсы устройства, которые нужны для обеспечения работы остальных инструментов разработчика. Особенно это видно в устаревших версиях Windows/Linux – как только запускается среда разработки, остальные ресурсы испытывают стагнацию.
Разработчики в сети почти всегда отдают предпочтение текстовым редакторам. Они более легкие и позволяют создавать решения на коленке. Никаких дополнительных инструментов, не нужно глубокой настройки, а ассортимент программного обеспечения значительно шире. Такой взгляд сохраняют веб-программисты, пока не начинают работу с Java.
Хочу выбирать программу
Сфера программирования предлагает множество решений для создания полноценного кода. В особенности, это касается различных сред разработки. Не только большие компании, вроде Oracle, занимаются созданием IDE. Работа над подобным ПО, как правило, прерогатива профессионалов, которые хотят оптимизировать свою деятельность. Именно так случилось с Visual Studio: одной из лучших IDE всех времен. Microsoft, которая во всю готовилась представить версию Windows в новом столетии, просто представила свои инструменты в одном приложении. Теперь VS – выбор миллионов.
К сожалению, ее не назовешь «for Java developers». Нет, это вовсе не значит, что в этой среде разработки не получится написать что-то на Java: существуют даже специальные расширения. Просто она больше ориентирована на C, C# и некоторые другие продукты компании Microsoft. Для Java существует собственный топ IDE, который мы представим сегодня. Но, для начала, нужно понять, какой мы хотим видеть идеальную IDE (созвучно ).
Во-первых, можно сразу определиться с тем, что для Java-разработчика не подойдут те, которые работают в онлайне. Они будут создавать проблемы с интерпретацией, а постоянные зависы только отобьют желание к программированию. Более разумным решением будет скачать одно из представленных сегодня ПО. Лучше один раз нажать download, чем постоянно мирится с багами. Эпоха облачных IDE еще настанет.
Также, среда разработки для Java должна поддерживать ряд технологий, которые необходимы для эффективного кодинга. Среди них языки виртуальной машины Java: прежде всего, Java 10, а также Groovy и Scala. Контроль версий тоже является одним из ключевых моментов. Одного Git будет мало: нужен Mercurial, SVN и прочие. Угадать какая будет популярна через несколько лет (Git, конечно ☺) невозможно. Веб-разработчику не помешает поддержка широкого круга языков, среди которых PL баз данных, веб языки, как фронта (TS, JS, HTML), так и бэкэнда (один из популярных языков общего назначения). Так как особенностью JVM является преобразование слов языка программирования в байтовый код, необходимы и мощные интерпретаторы. Именно они могут сделать быстрый в теории Java, быстрым на практике.
Ну, и конечно, как и сам язык Java, среда разработки под него должна быть кроссплатформенной. Все остальные решения тормозят развитие программиста. Раз он выбрал Java, значит выбрал универсальность.
Три слона разработки Java
Как всегда существует тройка лучших и все остальные. К этому уже привыкли в индустрии веб-разработки, и мы не будем изменять традициям. Преимущество нашего обзора в том, что здесь не будет платного ПО (почти ). Каждую среду разработки вы сможете свободно скачать с официального сайта. Также, это будет один из тех топ-чартов, где мы субъективно выберем победителя. Ну, а собственное решение вы сможете сложить, опираясь на свой опыт и наши выводы.
Идея для веб-разработки
IntelliJ IDEA – это IDE, выпущенная компанией JetBrains, на основе виртуальной машины Java. Сама среда написана тоже на Java и частично на Python, для них и предназначена. Они сразу обозначили себя, как среда для Java, еще в 2001. Тогда среда разработки представила целую библиотеку средств для рефакторинга, что сразу вывело IDEA в топ. Разработчики сделали выбор не столько в пользу удобства, сколько в пользу продуктивности. Некоторые рутинные операции полностью выполняются средой разработки.
Мы обещали, что платного ПО сегодня не будет. Но правда в том, что ультимативная версия IDEA имеет свою стоимость, хоть и незначительную (до 500$), как для IDE. Если вы профессиональный джавист, который зарабатывает от 20$ в час – это мелочь. Кстати, только в пакете Ultimate у разработчика появится возможность работать с платформой Java EE.
Но существует и бесплатная версия IDEA, которую не назовешь урезанным вариантом. Да, некоторые функции отсутствуют, зато поддержка языков аналогична коммерческой версии. На ней удобно писать свои первые строчки кода и расширять с помощью плагинов.
IDEA – это одна из тех сред разработки, которую можно назвать по-настоящему умной. Вместо исправлений и подсвечивания, которыми обладает даже самый простой текстовый редактор, IDEA предлагает автозаполнение: фрагменты готовой программы генерируются под руками разработчика. Уже не стоит даже говорить о том, что все скобки и прочие синтаксические плюшки будут закрыты автоматически. А если что-то пойдет не так и IDEA не справится с проблемой, она тут же просигнализирует Java-разработчику по ту сторону экрана.
Подкупает и рефакторинг, который происходит сразу на нескольких языках. Джависты знают, что код никогда не бывает на чистой Java, особенно, если дело касается веб-разработки. Сюда подключаются языки баз данных, гипертекст и так далее. В этот момент IDEA делает то, на что пока не способны многие: анализируя написанную программу, IDE отделяет языки друг от друга и анализирует их по отдельности.
У программы хорошо реализованы хоткеи, к которым, конечно же, нужно будет привыкнуть. Но, как только все произойдет, продуктивность зашкаливает. Ими же можно вызывать отладку кода, которая происходит в соседнем окне.
Среда разработки примечательна и тем, что постоянно расширяет число поддерживаемых технологий. Впрочем, разработчики не очень зависят от этих обновлений. В любой момент они могут скачать соответствующий плагин.
IDE Eclipse
Это среда разработки популярна не только среди джавистов, но и среди веб-разработчиков в целом. Существенным преимуществом по сравнению с IDEA, однозначно станет цена – Eclipse полностью бесплатна, как и дополнения к ней. Кстати, в планах создателей среды разработки не было соперничества с IDEA: они хотели затмить успех, который получила Visual Studio. В какой-то мере это им удалось: веб-программисты средней руки почти всегда отдают предпочтение Eclipse.
Что еще лучше, чем в IDEA? Бесплатный доступ к Java EE. Она доступна сразу, без дополнительных платежей и установки плагинов. Кстати, о последних. Их установка в Eclipse составляет значительную задачу. Они могут «ссорится» между собой, доставляя неудобства разработчику. Но позитивным моментом можно назвать их количество. Советуем выбирать официальные, ведь таким образом меньше вероятность, что они начнут конфликтовать со средой разработки.
Eclipse рассчитана на то, что вы персонализируете ее под себя. Потому, первый опыт работы с IDE может оттолкнуть от дальнейшего использования. Тот редкий случай, когда для одной из лучших сред разработки нужен мануал. Благо, их масса на YouTube.
NetBeans
Это среда разработки, которая родилась из-под пера создателей Java – Sun Microsystem. Они хотели создать лучшее решение для своего языка, а потому спроектировали IDE, которая дружит не только с Windows.
В нашем списке она наиболее кроссплатформенная. NetBeans можно запустить не только на топовых осях, но и на любом другом устройстве, которое оснащено JVM. Сразу видно подход Sun: они хотели, чтобы их язык работал на всех девайсах (от компьютера до стиральной машины). Естественно, что «бобы» были названы официальной средой разработки для Java, хоть она и не столь хороша. Сегодня, над NetBeans работают в компании Oracle, которая поглотила Sun.
NetBeans так же умна, как IDEA, способна на смарт-рефакторинг. С этой задачей система справляется значительно лучше, чем Eclipse, но хуже, чем IDEA.
Как вы могли понять из объема сказанного, лучшей будет названа IDEA. Вот перечень причин:
понимание программирования. Никто так быстро не заполняет код и не исправляет ошибки, как IDEA;
эффективность рефакторинга;
цена. Да, Eclipse полностью бесплатна. Но вы же не станете покупать плохую еду, только потому что она дешевле?
Это наше видение! Кстати, у Oracle есть еще одна IDE в арсенале, под названием JDeveloper – полностью заточенная под Java. Пробуйте и ее, и делайте выводы сами. А у нас все!