Я слышал от людей, которые переключались в любом случае и кто клялся тем или другим.
Будучи огромным поклонником Eclipse, но не успел опробовать IntelliJ, мне интересно услышать от пользователей IntelliJ, которые являются "ex-Eclipsians", некоторые специфические вещи, которые вы можете сделать с IntelliJ, что вы не можете сделать с Eclipse.
Примечание. Это не субъективный вопрос и вовсе не означает превратиться в святую войну IDE. Пожалуйста, уменьшите любые ответы пламени..
CTRL-щелчок, который приводит вас к тому, что объект щелчка определяется везде, - не только в Java-классах и переменных в коде Java, но и в конфигурации Spring (вы можете щелкнуть по имени класса или свойству или bean имя), в Hibernate (вы можете щелкнуть имя или класс свойства или включить ресурс), вы можете перемещаться в один клик из класса Java, где он используется как Spring или Hibernate bean; нажатие на включенное JSP или JSTL-тег также работает, ctrl-click на переменной JavaScript или функции приводит вас к тому месту, где оно определено, или отображает меню, если есть несколько мест, включая другие .js файлы и JS-код в HTML или JSP файлы.
Автозаполнение в выражениях HSQL в конфигурации Hibernate (включая имена классов, свойств и столбцов базы данных) в конфигурации Spring
<property name="propName" ref="<hit CTRL-SPACE>"
и он покажет вам список тех beans, которые вы можете ввести в это свойство.
Очень умный автозаполнение в Java-коде:
interface Person {
String getName();
String getAddress();
int getAge();
}
//---
Person p;
String name = p.<CTRL-SHIFT-SPACE>
и он показывает вам ТОЛЬКО getName(), getAddress() и toString() (только они совместимы по типу), а getName() является первым в списке, потому что он имеет более релевантное имя. Последняя версия 8, которая все еще находится в EAP, обладает еще более умным автозаполнением.
interface Country{
}
interface Address {
String getStreetAddress();
String getZipCode();
Country getCountry();
}
interface Person {
String getName();
Address getAddress();
int getAge();
}
//---
Person p;
Country c = p.<CTRL-SHIFT-SPACE>
и он будет автоматически автозаполнять его
Country c = p.getAddress().getCountry();
Смарт-автозаполнение в JavaScript.
function Person(name,address) {
this.getName = function() { return name };
this.getAddress = function() { return address };
}
Person.prototype.hello = function() {
return "I'm " + this.getName() + " from " + this.get<CTRL-SPACE>;
}
и он показывает ТОЛЬКО getName() и getAddress(), независимо от того, как могут получить * методы, которые у вас есть в других объектах JS в вашем проекте, и ctrl-click на this.getName() приводит вас туда, где это определено, даже если в вашем проекте есть другие функции getName().
Я упомянул автозаполнение и ctrl-щелчок в пути к файлам, например < script src= ", < img src=" " и т.д.
Автозаполнение атрибутов тега HTML. Автозаполнение атрибута стиля тегов HTML, как имен атрибутов, так и значений. Автозаполнение в атрибутах класса.
Type < div class= "< CTRL-SPACE > , и он отобразит список классов CSS, определенных в вашем проекте. Выберите один из них, нажмите Ctrl-клик по нему, и вы будете перенаправлены туда, где он определен.
В последней версии есть языковая инъекция, поэтому вы можете объявить, что пользовательский тег JSTL обычно содержит JavaScript, и он будет выделять JavaScript внутри него.
<ui:obfuscateJavaScript>function something(){...}</ui:obfuscateJavaScript>
Вы можете использовать Поиск использования любого Java-класса или метода, и он найдет, где он используется, включая не только классы Java, но и Hibernate, Spring, JSP и другие места. Переименовать метод рефакторинга переименовывает метод не только в Java-классах, но и в любом месте, включая комментарии (он не может быть уверен, что строка в комментариях действительно является именем метода, поэтому он будет запрашивать). И он найдет только ваш метод, даже если есть методы другого класса с тем же именем. Хорошая интеграция управления версиями (поддерживает ли SVN списки изменений? IDEA поддерживает их для каждого источника управления), возможность создания патча с вашими изменениями, чтобы вы могли отправлять свои изменения другому члену команды, не совершая их.
Когда я смотрю на HashMap в окне просмотра отладчика, я вижу логический вид - ключи и значения, в прошлый раз, когда я делал это в Eclipse, он показывал записи с хэшем и следующими полями - я действительно не отлаживаю HashMap, я просто хочу посмотреть его содержимое.
Он проверяет правильность конфигурации Spring и Hibernate, когда вы его редактируете, поэтому мне не нужно перезапускать сервер, чтобы знать, что я назвал неправильное имя или добавлен параметр конструктора, поэтому мой Spring cfg недействителен.
В прошлый раз, когда я попытался, я не смог запустить Eclipse в Windows XP x64.
и он предложит вам person.name или person.address. Ctrl-click на person.name, и он будет перемещаться к вам методом getName() класса Person.
Введите Pattern.compile("");
поставьте\\там, нажмите CTRL-SPACE и посмотрите полезный намек на то, что вы можете добавить в свое регулярное выражение. Вы также можете использовать языковой инкремент здесь - определите свой собственный метод, который принимает параметр string, объявите в диалоге параметров IntelliLang, что ваш параметр является регулярным выражением, - и он также даст вам автозаполнение. Излишне говорить, что он выделяет неправильные регулярные выражения.
Есть несколько функций, которые я не уверен, присутствуют в Eclipse или нет. Но по крайней мере каждый член нашей команды, который использует Eclipse, также использует некоторый инструмент слияния, чтобы объединить локальные изменения с изменениями из исходного элемента управления, обычно WinMerge. Мне это не нужно - для меня достаточно слияния в IDEA. Через 3 клика я вижу список версий файлов в исходном элементе управления, еще на 3 клика я могу сравнить предыдущие версии или предыдущие и текущие и, возможно, слить.
Это позволяет указать, что мне нужно все .jars внутри папки WEB-INF\lib
, не выделяя каждый файл отдельно, поэтому, когда кто-то совершает новый .jar в эту папку, он автоматически выбирает его.
Упомянутое выше, вероятно, составляет 10% от того, что он делает. Я не использую Maven, Flex, Swing, EJB и многие другие вещи, поэтому я не могу сказать, как это помогает с ними. Но это так.
Есть только одна причина, по которой я использую intellij, а не eclipse: удобство использования
Будет ли это отладка, рефакторинг, автозаполнение. Intellij намного проще в использовании с постоянными привязками клавиш, доступными параметрами, где вы их ищете. По-видимому, для Intellij будет сложно догнать Eclipse, так как у последнего есть гораздо больше плагинов, доступных intellij и легко расширяемых.
Вероятно, это не вопрос того, что может/не может быть выполнено, но как.
Например, у обоих есть редактор, окруженный панелями док-станции для проекта, classpath, output, structure и т.д. Но в Idea, когда я начинаю вводить все эти коллапсы, автоматически позволяю мне сосредоточиться на коде, который сам; В eclipse все эти панели остаются открытыми, оставляя область редактора очень уменьшенной, около 1/5 общей видимой области. Поэтому я должен захватить мышь и щелкнуть, чтобы свести к минимуму в этих панелях. Выполнение этого в течение всего дня - очень неприятный опыт в затмении.
То же самое происходит с окном вывода представления. В программе "Идея" программа выводит окно/панель вывода, чтобы увидеть выход программы, даже если она была сведена к минимуму. В eclipse мне нужно снова схватить мою мышь и найти вкладку вывода и щелкнуть ее, чтобы просмотреть выход моей программы, потому что выходное окно/панель - это просто еще один, как и все остальные окна, но в Idea он обрабатывается в особым образом: "Если пользователь хочет запустить свою программу, очень вероятно, что он хочет видеть выход этой программы!" Кажется настолько естественным, когда я пишу его, но eclipse терпит неудачу в этой концепции базового интерфейса пользователя.
Наверное, есть ярлык для этого в eclipse (автовыполнение окна вывода при редактировании и автошоу при запуске программы), но, как и некоторые другие десятки функций, на ярлык нужно охотиться на форумах, онлайн-справку и т.д., в то время как в Idea немного бит более "естественный".
Это можно повторить почти для всех функций, имеющих как автозаполнение, перенос слов, так и быстрый просмотр документации, все. Я думаю, что опыт пользователя намного приятнее в Idea, чем в eclipse. Затем появляется девиз "Развивайте с удовольствием"
Eclipse обрабатывает более быстрые проекты (+300 банок и +4000 классов), и я думаю, что IntelliJ Idea 8 работает над этим.
Все это, конечно, субъективно. Как мы можем измерить работу пользователя?
Идея 8.0 имеет прекрасный ctrl+shift+space x 2, который выполняет следующий автозаполнение:
City city = customer.<ctrl-shift-space twice>
разрешает
City city = customer.getAddress().getCity();
через любое количество уровней геттеров/сеттеров.
Не забудьте "сравнить с буфером обмена".
Что-то, что я использую все время в IntelliJ и которое не имеет эквивалента в Eclipse.
Мой любимый ярлык в IntelliJ, который не имеет эквивалента в Eclipse (который я нашел), называется "Перейти к символу". CTRL-ALT-SHIFT-N позволяет начинать вводить и перебирать классы, имена методов, имена переменных и т.д. из всего проекта.
Я попытался переключиться на IntelliJ из-за новой Android Studio. Но сейчас я очень разочарован. Я использую Eclipse с плагином Code Recommendedanders. Вот простой пример, почему Eclipse настолько замечателен:
Я хочу создать новый SimpleTimeZone
. SimpleTimeZone
не имеет конструктора с нулевыми аргументами.
Ctrl + Space в Eclipse
Ctrl + Space в IntelliJ
В IntelliJ я не получаю никаких сведений о конструкторах SimpleTimeZone
.
После Enter в Eclipse
Я получаю ранее выбранный конструктор, заполненный предопределенными именами переменных. И я вижу тип каждого аргумента. С помощью Code Recommendanders Eclipse угадывает правильный конструктор по ранее определенным типам переменных в текущей области и заполняет конструктор этими vars.
После Enter в IntelliJ ничего не происходит. Я получаю пустой конструктор. Я должен нажать Ctrl + P, чтобы увидеть ожидаемые аргументы.
Если у вас есть курсор на методе, тогда CTRL+SHIFT+I выведет реализацию метода. Если метод является методом interface
, то вы можете использовать стрелки вверх и вниз для циклического выполнения реализаций:
Map<String, Integer> m = ...
m.contains|Key("Wibble");
Где | (например), где находится ваш курсор.
IntelliJ имеет некоторые довольно продвинутые проверки кода (сопоставимые, но отличные от FindBugs).
Хотя я серьезно пропустил плагин FindBugs при использовании IntelliJ (интеграция Eclipse/FindBugs довольно крутая).
Здесь - официальный список CodeInspections, поддерживаемый IntelliJ
EDIT: Наконец, для IntelliJ есть findbugs-plugin. Это все еще немного бета, но комбинация Code Inspections и FindBugs просто потрясающая!
Далеко, гораздо больше рефакторинга.
Есть много вещей, которые идея решает гораздо проще, или нет эквивалента:
Действия автозаполнения. Выполняя ctrl+shift+a, вы можете вызвать любое действие с клавиатуры, не помня его комбинацию клавиш... Подумайте о gnome-do или запустите в Windows, и у вас есть идея! Кроме того, эта функция поддерживает аббревиатуры CamelCasing;)
Полка: позволяет вам легко разделить фрагменты кода, а затем просмотреть их через средство просмотра различий.
Локальная история: она намного лучше управляется и проще.
Аннотации и история SVN: проще просмотреть, а также вы можете легко просмотреть историю только для такой части целого исходного файла.
Автозаполнение повсюду, например, окна выражения выражения и состояния точки останова.
Интеграция Maven... намного, намного проще и хорошо интегрирована.
Рефакторы гораздо ближе к руке, такие как вставка циклов, обертывание/литье, переименование и добавление переменных.
Найти много мощных и хорошо организованных. Даже в больших проектах
Значительно стабильная работа с несколькими ветвями большого проекта в одно и то же время (как бывшее исправление 1,5 ГБ по источникам веток и необходимость работать в них одновременно, идея показала его прочные возможности)
Более чистый и простой интерфейс...
И, проще использовать только с клавиатурой, позволяя разделить необходимость использования мыши для множества простых таков, экономя ваше время и давая вам больше внимания на код... где это важно!
И теперь, будучи open source, база пользователей Idea будет экспоненциально расти.
Одна вещь, которую я использую регулярно, - это установить точку останова, но затем контролировать, что она делает. (На моей последней работе большинство остальных использовали Eclipse... Я помню, что я был удивлен, что никто не мог найти, как это сделать в Eclipse.)
Например, точка останова на самом деле не остановится, а просто зарегистрирует сообщение на консоли. Это означает, что мне не нужно мутировать мой код с помощью "System.out.println(...)", а затем перекомпилировать.
Структурный поиск и замена.
Например, найдите что-то вроде:
System.out.println($string$ + $expr$);
Где $string $является литералом, а $expr $является выражением типа my.package.and.Class, а затем заменяется на:
$expr$.inspect($string$);
Мое время может немного отличаться от этой темы, но я просто должен был ответить.
Я огромный поклонник затмения, используя его с первого появления. Друг сказал мне тогда (еще 10 лет назад), что это будет игрок. Он был прав.
Однако! Я только начал использовать IntelliJ, и если вы не видели или не использовали списки изменений - вам не хватает программирования на небесах.
Возможность отслеживать мои измененные файлы (на моей ветке развития ala clearcase) была тем, что я искал в плагине для eclipse. Intellij отслеживает все ваши изменения для одной фиксации, очень просто. Вы можете изолировать измененные файлы с помощью настраиваемых списков. Я использую это для файлов конфигурации, которые должны быть уникальными локально, но постоянно помечены, когда я синхронизирую или сравниваю с репозиторией - перечисляя их в списке изменений, я могу их контролировать, но аккуратно убирать их, чтобы я мог сосредоточиться на реальных дополнениях Я делаю.
Также есть плагин Commit Log, который выводит текст всех изменений для тех SCCS, которые не интегрированы с вашим программным обеспечением отслеживания ошибок. Вставка журнала в историю работы с билетами фиксирует файлы, их версию, дату/время и ветку/теги. Это круто, как черт.
Все это может поддерживаться через плагины (или будущие улучшения) в eclipse, я ставлю; Тем не менее, Intellij делает это ветерок.
Наконец, я очень взволнован по поводу основной любви к этому продукту - нажатия клавиш, так что это болезненно, но весело.
Отладчик IntelliJ имеет очень удобную функцию под названием "Evaluate Expression", которая намного лучше, чем кулон затмений. Он имеет полное завершение кода, и я считаю, что он вообще "более полезен".
Хорошо, для меня это тысяча крошечных вещей. Некоторые макросы, GUI-макет вообще в Eclipse, я считаю ужасным. Я не могу открыть несколько проектов в разных окнах в Eclipse. Я могу открыть несколько проектов, но после этого система, основанная на просмотре, меняет кучу вещей, когда я переключаю файлы. Проверки кода IntelliJ выглядят лучше. Его всплывающие помощники для исправления распространенных проблем хороши. Множество простых функций юзабилити, таких как боковая панель, где я могу нависнуть над горячей точкой, и она расскажет мне обо всех реализующих подклассах метода или метода, который я реализую и откуда.
Всякий раз, когда мне приходилось использовать или смотреть, как кто-то использует, Eclipse кажется, что они могут делать большинство вещей, которые я могу сделать в IntelliJ, но это занимает больше времени, и это clunkier.
Ввести переменную. (Ctrl+Alt+V в Windows, Cmd+Alt+V в OSX)
Предположим, вы вызываете метод, service.listAllPersons()
Нажмите Ctrl+Alt+V и Enter, а переменная для возвращаемого значения из вызова метода вставлена:
List<Person> list = service.listAllPersons();
Сохраняет ввод текста, и вам не нужно проверять тип возвращаемого метода, который вы вызываете. Особенно полезно при использовании дженериков, например
new ArrayList<String>()
[ввести переменную]
ArrayList<String> stringArrayList = new ArrayList<String>();
(конечно, вы можете легко изменить имя переменной перед нажатием Enter)
IntelliJ имеет поддержку intellisense и рефакторинга из кода в документы jspx.
Для меня это поддержка IDEA maven, особенно в версии 9, не имеет себе равных. Синхронность проекта на лету с модой Maven просто фантастична и делает развитие приятным.
Intellij имеет гораздо более совершенный SVN-модуль, чем Subversive или Subclipse, и он работает! Количество времени, которое мы потратили впустую на слияние исходных файлов с использованием Eclipse, не обдумывает. Это не проблема с IntelliJ, потому что плагин помогает вам гораздо больше.
Также плагин Subclipse ненадежный - мы регулярно имеем экземпляры, в которых плагин не считает, что какой-либо код был проверен на SVN другими разработчиками, но есть - сервер CI обработал их!
Одним из хороших моментов, на мой взгляд, является Матрица структуры зависимостей: http://www.jetbrains.com/idea/features/dependency_analysis.html#link0
Там есть хорошее введение в использование и преимущества DSM на веб-сайте Lattix (отдельный продукт): http://www.lattix.com/files/dl/slides/s.php?directory=4tour
эмулятор VIM. Этот плагин обеспечивает почти полную эмуляцию vi/vim/gvim при редактировании файлов в IDEA. Поддерживаются следующие функции:
некоторые комментарии об этом плагине от http://plugins.jetbrains.net/plugin/?id=164
Я не вижу, чтобы когда-либо возвращался к другим идеям из-за этого плагина. Лучшее из обоих миров... Удивительный!. что я отсутствовал во всех IDE.Несколько других вещей:
Прежде всего, я люблю intellij. Есть, по крайней мере, сотня функций, в которых это затмение отсутствует. Я говорю о величинах лучше в надежности и интеллекте, которые гипербола не может описать, когда речь идет о рефакторинге, переименовании, перемещении и других, о которых уже упоминалось.
НО, есть одна вещь, которая intellij не позволяет, какое затмение делает. Он не позволяет запускать сразу несколько проектов под одним и тем же vm.
Когда у вас есть отдельные проекты для передней, средней, основной, агенты..etc, где все они должны взаимодействовать друг с другом, вы не можете быстро изменять и отлаживать одновременно afaik. Единственный способ справиться с этим - использовать скрипты ant для развертывания и обновления баннеров в зависимых проектах или использовать maven.
Eclipse позволяет отлаживать несколько проектов в одном экземпляре ide vm.
Есть одна вещь, которую IntelliJ делает намного лучше, чем Eclipse, и это пустые карманы!
Однако я предпочитаю использовать его и одно большое преимущество, которое у него над Eclipce - это то, как он синхронизируется с файловой системой, для больших проектов и медленных компьютеров (да, в рабочих средах ПК намного медленнее, чем у наших дома) Кажется, что Eclipse работает там, где IntelliJ, кажется, быстрее, хотя и с более медленным начальным индексированием.
Издание IntelliJ Community, очевидно, делает его бесплатным, но вы скоро захотите, чтобы эти дополнительные рефакторинги и приятные небольшие лакомства не были включены в выпуск CC.
На мой взгляд, это, как правило, лучший пользовательский опыт, но стоит ли его стоимость, чтобы каждый разработчик отвечал на вопросы.
Но будем благодарны за то, что у нас есть до трех отличных IDE для Java прямо сейчас, когда NetBeans становится все лучше.
Анализ потока данных: межпроцедурный анализ обратного потока и анализ прямого потока, как описано здесь. Мой опыт основан на Community Edition, который довольно хорошо анализирует поток данных. Он потерпел неудачу (отказался делать что-либо) в немногих случаях, когда код очень сложный.
Преамбула к моему ответу: мое использование Eclipse ограничено. Мы нуждались в Java IDE для работы как с Windows, так и с Mac, а порт Mac с каждым днем замедлялся. Это было много лет назад, и я уверен, что все в порядке. Но именно это заставило нас переключиться на IntelliJ, и мы были довольны этим.
Теперь для моего ответа: Одна большая разница, о которой я еще не упоминал, заключается в том, что техническая поддержка лучше с IntelliJ/Jet Brains. Мы отправляем электронное письмо на JetBrains и получаем окончательный ответ менее чем за час. Поиск ответов на проблемы Eclipse приводит к обычному, "глупым идиотом" ответам (как правило, небольшому числу ответов) наряду с гораздо большим количеством проницательных, полезных ответов. Но для получения реального ответа требуется определенная сортировка.
Что-то, что я использую в IntelliJ, все время рефакторизуется по мере ввода. Я переписал классы из распечатки (изначально написанной в eclipse) с использованием обеих IDE, и я использовал на 40% меньше нажатий клавиш/щелчков мыши, чтобы писать те же классы в IntelliJ, что и eclipse.
Я бы не хотел использовать Eclipse, пока они не будут поддерживать столько рефакторинга с неполными фрагментами кода.
Вот более подробный список функций в IntelliJ 8.0/8.1 [http://www.jetbrains.com/idea/features/index.html]
Одной из очень полезных функций является возможность частично построить проект реактора Maven, так что будут включены только те части, которые вам нужны.
Чтобы сделать это немного яснее, рассмотрим случай коллекции файлов WAR с большим количеством общих ресурсов (например, JavaScript, Spring файлы конфигурации и т.д.), которые разделяются между ними, используя метод наложения. Если вы работаете на какой-либо веб-странице (работаете в Jetty) и хотите изменить часть кода наложения, который хранится в отдельном модуле, вы обычно ожидаете остановить Jetty, запустить сборку Maven, запустить Jetty снова и Продолжать. Так обстоит дело с Eclipse и почти любой другой IDE, с которой я работал. Не так в IntelliJ. Используя настройки проекта, вы можете определить, какой фасет какого модуля вы хотите включить в сборку фона. Следовательно, вы получаете процесс, который кажется бесшовным. Вы вносите изменения в практически любой код в проект, и мгновенно он доступен после обновления браузера.
Очень аккуратно и очень быстро.
Я не мог себе представить кодирование переднего конца в чем-то вроде YUI, поддерживающего DWR/SpringMVC без него.
Две вещи, которые IntelliJ делает для этого Eclipse, не очень ценны для меня:
Разделители методов: эти слабые серые линии между методами делают код более читаемым
Сглаживание текста: делает код очень приятным в среде IDE
В настоящий момент это единственный, который может иметь вырезывание вкладок в другое окно. Удобно, когда у вас больше экранов.
Недавно я обнаружил по крайней мере два преимущества IntelliJ IDEA над Eclipse.
Если кто-то пытается использовать форматирование кода в редакторе JSP-кода, скриптлеты JSP нарушаются. Eclipse становится немного сумасшедшим, он рекламирует случайные фрагменты кода здесь и там. IDEA ведет себя очень хорошо.
Другое дело - скорость развертывания приложения на сервере JBoss. IntelliJ заменяет приложение в папке tmp JBoss, поэтому перераспределение происходит очень быстро. Eclipse WTP заменяет приложение в папке развертывания, которая, как выясняется, длится намного дольше.
Я думаю, вы можете придерживаться любой из этих IDE. Лучший признак того, чтобы не "беспокоиться о том, чтобы не воспользоваться огромным преимуществом в среде IDE, которую вы не используете", - очень длинные аргументы, которые мы наблюдали между поклонниками Eclipse и поклонниками IntelliJ. Это хороший знак того, что обе стороны имеют почти ту же силу, что и привело к длительной дискуссии.
Существует ряд функций и рабочих процессов, которые отличаются друг от друга, как видно из всех ответов. Тем не менее, я думаю, что при принятии решения о том, какие рамки использовать, также можно рассмотреть общее повышение производительности, которое можно сделать с каждым инструментом.
Я большой поклонник Netbeans и Eclipse и использовал их в течение многих лет. Они отличные инструменты и в зависимости от того, что вы делаете, вы можете выбрать один или другой.
Тем не менее, около шести месяцев назад, работая над сложным Java-проектом с участием большого кода javascript для конечного кода для HMT5 ui, я был вынужден искать альтернативы Eclipse из-за ошибки автозаполнения js. Я был так отчаянн что я рассматриваю возвращаясь к простому текстовому редактору для моего js кода!!!
Только удача, что я столкнулся с Intellij Idea (нет времени, чтобы исследовать инструменты, к сожалению).
Хотя для того, чтобы привыкнуть к идеям "Идея", нужно отвлечься от некоторых особенностей, увеличение производительности, которое он предлагает от мелких вещей слева и справа, является самым большим активом, на мой взгляд. Он просто работает лучше для меня, и теперь я являюсь подписчивающим клиентом Idea Ultimate. Как только вы привыкнете к этому, его очень сложно вернуться к чему-либо еще.
Ничто не бьет бесплатно, и я большой поклонник открытого исходного кода, но в конце, если вы делаете это для жизни, способность делать что-то быстрее платит каждый раз.
В IntelliJ можно перейти через историю последних мест, отредактированных с помощью "Последнее изменение местоположения". Eclipse имеет аналогичную функцию, но Eclipse возвращается только на один уровень редактирования.
Наличие истории, а не только одного уровня, который предлагает Eclipse, является отличной функцией производительности: он действует как форма автоматической закладки, так как вы часто хотите вернуться в те места, где вы делали изменения. Я использую эту способность несколько раз в день и чувствую боль от ее отсутствия, когда меня просят использовать Eclipse для чего-то.
Извините, если это уже покрыто, но просто имея вкладку "changes" там, где я могу видеть мои локальные изменения, входящие изменения, удаленные изменения - это просто то, с чем я не могу жить без... В Eclipse я могу " t найти такую особенность!
Также простая вещь, такая как средний щелчок, которая привязывается к "открытому объявлению", является отличным дополнением к пользовательскому интерфейсу - что-то, что я также не вижу, реализовано в Eclipse.
На моем рабочем месте есть только Eclipse, но я серьезно подумываю о покупке личной лицензии Idea....
Откройте проект с POM Maven. Просто выберите "Открыть проект...", перейдите на свой верхний уровень pom.xml и нажмите Enter:) NetBeans теперь также имеет эту функцию.
Я не кодировал много с IntellijIdea, но в IntellijIdea вы можете увидеть, где начинается блок кода между скобками (если, try/catch, cycle и т.д.), и где заканчивается.
В Eclipse (код я в Eclipse 3.2) вы можете идентифицировать блок только вручную.
Я не помню, если в Eclipse
возможно перенос слов/строк/методов/классов.В Intellij Idea вы используете Ctrl+W
Alt+Insert для редактирования текста в режиме столбцов.
Показать панель навигации ALT-Home.