Чим IntelliJ кращий за Eclipse? [зачинено]


67

Я знаю, що виникали такі питання, як ваш улюблений редактор / IDE? , але жоден з них не відповів на це запитання: навіщо витрачати гроші на IntelliJ, коли Eclipse безкоштовний?

Я особисто великий шанувальник IntelliJ, але я не дуже пробував Eclipse. Я використовував IntelliJ для проектів, які були Java, JSP, HTML / CSS, Javascript, PHP та Actionscript, а остання версія 9 була чудовою для всіх.

Багато співробітників у минулому казали мені, що вони вважають, що Eclipse є "майже таким же", як IntelliJ, але, щоб протистояти цьому, я час від часу сидів за розробником, використовуючи Eclipse, який здавався порівняно неефективним (досягти приблизно того ж завдання), і я цього не відчував із IntelliJ. Вони можуть бути нарівні за особливістю, але функції можуть бути зруйновані поганим досвідом користувача, і мені цікаво, чи можливо IntelliJ легше підібрати та виявити функції, що економлять час.

Для користувачів, які вже знайомі з Eclipse, крім реальної вартості IntelliJ, є також вартість часу, витраченого на вивчення нового додатка. Eclipse отримує багато користувачів, які просто не хочуть витрачати 250 доларів на IDE.

Якщо IntelliJ справді може допомогти моїй команді бути більш продуктивною, то як я можу продати її їм? Для тих користувачів, які спробували і те, і інше, я був би дуже зацікавлений у конкретних плюсах чи мінусах в будь-якому випадку.


3
Можливо, ви бачите тут деякі ухили відбору. Замовник IntelliJ набагато частіше дізнається про функції та ярлики, ніж ваш середній користувач Eclipse.
Macneil

3
Я б не підштовхував інших використовувати інструменти, які працюють на вас. Це високо суб'єктивні речі, і такі дурні речі, як вони, можуть зіпсувати вже встановлені відносини. Якщо у вас є вибір використовувати або IntelliJ, або Eclipse, і проект складеться чудово за допомогою будь-якого - вибийте себе, використовуйте IntelliJ. Якщо ви хочете просувати її, то випадково згадуйте про неї, коли настане час. Дорослі ненавидять це так само, як діти, коли інші намагаються приймати рішення за них. Ви все ще можете змусити їх перемикатися, але це повинно бути "ЇХ" рішенням, і тому вам просто потрібно зробити правильний струм гуду в потрібному ТМ.
Робота

@Job, я згоден з цим. Я хотів би дізнатися A) якщо IntelliJ має реальну перевагу перед Eclipse, так що B) якщо так, я можу продати його, а не мандатувати.
Ніколь

Ви розумієте, що IntelliJ має безкоштовну версію? Ви не можете зробити так, що єдиний варіант - платна версія
TheLQ

@TheLQ, ви праві, для стислості я припустив, що користувачі, знайомі з IntelliJ, також будуть знайомі з обмеженнями безкоштовної версії. Я особисто ніколи не мав проекту, де це було б корисно, тому що мені завжди було потрібно більше, ніж просто чистий компонент Java.
Ніколь

Відповіді:


63

Я працюю з Intellij (9.0.4 Ultimate) і Eclipse (Helios) щодня, і Intellij б'є Eclipse кожного разу.

Як? Тому що Intellij індексує світ і все просто працює інтуїтивно. Я можу набагато швидше пересуватися навколо своєї кодової бази в Intellij. F3 (визначення типу) працює на все - Java, JavaScript, XML, XSD, Android, Spring, контексти. Рефакторинг працює скрізь і є абсолютно надійним (у мене виникли проблеми з Eclipse, що псує своє джерело дивними способами). CTRL + G (де використовується) працює скрізь . CTRL + T (реалізації) відслідковує найпоширеніші екземпляри, які я використовую, і показує їх першими.

