it-swarm-eu.dev

Jak je IntelliJ lepší než Eclipse?

Vím, že byly otázky jako Jaký je váš oblíbený editor/IDE? , ale žádný z nich neodpověděl na tuto otázku: Proč utrácet peníze za IntelliJ kdy Eclipse je zdarma?

Osobně jsem velkým fanouškem IntelliJ, ale Eclipse jsem opravdu nezkoušel. Používal jsem IntelliJ pro projekty, které byly Java, JSP, HTML/CSS, Javascript, PHP a Actioncript, a nejnovější verzi, 9, byla vynikající pro všechny z nich.

Mnoho spolupracovníků v minulosti mi řeklo, že se domnívají, že Eclipse je „do značné míry stejná“ jako IntelliJ, ale abych tomu čelil, občas jsem seděl za vývojářem pomocí Eclipse, který se zdál srovnatelně neefektivní (dosáhnout zhruba stejného výsledku) úkol) a nezažil jsem to s IntelliJ. Mohou být na par vlastnost-by-feature , ale funkce mohou být zničeny špatným uživatelským dojmem, a zajímalo by mě, jestli je možné, že je IntelliJ snadnější vyzvedněte a objevte funkce šetřící čas.

Pro uživatele, kteří již Eclipse znají, jsou kromě skutečných nákladů na IntelliJ také náklady na čas strávený učením se nové aplikace. Eclipse získává mnoho uživatelů, kteří jednoduše nechtějí utratit 250 $ za IDE.

Pokud by IntelliJ opravdu mohl pomoci mému týmu být produktivnější, jak bych jim je mohl prodat? Pro uživatele, kteří vyzkoušeli oba, by mě velmi zajímaly konkrétní výhody nebo nevýhody.

67
Nicole

Pracuji s Intellij (9.0.4 Ultimate) a Eclipse (Helios) každý den a Intellij bije Eclipse pokaždé.

Jak? Protože Intellij indexuje svět a všechno prostě funguje intuitivně. V Intelliju mohu procházet svou kódovou základnu mnohem, mnohem rychleji. F3 (definice typu) funguje na všem - Java, JavaScript, XML, XSD, Android, Jarní kontexty. Refaktoring funguje všude a je naprosto spolehlivý (měl jsem problémy s tím, jak Eclipse podivává můj zdroj podivným způsobem). CTRL + G (pokud byl použit) funguje všude . CTRL + T (implementace) sleduje nejběžnější instance, které používám, a zobrazuje je jako první.

Návrhy na dokončení kódu a přejmenování jsou tak chytré, že až když se vracíte zpět do Eclipse, uvědomíte si, jak moc to pro vás bylo. Zvažte například čtení zdroje z cesty třídy zadáním getResourceAsStream("/ v tomto okamžiku vám Intellij ukáže seznam možných souborů, které jsou aktuálně k dispozici na cestě třídy a můžete rychle přejít na požadovaný soubor. Eclipse - ne.

(Out of the box) Spring plugin pro Intellij je výrazně lepší než SpringIDE hlavně díky jejich kontrole kódu. Pokud jsem vynechal hodiny nebo hláskoval něco špatně, dostávám červený roh v rohu a červený inkoust právě tam, kde problém leží. Eclipse - tak trochu.

Celkově si Intellij vytváří spoustu znalostí o vaší aplikaci a pak je využívá, aby vám pomohl rychlejším psaním lepších kódů.

Nechápejte mě špatně, miluji Eclipse k kouskům. Za cenu není náhrada a doporučuji ji svým klientům v nepřítomnosti Intellij. Ale jakmile jsem vyzkoušel Intellij, vyplatilo se to do týdne, takže jsem si ho koupil a od té doby každá z hlavních upgradů. Nikdy jsem se neohlédl.

63
Gary Rowe

Slyšel jsem rozdíl s IntelliJ je v tom, že jsou mnohem větší pravděpodobnost, že opraví a uzavře chyby, které odešlete. To by mohlo mít velký význam, pokud by vás nějaká chyba Eclipse blokovala.

Na druhou stranu se na IDE nemůžete dívat izolovaně; musíte se podívat na ekosystém. Zde si myslím, že Eclipse má výhodu (podobná výhodě Firefoxu oproti Chrome *): Existuje mnohem více plug-inů a vývojáři mnohem častěji budou plug-in Eclipse psát než jinak.

[Tangent: * Pro Firefox uvažuji o Zotero a HTTPS-Everywhere. Používám oba Chrome a Firefox, ale některé věci Chrome to prostě neumím zvládnout. Také, když dělám podklady, opravdu potřebuji náhled tisku.]

16
Macneil

Zřeknutí se odpovědnosti
Toto je omezeno na Android vývoj (In Java samozřejmě).

Přicházím k tomu s některými omezenými znalostmi Eclipse a IntelliJ; nedávno jsem se však musel rozhodnout o vývojovém prostředí pro Android. Zdá se, že první jasnou volbou by bylo použití Eclipse, protože Google to podporuje jejich ADT pluginem. Bohužel mi připadalo strašně neohrabané se obejít, protože jsem zvyklý na Visual Studio (2010, více nedávno 2012). S Visual Studio jsem vždy používal ReSharper, takže jsem se rozhodl zkusit IntelliJ. Asi po 10 minutách jsem si uvědomil, že jsem učinil správné rozhodnutí.

IntelliJ, jak někteří uvedli, vše indexuje. Inteligence byla radost z práce a inteligence okolní návrhy byly vynikající. Ladící zážitek mi připadal jako potěšení a docela upřímně jsem bez analýzy kódu nemohl žít. Vím, že spousta puristů by měla s takovou věcí problém, ale je mi to jedno. Pro mnoho lidí musím projekty vysílat velmi rychle, takže někdy je prostě hezké spustit anaylsis kódu a zjistit, co naznačuje návrh IDE). Zda tyto návrhy berete, je jiný příběh, ale já nic takového v Eclipse nenalezl.

