En quoi IntelliJ est-il meilleur que Eclipse? [fermé]


67

Je sais qu'il y a eu des questions telles que Quel est votre éditeur / IDE préféré? , mais aucun d’entre eux n’a répondu à la question: Pourquoi dépenser de l’argent pour IntelliJ alors qu’Eclipse est gratuit?

Personnellement, je suis un grand fan d'IntelliJ, mais je n'ai pas vraiment essayé Eclipse. J'ai utilisé IntelliJ pour des projets tels que Java, JSP, HTML / CSS, Javascript, PHP et Actionscript, et la dernière version, 9, a été excellente pour chacun d'entre eux.

Dans le passé, de nombreux collègues m'ont dit qu'ils pensaient qu'Eclipse était «à peu près le même» qu'IntelliJ, mais pour contrer ce point, je me suis parfois assis derrière un développeur utilisant Eclipse qui semblait comparativement inefficace (pour accomplir à peu près la même chose). tâche) et je n’ai pas expérimenté cela avec IntelliJ. Ils peuvent être à égalité fonction par fonction , mais les caractéristiques peuvent être ruinés par une expérience utilisateur médiocre, et je me demande s'il est possible que IntelliJ est plus facile de ramasser et découvrir de gagner du temps.

Pour les utilisateurs déjà familiarisés avec Eclipse, en plus du coût réel d'IntelliJ, il existe également un coût en temps d'apprentissage de la nouvelle application. Eclipse attire beaucoup d'utilisateurs qui ne veulent tout simplement pas dépenser 250 USD en IDE.

Si IntelliJ pouvait réellement aider mon équipe à être plus productive, comment pourrais-je le leur vendre? Pour les utilisateurs qui ont essayé les deux, je serais très intéressé par les avantages ou les inconvénients spécifiques dans les deux cas.


3
Vous constaterez peut-être un biais de sélection ici. Un client IntelliJ est beaucoup plus susceptible d’apprendre les fonctionnalités et les raccourcis que votre utilisateur Eclipse moyen.
Macneil

3
Je ne pousserais pas les autres à utiliser les outils qui fonctionnent pour vous. C'est très subjectif, et des choses stupides comme celles-ci peuvent ruiner une relation déjà établie. Si vous avez le choix d’utiliser IntelliJ ou Eclipse et que le projet se compile parfaitement en utilisant l’un ou l’autre - désactivez-vous, utilisez IntelliJ. Si vous souhaitez en faire la promotion, mentionnez-la simplement lorsque le moment est opportun. Les adultes le détestent autant que les enfants quand d'autres essaient de prendre des décisions à leur place. Vous pouvez toujours les convaincre de changer de poste, mais il faut que ce soit "LEUR" décision, et il vous suffit donc de faire bonne impression à la bonne minute.
Job

@Job, je suis d'accord avec ça. J'aimerais savoir A) si IntelliJ a un réel avantage sur Eclipse, afin que B) si c'est le cas, je peux le vendre, pas le rendre obligatoire.
Nicole

Vous réalisez qu'IntelliJ a une version gratuite non? Vous ne pouvez pas donner l'impression que la seule option est la version
payante

@TheLQ, vous avez raison, par souci de brièveté, j'ai supposé que les utilisateurs familiarisés avec IntelliJ seraient également familiarisés avec les limitations de la version gratuite. Personnellement, je n'ai jamais eu de projet où il aurait été utile, car j'ai toujours eu besoin de plus que du simple composant Java.
Nicole

Réponses:


63

Je travaille avec Intellij (9.0.4 Ultimate) et Eclipse (Helios) tous les jours et Intellij bat Eclipse à chaque fois.

Comment? Parce qu'Intellij indexe le monde et que tout fonctionne de manière intuitive. Je peux naviguer dans ma base de code beaucoup, beaucoup plus rapidement dans Intellij. F3 (définition de type) fonctionne sur tout - les contextes Java, JavaScript, XML, XSD, Android et Spring. Le refactoring fonctionne partout et est totalement fiable (j'ai eu des problèmes avec Eclipse qui gâchait mon source de façon étrange). CTRL + G (où utilisé) fonctionne partout . CTRL + T (implémentations) garde la trace des instances les plus courantes que j'utilise et les montre en premier.