Пропозиції щодо заповнення коду та перейменування настільки розумні, що лише коли повернешся до Eclipse, ти зрозумієш, наскільки це робилось для тебе. Наприклад, розгляньте, як прочитати ресурс з classpath, набравши getResourceAsStream("/в цьому пункті Intellij, покаже вам список можливих файлів, які зараз доступні на classpath, і ви можете швидко перейти до потрібного. Затемнення - немає.

Веб-плагін (з коробки) для Intellij значно перевершує SpringIDE, головним чином завдяки їх перевірки коду. Якщо я пропустив заняття чи щось написав неправильно, то я отримую червоний блок у кутку та червону чорнилу саме там, де проблема полягає. Затемнення - трохи, начебто.

Загалом, Intellij накопичує багато знань про вашу програму, а потім використовує ці знання, щоб допомогти вам швидше писати кращий код.

Не зрозумійте мене неправильно, я люблю Eclipse до шматочків. За ціною немає заміни, і я рекомендую її своїм клієнтам у відсутності Intellij. Але як тільки я пробував Intellij, він окупився протягом тижня, тому я купив його, і з тих пір кожен з основних оновлень. Я ніколи не оглядався.


Саме те, що я шукав. Хоча одне питання, я думаю, у мене є кілька різних ключових відображень, ніж у вас. Чи можете ви уточнити, про які функції ви говорите?
Ніколь

2
Ви можете налаштувати IntelliJ на використання ярликів Eclipse? Це може бути лише останнім поштовхом, який мені потрібно дійсно відпустити IntelliJ - моя м’язова пам'ять стримувала мене. Дякую за пораду!
yatima2975

9
@ yatima2975 Не хвилюйся. Просто загляньте в налаштування, відфільтруйте на "клавіші" і виберіть Eclipse. У вас також є Emacs та купа інших.
Гері Роу

1
Нещодавно на своїй машині Linux я перейшов з Eclipse на IntelliJ IDEA Community Edition (з відкритим кодом та абсолютно безкоштовно) для проекту Java / Android, і в мене був такий же хороший досвід. Ідея просто фантастична. Завантажте його тут: jetbrains.com/idea/free_java_ide.html . Як стверджує JetBrains, IDEA є найрозумнішою Java IDE на ринку. Не зрозумійте мене неправильно: я також використовую і люблю Eclipse, NetBeans та Qt Creator IDE, а також (залежно від завдання та мови).
AlexBottoni

2
Я додам наголос на підтримку javascript, а також на інших мовах фронтального кінця. Intellij включає WebStorm, який сам по собі є фантастичним для передньої частини.
y3sh

16

Я чую, що різниця з IntelliJ полягає в тому, що вони набагато частіше виправляють та закривають ваші помилки . Це може призвести до великої різниці, якщо є помилка Eclipse, яка блокує вас.

З іншого боку, ви не можете дивитися на ІДЕ ізольовано; вам потрібно подивитися на екосистему . Тут я думаю, що Eclipse має перевагу (подібно до переваги Firefox перед Chrome *): Є багато інших плагінів, і розробники мають набагато більше шансів написати плагін Eclipse, ніж інакше.

[Дотична: * Для Firefox я думаю про Zotero та HTTPS-Everywhere. Я використовую Chrome і Firefox, але деякі речі Chrome просто не можуть впоратися. Також під час створення роздаткових матеріалів мені дуже потрібен попередній перегляд друку.]


Чи існують факти, що підтверджують твердження про виправлення помилок? (Я сам завжди борюся, порівнюючи таке вимірювання, особливо з програмним забезпеченням, де не можна легко побачити приплив помилок ... як і більшість комерційних програм, а навіть деякі продукти з відкритим кодом)
johannes

@johannes Хоча я особисто можу поручитися за це, ви можете переконатися на сайті youtrack.jetbrains.com/isissue
y3sh

1
Хоча це правда, що Eclipse пропонує більший набір плагінів, IntelliJ також пропонує всі необхідні плагіни, необхідні для виконання роботи. Іншими словами, перевагу кількості для наявності плагінів слід сприймати в контексті. Я вважаю, що це є основною причиною, чому Eclipse віддається перевазі IntelliJ.
e28Makaveli

13

Відмова від відповідальності
Це обмежується лише розробкою Android (очевидно, на Java).

Я до цього доходжу з деякими обмеженими знаннями про Eclipse та IntelliJ; проте останнім часом мені довелося визначитися із середовищем розробки для Android. Здавалося б, першим зрозумілим вибором було б використання Eclipse, оскільки Google підтримує його своїм плагіном ADT. На жаль, мені було страшно незграбно обійтись, оскільки я звик до Visual Studio (2010, останнім часом 2012). Я завжди використовував ReSharper з Visual Studio, тому вирішив спробувати IntelliJ. Приблизно через 10 хвилин я зрозумів, що прийняв правильне рішення.

IntelliJ, як дехто заявив, все індексує. Працювати з інтелігенцією було радісно, ​​а розвідувальні пропозиції були чудовими. Досвід налагодження, який мені здалося задоволенням, і, чесно кажучи, я не міг жити без аналізу коду. Я знаю, що багато пуристів мали б проблеми з подібними речами, але мені все одно. Мені доводиться дуже швидко витісняти проекти для багатьох людей, тому іноді просто приємно запустити анаільсис коду і подивитися, що пропонує IDE. Якщо ви приймете ці пропозиції чи ні, це вже інша історія, але я не знайшов нічого подібного в Eclipse.

Деякі також кажуть, що в поточній версії IntelliJ немає дизайнера Android. Це, безумовно, так, але я б ніколи не використовував його. Я налагоджую на пристрої більшу частину часу, тому це не має значення. Я можу побачити інтерфейс і грати з ним щоразу, коли запускаю програму. У будь-якому випадку, від традиційно "не-Java" хлопця я повинен сказати, що Java особливо приємна в порівнянні з Eclipse.


6

Вам потрібно яскраво і без сумнівів продемонструвати, що для завдань, які вам потрібно виконувати щодня, IntelliJ дозволяє значно заощадити час та зусилля, на відміну від Eclipse (та NetBeans).

Для цього знадобиться провести кілька досліджень, щоб з’ясувати, що це може бути, а потім побудувати демонстрацію, що показує це людям, які можуть вирішити, як працювати.

Я підозрюю, що для вас це складеться досить важким завданням, оскільки Eclipse в ці дні може зробити досить трохи, досить добре. Якщо ви знайдете очки вбивць, будь ласка, поділіться - я впевнений, що багато хто хоче знати.


2
"Якщо ви знайдете точки вбивць, будь ласка, поділіться - я впевнений, що багато хто хоче знати". - Саме тому я і запитую - важко знайти час, щоб зробити це дослідження або спробувати Eclipse сам (і я, мабуть, упереджений). Я сподіваюся, що я знайду деяких користувачів, які мають хороший досвід роботи з обома!
Ніколь

1
@ Thorbjørn Щоправда, але я говорю про загальні завдання, такі, які застосовні принаймні у всіх випадках використання, які я вважаю досить широкими. Але, якщо є щось конкретне, було б непогано знати, що це теж.
Ніколь

1
@ Thorbjørn Ви маєте рацію в тому, що їх переконає, але я думаю, що тут застосовуються загальні завдання. Моя продуктивність збільшується на 10: 1 за допомогою загальних особливостей підмножини IDE та підмножини, пов’язаних із моєю конкретною роботою. Іншими словами, стандартні функції IDE - це те , що допомагає мені / їм у нашій щоденній роботі.
Ніколь

2
Насправді, для вартості, що вам потрібно реально зробити, - це продемонструвати, що це може заощадити принаймні ~ 10 годин продуктивності протягом всього життя передбачуваного використання (за умови плати програміста $ 25 / год). Все після цього - підлив.
Стівен Еверс

1
Просто для запису. Eclipse та IntelliJ (і Netbeans) добре працюють з Maven. Це означає, що якщо ви використовуєте проекти Maven, ви можете використовувати найбільш відповідний IDE для ситуації, що склалася.

5

Intellij кращий з багатьох причин, не в останню чергу тему даркули ... але є кілька інших:

  • автозаповнення для імен методів - він пропонує те, що я хочу назвати їх конвенцією про призначення.
  • jquery autocomplete дуже простий у налаштуванні (ніколи не отримував це важко з затемненням).
  • Автозаповнення EL у jsp
  • весняна інтеграція та перевірка показує помилки в налаштуванні (наприклад, дублікати назв бобів)
  • автозаповнення для відображення контролера / URL
  • проста у використанні та налаштування інтеграція баз даних (вона автоматично визначає джерело даних) і очевидно автоматично заповнюється
  • перевірка коду, як контрольний стиль та помилки пошуку, вбудовані та прості у використанні.
  • jslint та jshint вбудовані та прості у використанні.
  • інтеграція maven працює прямо з коробки.
  • Усі налаштування - це те, де ви їх очікуєте.
  • Він не виявляє помилок неправильно, я використовував, щоб виділяти помилки в eclisp, де їх не було, і довелося перезапустити.
  • Автозаповнення та виявлення помилок у XML-файлах (велика справа з весною)
  • відображення у сплячому режимі увімкнено автоматичне заповнення (поля "pojos" подаються як опція автозаповнення у відображенні pojo - gr8).
  • ctrl + alt + click відкриває реалізацію, а не декларацію
  • Hotdeploy: ви можете легко налаштувати його так, що коли Intellij втрачає фокусування, розгорнута програма оновлюється автоматично - я вкладаю вкладку до свого браузера, і новий код (будь то класи, javascript або jsps) вже розгорнуто.
  • вбудований клієнт відпочинку без додаткової конфігурації.
  • вбудований клієнт чату, що дозволяє вказувати коди - насправді дуже корисно.
  • перегляд стійкості, простий доступ до всіх ваших jpa / сплячих об'єктів та налаштувань.
  • виправлення помилок, фактичне підзвітне виправлення помилок Я подав ряд помилок, і вони були негайно виправлені.
  • перевірка та автозаповнення у ваших XML-документах, дуже корисна з весною (я знаю, це повторення, але це чудово, виявила безліч помилок).

Я використовую його аботу вже 3 тижні, тому, сподіваюся, скоро знайду ще трохи; його добре коштує грошей.

О, ще одна річ, що насправді відкривається ... У мене було помилка в затемненні, що означало, що він відмовиться відкриватися. Просто "затемнення google navint open" є безліч посилань. Я почуваюся дурним за те, що потрібно довго так змінюватись.


Це дуже корисний список, але ви забули згадати, про яку IDE ви говорите. Виходячи з вашої згадки про версію 12 в останньому реченні, я думаю, це все стосується IntelliJ.
Ксандер Данн

3

Компанія Google нещодавно оголосила, що рухає розробку Android на IntelliJ.

Для цього є причина. Я використовую Eclipse як середовище для викладання курсів протягом останніх кількох років як на C ++, так і на Android / JAVA. Я спостерігав, як якість Eclipse погіршується до чогось, що наближається до непридатного. Восени 2012 року я прийняв для себе курс Eclipse Juno, і це було незручне лихо. Програма не тільки була неймовірно млявою та завантажена помилками, вона мала декілька змін у користувальницькому інтерфейсі, які були поза дурними. Зараз я використовую це як тематичне дослідження в поганому дизайні інтерфейсу користувача.

Я не можу рекомендувати Eclipse нікому в цей момент часу. База даних помилок настільки велика, що немає ймовірності, що вони коли-небудь вирішать навіть незначну частину з них.


Це корисно на високому рівні, але ви могли б детальніше розповісти?
Казарк

1

Я не знаю твердих ударів по особливостям, але одна річ, яку я виявив, використовуючи середовище IntelliJ протягом десятиліття, - це те, що дизайнерські команди JetBrains зробили чудову роботу як ІДЕ "індексує світ", так і підтримують функції індексації та автозаповнення як чуйними, так і послідовними - я зазвичай про це не думаю, але з чуйністю та кількістю комбінацій клавіш (і можливістю відображення більше) IntelliJ дуже легко створює «м'язову пам’ять» при використанні редактора.

Це не маленька річ, коли ви можете писати код, автозаповнювати, компілювати та перевіряти, не залишаючи пальці клавіатури, і таким чином, що це не схоже на стереотипний млявий додаток Java.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.