Někteří také říkají, že v aktuální verzi IntelliJ neexistuje návrhář pro Android Android). To je jistě případ, ale stejně bych to nikdy nepoužil. Většinu času ladím na zařízení takže na tom nezáleží. Vidím rozhraní a hraju si s ním pokaždé, když spustím program. Každopádně, od tradičně „ne-Java“ chlapa musím říct, že Java je zvláště pěkné ve srovnání s Eclipse.

13
Nodey The Node Guy

Musíte živě a bezpochyby prokázat, že pro úkoly, které musíte denně dělat, umožňuje IntelliJ podstatně spoustu času a úsilí ušetřené na rozdíl od Eclipse (a NetBeans).

To bude vyžadovat, abyste provedli nějaký výzkum, abyste zjistili, co by to mohlo být, a pak vytvořili demonstraci, která by to ukázala lidem, kteří se mohou rozhodnout, jak pracovat.

Moje podezření je, že pro vás bude tento úkol poměrně obtížný, protože Eclipse v těchto dnech dokáže docela dobře, docela dobře. Pokud najdete vrahové body, prosím sdílejte - jsem si jistý, že jich chcete hodně vědět.

6
user1249

Intellij je lepší z mnoha důvodů, v neposlední řadě darcula téma ... ale existuje několik dalších:

  • autocomplete pro názvy metod - nabízí to, co jim chci říkat usign convention.
  • nastavení automatického doplňování jQuů je velmi snadné (nikdy to nefunguje s Eclipse).
  • EL autocompletete in jsp's
  • jarní integrace a inspekce ukazuje chyby v nastavení (např. duplicitní názvy fazolí)
  • automatické doplňování pro mapování řadičů/adres URL
  • snadno se používá a nastavuje integraci databáze (automaticky detekuje zdroj dat) a samozřejmě se automaticky doplňuje
  • inspekce kódu, jako je checkstyle a findbugs, vestavěné a snadno použitelné.
  • vestavěné jslint a jshint a snadno použitelné.
  • integrace maven ihned po vybalení z krabice.
  • Všechna nastavení jsou tam, kde očekáváte, že budou.
  • To nezjistí chyby nesprávně, já jsem se dostat zvýrazněné chyby v zatmění všude tam byly žádné a musel restartovat.
  • Automatické doplňování a detekce chyb v xml souborech (hodně na jaře)
  • mapování hibernace má povoleno automatické doplňování (pole pojos jsou dodávána jako možnost automatického doplňování v mapovaném pojo - gr8).
  • ctrl + alt + click otevře implentaci, nikoli deklaraci
  • Hotdeploy: můžete jej snadno nastavit tak, že když intellij ztratí zaměření, bude vaše nasazená aplikace automaticky aktualizována - I alt kartu do svého prohlížeče a nový kód (ať už jde o třídy, javascript nebo jsps) je již nasazen.
  • vestavěný klient v klidu bez nutnosti další konfigurace.
  • vestavěný chat klient, který umožňuje kódové ukazatele - ve skutečnosti velmi užitečné.
  • zobrazení vytrvalosti, snadný přístup ke všem vašim entitám a nastavením jpa/hibernace.
  • oprava chyb, oprava opravitelných chyb Odešle jsem několik chyb a byly rychle opraveny.
  • kontrola a automatické doplňování ve vašich xml dokumentech, velmi užitečné s jarem (vím, že je to opakování, ale je to skvělé, odhalila nespočet chyb).

Používal jsem to už 3 týdny, takže snad doufám, že se brzy objeví; to stojí za to peníze.

A ještě jedna věc , která se ve skutečnosti otevírá ... Měl jsem v Eclipse chybu, která znamenala, že by se to odmítlo otevřít. Jen „Google Eclipse není otevřený“ existuje spousta odkazů. Cítím se hloupě, že jsem se tak dlouho změnil.

5
NimChimpsky

Google nedávno oznámil, že se pohybuje na vývojovém stupni Android do IntelliJ).

Pro to existuje důvod. Eclipse používám jako prostředí pro výuku kurzů v posledních několika letech v C++ i Android/Java. Sledoval jsem, jak se kvalita Eclipse zhoršuje na něco, co se blíží nepoužitelné. Na podzim 2012 jsem pro svůj kurz přijal Eclipse Juno a byla to nepředvídaná katastrofa. Nejen, že program byl neuvěřitelně pomalý a nabitý chybami, ale došlo k několika změnám uživatelského rozhraní, které byly mimo hloupost. Nyní jej používám jako případovou studii ve špatném návrhu uživatelského rozhraní.

V tuto chvíli nemohu Eclipse nikomu doporučit. Databáze chyb je tak velká, že není žádná šance, že se s nimi někdy vyrovná i jejich malý zlomek.

3
Charles

Nevím o spolehlivých úderech po jednotlivých funkcích, ale jednu věc, kterou jsem objevil s využitím a pouhým používáním prostředí IntelliJ asi deset let, je to, že designérské týmy v JetBrains odvedly skvělou práci oba mají IDE "indexovat svět") a také udržují funkce indexování a automatického doplňování jak responzivní, tak konzistentní - obvykle o tom nepřemýšlím, ale s citlivostí plus číslo klávesových zkratek (a schopnost mapovat více), IntelliJ usnadňuje vytváření "svalové paměti" při použití editoru.

Není to malá věc, když můžete psát kód, automaticky doplňovat, kompilovat a testovat bez toho, aby vaše prsty opustily klávesnici, a způsobem, který se necítí jako stereotypní pomalý Java aplikace).

1
Chad Thompson