06.08.2022

В каком редакторе пишут код? Что такое IDE?

Сергей Немчинский
5 минут просмотра
В каком редакторе пишут код? Что такое IDE?

Каждому новичку, который читает про язык программирования, в голову приходит мысль, что программа — это текст. И раз это текст, значит его нужно писать в редакторе текста. Все логично и понятно. Более того, именно так все когда-то и было. Древние редакторы типа Emacs как раз и создавались с таким расчётом, чтобы программисту было удобно писать в нем код. Но это было давно. Сейчас даже у самых молодых языков, которым без дня неделя, не говоря уже о распространенных, есть Integrated Development Environment — интегрированная среда разработки, сокращенно IDE.

Для чего вам нужна IDE

Почему сейчас никто не пишет в текстовом редакторе? Интегрированная среда разработки помимо прекрасного редактора имеет синтез с хайлайтингом (подсветкой ключевых слов), это очень облегчает чтение кода. Вы с первого взгляда определяете, где какая структура началась и закончилась, вы видите ключевые слова, поля класса, параметры и т.д. 

IDE также поддерживает автокомплишен (т.е. вы начинаете что-то писать из тех слов, что вы писали тут ранее, и вам не нужно допечатывать его до конца – вам будут предложены варианты завершений). Это очень сильно ускоряет время написания кода.

Помимо этого, у любой IDE есть подсветка ошибок. Очень удобна навигация по коду: вы можете кликнуть по какому-то непонятному вам слову, например, названию класса, и перейти в описание этого класса. Или вызов метода – перешли в метод. Таким образом вы можете ходить по коду, как будто это страница гипертекста и с каждого слова вы можете перейти к его описанию. Без таких IDEшек программистам было бы существенно тяжелее поддерживать огромные проекты.  

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

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

У IDE огромный функционал. Фактически, программист может ничего больше не запускать у себя на компьютере, достаточно одной IDE. Даже сервера будут запускаться внутри нее.

Естественно, все это требует достаточно мощного компьютера. Я рекомендую минимум 8Гб оперативки.

IDE для разных языков

Для каждого популярного языка таких систем существует огромное количество, для Java их, вероятно, несколько сотен. Не все они одинаково полезны. Критерий отбора прост – удобство и безглючность. Если IDEшка сильно глючит, то долго она на рынке не продержится, ибо есть огромное количество равноценных аналогов. Единственное исключение – Jdeveloper от Oracle. Ужасно глюкавая система, но Оракл ее настолько хорошо проталкивает и заставляет программистов поддерживать многие свои системы именно с помощью Jdeveloper, что нет другого выхода – продолжают ей пользоваться.

Для С# самый популярный вариант – Visual Studio. Здесь по аналогии Microsoft очень хочет, чтобы пользовались именно этой системой. Но, опять же, повторюсь, вариантов IDE очень много.

В Java нет единого лидера, но на данный момент самой популярной IDE является IDEA от компании JetBrains. Прекрасная IDEшка, с отличной проработкой пользовательского интерфейса. Но новичкам я очень не рекомендую учиться с IDEA. Почему? Она действительно слишком умная. И большую часть работы, которую вам потом понадобится делать самим, вы просто не сможете выполнить. Вы можете не знать, что делать с кодом, как он должен быть расположен, так как все это от вас ИДЕЯ прячет. В каких ситуациях может случиться, что вы откажетесь от ИДЕЯ? Например, если  она не поддерживает ваш сервер или вам нужно что-то сделать без IDE вообще (к примеру, на сервере или на новой инсталляции).

IDEA идеально подходит для опытных разработчиков, т.к. они и так знают что нужно сделать, а тут достаточно нажать одну кнопку и IDEA все делает.

Новичкам я рекомендую учиться на какой-то альтернативной IDE. Для Java есть три самые популярные IDE: IDEA, Eclipse и NetBeans. Ученикам своей школы я рекомендую Eclipse. Да, она уступает интерфейсом IDEA, но при правильной настройке также отлично работает.