La complétion de code et les suggestions de changement de nom sont si astucieuses que ce n’est que lorsque vous retournez dans Eclipse que vous réalisez tout ce que vous avez fait. Par exemple, envisagez de lire une ressource du getResourceAsStream("/chemin de classe en tapant à ce stade. Intellij vous montrera une liste des fichiers possibles actuellement disponibles sur le chemin de classe et vous pourrez accéder rapidement à celui que vous voulez. Eclipse - Nope.

Le plug-in Spring (prêt à l'emploi) pour Intellij est nettement supérieur à SpringIDE, principalement en raison de ses inspections de code. Si j'ai manqué des cours ou écrit quelque chose de mal, je reçois un bloc rouge dans le coin et de l'encre rouge à l'endroit où réside le problème. Eclipse - un peu, en quelque sorte.

Dans l’ensemble, Intellij accumule de nombreuses connaissances sur votre application, qu’il utilise ensuite pour vous aider à rédiger du code de meilleure qualité et plus rapidement.

Ne vous méprenez pas, j'aime Eclipse en petits morceaux. Pour le prix, il n'y a pas de substitut et je le recommande à mes clients en l'absence d'Intellij. Mais une fois que j’avais testé l’Intellij, elle s’est payée en une semaine et je l’ai donc achetée, ainsi que chacune des améliorations majeures apportées depuis. Je n'ai jamais regardé en arrière.


Exactement ce que je cherchais. Une question cependant, je pense que j’ai quelques mappages de clés différents de vous. Pouvez-vous préciser quelles sont les fonctions dont vous parlez?
Nicole

2
Vous pouvez configurer IntelliJ pour utiliser les raccourcis Eclipse? Cela pourrait bien être la dernière poussée dont j'ai besoin pour vraiment essayer IntelliJ - ma mémoire musculaire me retenait. Merci pour le conseil!
Yatima2975

9
@ Yatima2975 Pas de soucis. Il suffit de regarder dans les préférences, filtrer sur "keymap" et sélectionnez Eclipse. Vous avez aussi Emacs et bien d’autres.
Gary Rowe

1
Sur ma machine Linux, je suis récemment passé d’Eclipse à IntelliJ IDEA Community Edition (open source et entièrement gratuit) pour un projet Java / Android et j’ai eu la même bonne expérience. IDEA est tout simplement fantastique. Téléchargez-le ici: jetbrains.com/idea/free_java_ide.html . Comme l'affirme JetBrains, IDEA est l'IDE Java le plus intelligent du marché. Ne vous méprenez pas non plus: j'utilise et aime aussi les IDE Eclipse, NetBeans et Qt Creator (en fonction de la tâche et de la langue utilisée).
AlexBottoni

2
J'ajouterai un accent sur le support javascript ainsi que sur d'autres langues frontales. Intellij inclut WebStorm, ce qui en soi est fantastique pour front-end.
Y3SCH

16

J'entends dire que la différence avec IntelliJ est qu’ils sont beaucoup plus susceptibles de corriger et de fermer les bogues que vous soumettez. Cela pourrait faire une grande différence si un bogue Eclipse vous bloque.

D'autre part, vous ne pouvez pas examiner les IDE de manière isolée; vous devez regarder l'écosystème . Ici, je pense qu'Eclipse a un avantage (similaire à celui de Firefox par rapport à Chrome *): il existe beaucoup plus de plug-ins disponibles, et les développeurs sont beaucoup plus susceptibles d'écrire un plug-in Eclipse qu'autrement.

[Tangent: * Pour Firefox, je pense à Zotero et HTTPS-Everywhere. J'utilise à la fois Chrome et Firefox, mais certaines choses que Chrome ne peut tout simplement pas gérer. De plus, lors de la préparation de documents, j'ai vraiment besoin d'un aperçu avant impression.]


Existe-t-il des faits à l'appui de la déclaration sur la résolution des bogues? (J'ai moi-même toujours du mal à comparer une telle mesure, en particulier avec un logiciel où il est difficile de voir l'afflux de bogues ... comme la plupart des logiciels commerciaux et même certains produits open source)
johannes

@johannes Bien que je puisse personnellement en témoigner, vous pouvez le constater vous-même à l' adresse youtrack.jetbrains.com/issues
y3sh le

1
S'il est vrai qu'Eclipse propose un plus grand nombre de plug-ins, IntelliJ offre également tous les plug-ins nécessaires pour effectuer le travail. En d’autres termes, l’avantage numérique de la disponibilité du plug-in doit être pris en contexte. Je vois cela comme la raison principale pour laquelle Eclipse est préféré à IntelliJ.
e28Makaveli

13

Disclaimer
Ceci est limité au développement Android uniquement (en Java évidemment).

J'y viens avec une connaissance limitée d'Eclipse et d'IntelliJ; Cependant, j'ai récemment dû choisir un environnement de développement pour Android. Il semblerait que le premier choix serait d’utiliser Eclipse puisque Google le supporte avec son plugin ADT. Malheureusement, je trouvais extrêmement difficile de me déplacer puisque je suis habitué à Visual Studio (2010, plus récemment 2012). J'ai toujours utilisé ReSharper avec Visual Studio, alors j'ai décidé d'essayer IntelliJ. Après environ 10 minutes, j'ai réalisé que j'avais pris la bonne décision.

Comme certains l’ont dit, IntelliJ indexe tout. L'intellisense était un plaisir de travailler avec et l'intelligence entourant les suggestions était excellente. L’expérience de débogage que j’ai trouvée être un plaisir et très honnêtement, je ne pourrais vraiment pas vivre sans l’analyse de code. Je sais que beaucoup de puristes auraient un problème avec ce genre de chose, mais je m'en fiche. Je dois développer très rapidement des projets pour beaucoup de gens, il est donc parfois agréable de lancer l'analyse du code et de voir ce que l'EDI suggère. Que vous preniez ces suggestions ou non est une autre histoire, mais je n’ai rien trouvé de tel dans Eclipse.

Certains disent également qu'il n'y a pas de concepteur Android dans la version actuelle d'IntelliJ. C’est certainement le cas, mais je ne l’utiliserais jamais de toute façon. Je débogue sur un périphérique la plupart du temps, alors ce n'est pas grave. Je peux voir l'interface et jouer avec à chaque fois que je lance le programme. Quoi qu'il en soit, d'un gars traditionnellement "non-Java", je dois dire que Java est particulièrement agréable par rapport à Eclipse.


6

Vous devez démontrer clairement et sans aucun doute que pour les tâches à effectuer au quotidien, IntelliJ permet une économie de temps et d’efforts substantielle par rapport à Eclipse (et NetBeans).

Cela vous demandera de faire des recherches pour savoir ce que cela pourrait être, puis de construire une démonstration montrant cela aux personnes qui peuvent décider comment travailler.

Je pense que vous trouverez cela assez difficile à faire, comme Eclipse peut le faire assez bien, assez bien. Si vous trouvez des points meurtriers, partagez-les - je suis sûr que beaucoup de gens veulent savoir.


2
"Si vous trouvez des points meurtriers, partagez-les, je suis sûr que beaucoup de gens veulent savoir." C'est en fait la raison pour laquelle je pose la question. Il est difficile de trouver le temps de faire cette recherche ou d'essayer Eclipse moi-même (et je suis probablement biaisé de toute façon). J'espère découvrir des utilisateurs qui ont une bonne expérience avec les deux!
Nicole

1
@ Thorbjørn C'est vrai, mais je parle de tâches générales, du type qui s'applique à au moins tous les cas d'utilisation que j'ai eu, qui sont, je pense, assez larges. Mais s'il y a quelque chose de spécifique, ce serait bien de savoir ce que c'est aussi.
Nicole

1
@ Thorbjørn Vous avez raison de savoir ce qui va les convaincre, mais je pense que les tâches générales s'appliquent ici. Ma productivité est augmentée de 10: 1 par les fonctionnalités générales d'un IDE par rapport à des sous-ensembles de fonctionnalités liés à mon travail spécifique. En d'autres termes, les fonctionnalités standard de l'EDI sont ce qui m'aide dans notre travail quotidien.
Nicole

2
En réalité, pour le coût, tout ce que vous avez à faire de façon réaliste est de démontrer qu’il peut économiser au moins 10 heures de productivité au cours de la durée de vie de son utilisation prévue (en supposant que le programmeur paye 25 $ / heure). Après tout, c'est de la sauce.
Steven Evers

1
Juste pour info. Eclipse et IntelliJ (et Netbeans) fonctionnent bien avec Maven. Cela signifie que si vous utilisez des projets Maven, vous pouvez utiliser l'EDI le plus approprié à la situation.

5

Intellij est meilleur pour plusieurs raisons, notamment le thème de la darcula ... mais il y en a quelques autres:

  • autocomplete pour les noms de méthodes - il offre ce que je veux appeler les conventions usign.
  • jquery autocomplete tres facile a mettre en place (jamais eu le travail avec eclipse).
  • EL autocomplete dans jsp's
  • L'intégration et l'inspection de printemps montrent des erreurs de configuration (par exemple, noms de beans en double)
  • autocomplete pour mappages contrôleur / url
  • Intégration facile à utiliser et à configurer dans la base de données (il détecte automatiquement la source de données) et à compléter automatiquement
  • inspections de code, comme checkstyle et findbugs, intégrées et faciles à utiliser.
  • jslint et jshint intégrés et faciles à utiliser.
  • Maven Integration fonctionne immédiatement.
  • Tous les paramètres sont là où vous vous attendez.
  • Il ne détectait pas les erreurs de manière incorrecte, j'avais l'habitude d'obtenir les erreurs surlignées dans eclisp ewhere, il n'y en avait pas et je devais les redémarrer.
  • Autocomplete et détection d'erreur dans les fichiers XML (un gros problème avec Spring)
  • La fonction de saisie semi-automatique est activée pour les mappages hibernate (les champs d'un pojos sont fournis en tant qu'option de saisie semi-automatique dans pojo-gr8 mappé).
  • ctrl + alt + clic ouvre l'implémentation, pas la déclaration
  • Hotdeploy: vous pouvez facilement le configurer pour que lorsque votre application déployée soit perdue, votre application déployée soit automatiquement mise à jour - cliquez sur l'onglet de mon navigateur et le nouveau code (qu'il s'agisse de classes, de javascript ou de jsps) est déjà déployé.
  • un client de repos intégré sans configuration supplémentaire requise.
  • construit dans le client de chat qui permet aux pointeurs de code - en fait très utile.
  • vue de persistance, un accès facile à toutes vos entités et paramètres jpa / hibernate.
  • correction de bugs, correction de bugs comptables responsables J'ai soumis un certain nombre de bugs et ils ont été corrigés rapidement.
  • inspection et autocomplete dans vos documents xml, très très utiles avec spring (je sais que c'est une répétition mais c'est génial, a révélé une myriade d'erreurs).

Je l'utilise depuis près de 3 semaines maintenant, alors espérons-en en trouver d'autres bientôt; sa vaut bien l'argent.

Oh, une dernière chose qu'elle ouvre réellement ... J'ai eu un bug dans mon éclipse qui signifiait qu'elle refuserait de s'ouvrir. Juste "google eclipse n'ouvrira pas", il y a des tas de liens. Je me sens stupide de prendre ce temps pour changer.


C'est une liste très utile, mais vous avez oublié de mentionner de quel IDE vous parlez. D'après votre mention de la version 12 dans la dernière phrase, je suppose qu'il s'agit d'IntelliJ.
Xander Dunn

3

Google a récemment annoncé son intention de transférer le développement Android vers IntelliJ.

Il y a une raison pour cela. J'utilise Eclipse comme environnement pour dispenser des cours ces dernières années à la fois en C ++ et en Android / JAVA. J'ai vu la qualité d'Eclipse se détériorer pour devenir inutilisable. À l'automne 2012, j'ai adopté Eclipse Juno pour mon cours et ce fut un désastre total. Non seulement le programme était incroyablement lent et chargé de bogues, mais il comportait plusieurs modifications de l'interface utilisateur qui étaient bien plus stupides. Je l'utilise maintenant comme étude de cas dans une mauvaise conception d'interface utilisateur.

Je ne peux recommander Eclipse à personne pour le moment. La base de données de bogues est devenue si volumineuse qu'il n'y a aucune chance pour qu'ils n'en traitent jamais, même une petite fraction.


C'est utile à un niveau élevé, mais pourriez-vous donner plus de détails?
Kazark

1

Je ne connais pas d'inconvénient majeur, fonctionnalité par fonctionnalité, mais une des choses que j'ai découvertes au cours de l'utilisation intensive de l'environnement IntelliJ pendant environ une décennie, c'est que les équipes de conception de JetBrains ont fait un travail remarquable. tous deux ayant l'IDE "indexant le monde" et conservant les fonctions d'indexation et de saisie semi-automatique à la fois réactives et cohérentes - je n'y pense généralement pas, mais avec la réactivité plus le nombre de raccourcis clavier (et la possibilité de mapper En outre), IntelliJ rend très facile la création de "mémoire musculaire" avec l’éditeur.

Ce n'est pas une mince affaire que vous puissiez écrire du code, compléter automatiquement, compiler et tester sans que vos doigts ne quittent le clavier, et cela ne ressemble pas à une application Java lente stéréotypée.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.