JavaRush /Blog Java /Random-FR /Eclipse, NetBeans ou IntelliJ IDEA ? Choisir un IDE pour ...
Bender
Niveau 1
Маунтин-Вью

Eclipse, NetBeans ou IntelliJ IDEA ? Choisir un IDE pour le développement Java

Publié dans le groupe Random-FR
Eclipse, NetBeans ou IntelliJ IDEA ?  Choisir un IDE pour le développement Java - 1Nous présentons à votre attention une adaptation d'un article de Martin Heller, programmeur et éditeur de la ressource JavaWorld. Vous avez probablement déjà entendu parler des trois IDE les plus populaires pour le développement Java. 90 % des programmeurs industriels utilisent Eclipse, NetBeans ou IntelliJ IDEA, et chacun de ces IDE présente ses propres avantages et inconvénients. Dans cet article, nous allons essayer de les décrire afin que vous compreniez lequel vous convient le mieux. Bien sûr, il est préférable d’essayer les trois au travail et de découvrir ce qui vous convient le mieux. Aucune critique ne peut remplacer cela.

Qu'est-ce qu'un environnement de développement ?

La réponse très courte est qu'un environnement de développement est un ou plusieurs programmes que vous utilisez pour créer des programmes. Ce processus comprend en fait l'écriture du code, son débogage, son lancement et son intégration aux systèmes de contrôle de version. Si les développeurs précédents utilisaient souvent un simple éditeur de texte (parfois même sans coloration syntaxique), comme le Bloc-notes et la ligne de commande, ils utilisent désormais le plus souvent des processeurs tout-en-un, des environnements de développement intégrés ou des IDE.

Qu’est-ce qu’un IDE ?

Environnement de développement intégré ou en anglais Environnement de développement intégré - IDE - est un programme qui contient des outils pour le développement de logiciels. En règle générale, un environnement de développement moderne comprend :
  • Éditeur de texte avec surbrillance du code ;
  • compilateur ou interprète ;
  • Navigateur de classes, inspecteur d'objets et diagramme de hiérarchie de classes ;
  • outils d'automatisation de l'assemblage ;
  • débogueur ;
  • outils d'intégration avec les systèmes de contrôle de version (Git);
  • des outils pour simplifier la conception d’une interface utilisateur graphique.
J'ai déjà travaillé avec ces IDE, mais pour cette étude, j'ai installé IntelliJ IDEA Ultimate 2016.2, Eclipse Neon Java EE et NetBeans 8.1 Java EE sur un ordinateur portable MacBook Pro. J'ai testé l'IDE sur plusieurs projets Java open source.

À quoi s'attendre d'un IDE

Un IDE moderne pour un « développeur Java sain » devrait prendre en charge Java 8, Scala, Groovy, ainsi que d'autres langages de machine virtuelle Java qu'il utilise régulièrement. La prise en charge des principaux serveurs d'applications et des frameworks Web les plus populaires, notamment Spring MVC, JSF, Struts, GWT, Play, Wicket, Grails et Vaadin, serait également utile. L'IDE doit être compatible avec toutes les versions de système de contrôle de version, telles que Ant, Maven ou Gradle, ainsi que Git, SVN, CVS, Mercurial ou Bazaar. De plus, pour l'environnement de développement, il est important de pouvoir travailler avec des bases de données et la couche client de votre pile, de prendre en charge JavaScript, TypeScript, HTML, SQL, JavaServer Pages, Hibernate, ainsi que Java Persistence. API. Enfin, il est logique d'espérer que l'EDI vous permettra d'éditer, de créer, de déboguer et de tester des systèmes sans stress inutile. Idéalement, l’environnement de développement prend en charge non seulement la complétion intelligente du code, mais également la refactorisation intelligente et les métriques du code. Dans de nombreux cas, il sera utile de prendre en charge les frameworks et les stubs de test. Si votre équipe utilise un système de tickets et CI/CD, vous avez besoin de l'IDE pour pouvoir vous y connecter. Et décidez si vous avez besoin d’un déploiement et d’un débogage dans des conteneurs et des cloud. Nous n’avons répertorié que les attentes de base (vous avez peut-être quelque chose à ajouter), et examinons maintenant de plus près nos concurrents.

IDÉE IntelliJ

Eclipse, NetBeans ou IntelliJ IDEA ?  Choisir un IDE pour le développement Java - 2En termes de fonctionnalités et de prix, IntelliJ IDEA est disponible en deux versions : l'édition Community gratuite et l'édition Ultimate payante avec des fonctionnalités étendues. L'édition communautaire est conçue pour le développement JVM et Android. La version gratuite prend en charge Java, Kotlin, Groovy et Scala ; Android; Maven, Gradle et SBT ; fonctionne avec les systèmes de contrôle de version Git, SVN, Mercurial et CVS. L'édition Ultimate convient au développement Web et d'entreprise. Cette version de l'EDI fonctionne non seulement avec Git, SVN, Mercurial et CVS, mais aussi avec Perforce, ClearCase et TFS ; vous pouvez y écrire en JavaScript et TypeScript ; Naturellement, Java EE, Spring, GWT, Vaadin, Play, Grails et un certain nombre d'autres frameworks sont pris en charge. Et bien sûr, nous ne pourrions pas nous passer de SQL et des outils permettant de travailler avec des bases de données. L'idée qui guide les développeurs de cet IDE lors de l'élaboration d'une politique tarifaire est que sa version commerciale (Ultimate) prendra sa place sur les ordinateurs des professionnels, grâce à quoi leur productivité augmentera. Si un programmeur Java gagne 50 000 $ par an (ou même plus), le retour sur investissement dépensé pour l'IDE payant IntelliJ IDEA (500 $ pour un abonnement annuel) se produira très rapidement en raison même d'une légère accélération de son travail. Au cours des années suivantes, le prix diminue pour les entreprises, pour les startups et les indépendants, il est nettement inférieur et pour les étudiants, les enseignants, les champions Java et les développeurs open source, il est totalement gratuit. IntelliJ IDEA impressionne par sa compréhension approfondie du code, son ergonomie intelligente, ses fonctionnalités de développement intégrées et sa prise en charge multilingue. Eclipse, NetBeans ou IntelliJ IDEA ?  Choisir un IDE pour le développement Java - 3
Figure 1. IntelliJ IDEA affiche le nombre d'avertissements et de suppositions basées sur l'analyse statistique du code Java. Vous pouvez étudier les hypothèses plus en détail en cliquant dessus, comme le montre l'image ; dans de nombreux cas, vous recevrez une liste de choix et d'options de correction.

Compréhension approfondie du code

La coloration syntaxique et la complétion simple du code sont monnaie courante dans tous les éditeurs Java modernes. IDEA est allé plus loin en proposant une « saisie semi-automatique intelligente ». Ce terme signifie que l'environnement de développement affiche une liste des symboles les plus pertinents applicables dans un contexte donné. La liste des symboles dépend non seulement du contexte en tant que tel, celui « généralement accepté », mais aussi du style de programmation du développeur, de la fréquence à laquelle il utilise certains opérateurs. « Chain Completion » affiche même une liste de symboles applicables qui sont autorisés via des méthodes ou des getters dans le contexte actuel. De plus, pour les membres statiques ou les constantes, IDEA ajoute automatiquement toutes les instructions d'importation nécessaires. Dans tous les cas d'auto-complétion, IDEA tente de deviner le type du symbole au moment de l'exécution, d'affiner sa sélection et même d'appliquer une conversion de type si nécessaire. Le code Java inclut souvent des extraits d'autres langages sous forme de chaînes. IDEA peut injecter du code SQL, XPath, HTML, CSS ou JavaScript dans des littéraux de chaîne Java. En ce sens, l’EDI peut refactoriser le code dans plusieurs langues. Par exemple, si vous renommez une classe dans un mappage JPA, IDEA mettra à jour l'entité JPA et la classe d'expression correspondantes. Lors de la refactorisation d'un morceau de code, le développeur a une envie (assez naturelle) : que tous les doublons de ce code soient également refactorisés. IDEA Ultimate trouve les doublons et les fragments similaires et leur applique également une refactorisation. IntelliJ IDEA analyse le code lors du chargement et directement lorsque vous le saisissez. Il signale les problèmes suspectés (comme dans notre image ci-dessus) et propose éventuellement une liste de solutions rapides probables aux problèmes détectés.

Ergonomie

Eclipse, NetBeans ou IntelliJ IDEA ?  Choisir un IDE pour le développement Java - 4IntelliJ IDEA est conçu pour ne pas faire sortir un développeur d'un état de productivité fluide une fois qu'il y est déjà. La fenêtre Projet, affichée dans la première image à gauche, disparaît d'un simple clic de souris afin que le programmeur puisse se concentrer sur la fenêtre de l'éditeur de code. Pour toutes les actions nécessaires lors de l'écriture du code, il existe des combinaisons de touches permettant de les appeler rapidement, notamment en définissant des symboles dans les fenêtres contextuelles. Au début, toutes ces combinaisons sont difficiles à retenir, mais petit à petit on s'y habitue et on ne les utilise que. Cependant, même si le programmeur n'utilise pas de raccourcis clavier, comme le montre la pratique, il s'habitue facilement et rapidement à travailler dans IDEA. Je voudrais surtout souligner le débogueur IDEA : les valeurs des variables sont affichées directement dans la fenêtre de l'éditeur, à côté du code source correspondant. Lorsque l'état d'une variable change, la couleur de surbrillance change également.

Outils intégrés

IntelliJ IDEA fournit une interface unifiée à la plupart des systèmes de contrôle de version, notamment Git, SVN, Mercurial, CVS, Perforce et TFS. Vous pouvez gérer les modifications directement dans l'EDI, ce qui est très pratique. Lorsque je testais IDEA, je souhaitais que la dernière modification du code source apparaisse dans la fenêtre de l'éditeur sous forme d'annotation (comme cela arrive, par exemple, dans Visual Studio). Il s'avère qu'IDEA dispose d'un plugin spécial pour cela. IDEA est également livré avec des outils de construction, un environnement d'exécution de test, des outils de couverture et une fenêtre de terminal intégrée. IntelliJ ne possède pas son propre profileur, mais des profileurs tiers peuvent y être connectés à l'aide de plugins. Par exemple, YourKit, créé par un ancien développeur principal de JetBrains, ou VisualVM (qui est une version reconditionnée du profileur NetBeans). Le débogage en Java peut être pénible lorsque toutes sortes de choses mystérieuses arrivent à des classes dont vous n'avez pas la source. IDEA inclut un décompilateur pour de tels cas. La programmation côté serveur en Java nécessite une interaction fréquente avec les bases de données. Les programmeurs IDEA Ultimate apprécieront donc la commodité des outils permettant de travailler avec SQL et les bases de données. Mais si leurs capacités ne suffisent pas à quelqu'un, vous pouvez acheter la version IDEA Ultimate avec un IDE SQL intégré (DataGrip). Cependant, il sera légèrement plus cher que l’abonnement IDEA Ultimate classique. IntelliJ IDEA prend en charge tous les principaux serveurs d'applications JVM et vous permet de déployer et de déboguer sur ces serveurs, ce qui élimine les difficultés familières à tous les programmeurs Java Enterprise. IDEA prend également en charge Docker (via un plugin qui ajoute une fenêtre d'outil Docker spéciale à l'environnement de développement. À propos, IDEA dispose d'une tonne de plugins.  

Un vrai polyglotte

IDEA a étendu la prise en charge du code pour Spring, Java EE, Grails, Play, Android, GWT, Vaadin, Thymeleaf, Android, React, AngularJS et d'autres frameworks. Vous avez probablement remarqué que tous ne sont pas spécifiques à Java. IDEA « comprend » d'autres langages dès le départ - Groovy, Kotlin, Scala, JavaScript, TypeScript et SQL. Si vous ne voyez pas le langage que vous recherchez dans cette liste, il existe actuellement 19 plugins de langage IntelliJ, prenant spécifiquement en charge R, Elm et D.

Eclipse

Eclipse, NetBeans ou IntelliJ IDEA ?  Choisir un IDE pour le développement Java - 5 Il y a environ 10 ans, interrogé sur le meilleur IDE, un développeur Java a répondu avec assurance : Eclipse. Pendant de nombreuses années, cet environnement de développement a tenu la palme parmi les IDE Java. Cet environnement est entièrement gratuit, open source, écrit principalement en Java. Cependant, son architecture modulaire permet d'utiliser Eclipse avec d'autres langages. Le projet Eclipse, initié par IBM, est apparu en 2001. Ils souhaitaient remplacer la famille d'environnements de développement IBM Visual Age basée sur Smalltalk. Eh bien, l'objectif principal, comme son nom l'indique, était d'éclipser Microsoft Visual Studio (eclipse en anglais signifie éclipse). La portabilité de Java permet à Eclipse d'être un environnement multiplateforme : cet IDE fonctionne sous Linux, Mac OS X, Solaris et Windows. Pour le meilleur ou pour le pire, le Java Standard Widget Toolkit (SWT) est au moins en partie responsable de l'apparence d'Eclipse. Eclipse doit ses performances (ou, comme le disent certains sympathisants, son absence) à la JVM. Eclipse fonctionne assez lentement, car il est enraciné dans un matériel plutôt ancien et dans d'anciennes versions de la JVM. Même aujourd’hui, cela semble lent, surtout si vous y attachez de nombreux plugins. Une partie de la surcharge de ressources d'Eclipse peut être attribuée à son compilateur incrémentiel intégré, qui s'exécute chaque fois qu'un fichier est chargé ou que le code est mis à jour. C'est une chose utile : elle détecte les erreurs lors de la saisie de texte. Quelle que soit la version, le projet Eclipse gère un modèle de contenu qui contient des informations sur la hiérarchie des types, des références et des déclarations des éléments Java. La version actuelle d'Eclipse s'appelle Neon (4.6.0). J'ai installé Eclipse Java EE IDE pour les développeurs Web (ce n'est pas la seule option, vous pouvez choisir autre chose). Il contient un SDK Eclipse minimal et des plugins sont ajoutés à la demande. À propos, travailler avec des plugins dans cet IDE n'est pas pour les âmes sensibles. Les plugins tiers sont souvent en conflit les uns avec les autres, bien que leurs spécifications officielles n'en disent rien. Eclipse, NetBeans ou IntelliJ IDEA ?  Choisir un IDE pour le développement Java - 6
Figure 2. De gauche à droite, il existe quatre barres d'outils Eclipse : Explorateur de packages, Éditeur Java, Structure de classes Java et Liste des tâches. Le projet chargé dans Eclipse dans cette image est le framework de test JUnit. Les panneaux peuvent être facilement échangés.

Prise en charge des plugins

L'écosystème de plugins d'Eclipse est à la fois la force de l'EDI et l'un de ses principaux problèmes. C'est à cause de l'incompatibilité des plugins que parfois des assemblys entiers plantent et que les programmeurs doivent recommencer à travailler. Il existe actuellement plus de 1 700 plugins écrits pour Eclipse, officiels et non officiels, qui peuvent ou non fonctionner très bien. Les plugins Eclipse prennent en charge plus de 100 langages de programmation et près de 200 frameworks de développement d'applications. La plupart des serveurs Java sont également pris en charge : si vous désignez une nouvelle connexion serveur depuis Eclipse, vous serez redirigé vers une liste de dossiers de fournisseurs où vous trouverez environ 30 serveurs d'applications. Il y aura jusqu'à neuf variantes d'Apache Tomcat. Les fournisseurs commerciaux ont tendance à regrouper leurs solutions : par exemple, il n'y a qu'un seul élément Red Hat JBoss Middleware, et à l'intérieur vous trouverez les outils serveur WildFly et EAP, ainsi que JBoss AS.

Édition, refactoring et débogage

Votre première expérience avec Eclipse peut être déroutante, voire déroutante. La première étape consiste à configurer Eclipse et à s'habituer à son architecture conceptuelle d'espaces de travail, de vues et de vues. Tout cela est déterminé par les plugins que vous avez installés. Pour le développement Java côté serveur, vous utiliserez probablement les vues de navigation Java, Java EE et Java, la vue Explorateur de packages, la vue de débogage, la vue de synchronisation des commandes des outils Web, la vue de développement de base de données et la vue de débogage de base de données. En pratique, tout prend tout son sens lorsque l’on ouvre les fenêtres dont on a besoin. Eclipse propose presque toujours plusieurs façons de résoudre un problème particulier. Par exemple, vous pouvez afficher le code à l'aide de la perspective de navigation Java. Que choisir est une question de goût et de choix. Une recherche Java spéciale vous permet de trouver des déclarations, des références et des occurrences de packages, types, méthodes et champs Java. Vous pouvez également utiliser l'accès à la recherche rapide et l'aperçu. Des modèles de code courants peuvent être générés à partir de modèles de code. Java Refactoring dans Eclipse prend en charge 23 opérations, allant des opérations de renommage courantes aux transformations moins évidentes (comme dans le livre de Martin Fowler). Eclipse prend en charge le débogage local et distant, à condition que vous utilisiez une JVM prenant en charge le débogage à distance. Le débogage est assez standard : vous définissez des points d'arrêt puis affichez les variables dans l'onglet de débogage. Bien sûr, vous pouvez parcourir votre code et évaluer les expressions. Eclipse dispose d'une vaste base de données de documentation d'âges, de valeurs et d'utilité variables. Malheureusement, trouver une image dans les instructions qui ne correspond pas à la version actuelle, par exemple avec une interface et une disposition des boutons obsolètes, est un phénomène courant pour cet IDE. Malheureusement, le problème des mises à jour tardives de la documentation est très courant pour tout projet de code source.

NetBeans

Eclipse, NetBeans ou IntelliJ IDEA ?  Choisir un IDE pour le développement Java - 7NetBeans a débuté en tant que projet étudiant universitaire à Prague en 1996. En 1997, l'IDE est devenu un produit commercial, et en 1999, il a été racheté par Sun Microsystems (les parents de Java) et a présenté l'année suivante une version open source. La version actuelle 8.1 fonctionne sur les machines exécutant Windows, Mac OS X, Linux et Solaris. Eh bien, le package portable peut être exécuté sur n’importe quel système pour lequel une machine Java existe. J'ai téléchargé le bundle Java EE pour moi-même, c'est l'un des six packages de téléchargement possibles. Ce bundle supporte JavaScript et HTML, GlassFish et Tomcat, mais ne supporte pas PHP, C/C++/Fortran, Groovy et Grails : ils peuvent être obtenus dans le package « All Inclusive » (ou simplement « All »). Cependant, si je le souhaite, je peux à tout moment télécharger le support pour les langues ci-dessus en sélectionnant le plugin approprié (ou tout autre). NetBeans en possède moins qu'Eclipse, mais ils n'entrent généralement pas en conflit les uns avec les autres. Cet automne, Oracle (qui a acquis NetBeans après l'acquisition de Sun Microsystems) a décidé de transférer cet environnement de développement sous l'aile d'Apache Software Foundation, ainsi que tous les droits, code source, marque déposée, domaine « netbeans.org » et un certain nombre d'autres infrastructures. éléments. Par conséquent, l’avenir du projet est encore vague, même si le système disposait auparavant de certains privilèges associés. Ainsi, c'est NetBeans qui a été le premier à recevoir le support de Java 8 presque immédiatement après la sortie de la plate-forme mise à jour, et a été appelé « l'IDE officiel pour Java 8 ». Cependant, un mois après sa sortie, cet avantage a été perdu : c'est alors que d'autres IDE ont également reçu le support de Java 8. Cependant, je tiens à souligner que la prise en charge de Java 8 par NetBeans est vraiment bonne et que l'EDI est idéal pour intégrer des astuces Java 8 dans du "ancien" code. Ses éditeurs, analyseurs de code et convertisseurs aideront le programmeur à mettre à niveau le code à l'aide de constructions typiques de Java 8 - expressions lambda, opérateurs fonctionnels et références de méthodes. Les plugins JavaScript de NetBeans 8 font un excellent travail en prenant en charge Node.js et les derniers outils JavaScript comme Gulp et Mocha, ainsi qu'en prenant en charge l'interpréteur JavaScript Nashorn. Eclipse, NetBeans ou IntelliJ IDEA ?  Choisir un IDE pour le développement Java - 8
Figure 3. Ici, NetBeans exécute le même projet basé sur Maven qu'IntelliJ IDEA a été ouvert dans la figure 1. Notez la fonctionnalité améliorée dans le menu contextuel et le sous-menu de refactorisation

Édition et refactorisation

NetBeans Editor prend en charge les langues, détecte les erreurs au fur et à mesure que vous tapez et vous aide avec des info-bulles et la complétion de code intelligent. Selon le sentiment subjectif, l'IDE s'acquitte de cette tâche plus rapidement qu'Eclipse, mais un peu plus lentement qu'IntelliJ IDEA. De plus, NetBeans dispose d'une gamme complète d'outils de refactoring (comme le montre la figure 3) qui permettent au programmeur de restructurer le code sans le casser, d'effectuer une analyse des sources et propose également une large gamme d'astuces pour des solutions rapides ou des extensions de code. NetBeans inclut l'outil de conception Swing GUI, anciennement connu sous le nom de « Projet Matisse ». Les développeurs apprécient grandement l'outil de refactoring automatisé Inspect & Transform, introduit dans NetBeans 7.1. Il vous permet d'analyser le code du projet et d'apporter des suggestions d'améliorations. Bien que personnellement, je préfère d'abord tester tout mon propre code avec des tests unitaires, puis exécuter des outils capables d'apporter des changements radicaux. J'ai souffert à plusieurs reprises de toutes sortes de corrections automatiques qui ont entraîné des conséquences irréparables.

Construction, débogage et profilage

NetBeans dispose d'un excellent support natif pour Maven et Ant, ainsi que d'un plugin pour Gradle. J'ai été très heureux lorsque j'ai découvert que les projets Maven étaient traités comme « natifs » par le système. Cela signifie qu'ils peuvent simplement être ouverts plutôt qu'importés. NetBeans contient également un affichage graphique attrayant (et utile) pour les dépendances Maven. Le débogueur Java NetBeans n'est pas mauvais, mais il comporte quelques mises en garde. Un débogueur visuel distinct permet au programmeur de prendre des captures d'écran de l'interface graphique utilisateur et d'explorer les interfaces des applications créées à l'aide de JavaFX et Swing. Le profileur NetBeans rend plus évident l'utilisation du processeur et de la mémoire et dispose d'excellents outils pour détecter les fuites de mémoire.

Quel IDE Java est le meilleur ? Comparaison du trio de géants

J'ai utilisé les trois IDE, Eclipse, NetBeans et IntelliJ IDEA, au fil des années dans l'ordre chronologique indiqué. Chaque fois que je passais à un autre IDE, je sentais que ma productivité augmentait. Mais même lorsque j'étais fermement convaincu qu'IDEA était mon choix final, je devais parfois revenir à l'un des deux IDE restants. C'était le cas, par exemple, à une époque où Eclipse était le seul outil prenant en charge le développement Android (il existe aujourd'hui Android Studio, l'actuel IDE officiel pour Android, il est basé sur IntelliJ IDEA). Bien entendu, les trois IDE ont leurs fans et leurs détracteurs. Je connais beaucoup de développeurs Java qui aiment IntelliJ IDEA, ainsi que des fans fidèles de Visual Studio C++ et C#. Le plus souvent, ces personnes sont satisfaites du fait que leur productivité a augmenté, et le coût de l'abonnement annuel est remboursé après seulement quelques semaines d'utilisation de la version payante d'IDEA. Cependant, les utilisateurs de NetBeans et d'Eclipse sont aussi souvent attachés à leurs outils et se demandent pourquoi d'autres programmeurs sont prêts à payer pour IDEA. Je conseillerais aux nouveaux développeurs Java de rester à l'écart d'Eclipse. Bien qu'il s'agisse toujours de l'IDE pour Java le plus populaire, il est difficile pour les débutants : il est facile de se perdre dans la nature sauvage d'Eclipse, à la fois lors du déploiement du système et pendant le travail quotidien. Eclipse possède l'écosystème de plugins le plus étendu de tous les IDE et est également le plus susceptible de planter en raison de l'installation d'un ensemble incompatible de ces mêmes plugins. Malheureusement, lors de l'utilisation d'Eclipse, j'ai dû à plusieurs reprises supprimer un autre assemblage cassé de cet IDE et installer un bundle « propre ». NetBeans convient à la plupart des développeurs, il possède un excellent profileur et je l'utilise parfois. Cependant, je préfère payer pour IntelliJ IDEA Ultimate. Et l’avenir de NetBeans est encore incertain. Pour les nouveaux développeurs Java qui n'ont pas encore le budget nécessaire pour acheter des outils, je recommande d'utiliser NetBeans ou IntelliJ IDEA Community Edition en fonction de leurs besoins. Le premier vaut la peine d'être choisi pour ceux qui codent des serveurs Java, mais seulement si vous n'appartenez pas à la catégorie de ceux qui peuvent obtenir IntelliJ IDEA Ultimate gratuitement ou avec une réduction énorme (étudiants ou programmeurs qui développent un logiciel open source). projet).

EDI Java "léger"

Aujourd'hui, la plupart des développeurs Java utilisent IDEA, NetBeans ou Eclipse, mais il est parfois nécessaire d'utiliser des environnements de développement plus légers ou même des éditeurs de code comme Sublime Text, emacs ou vim prenant en charge les plugins Java. J'ai répertorié ci-dessous des options raisonnables pour ceux qui recherchent quelque chose d'un peu plus léger :
  • DrJava — небольшая бесплатная среда разработки. Её создали для студентов Университета Райса, и она стала довольно популярной: DrJava загрузor уже более 2 млн раз. DrJava призвана развивать разработку, основанную на тестировании (test-driven development). Среда содержит «умный» редактор codeа, панель взаимодействия для оценки codeа applications, отладчик уровня источника и инструменты модульного тестирования.
  • BlueJ бесплатная среда разработки Java, созданная специалистами Кентского университета для начинающих программистов. Эта среда поддерживается Oracle. BlueJ отличается гораздо более лаконичным и простым интерфейсом, чем профессиональные IDE, такие, How NetBeans or Eclipse, и даже содержит специальный учебник по основам ООП.
  • JCreator — ещё одна небольшая Java IDE для Windows, написанная на C++ (из соображений увеличения производительности). Платная version Pro оснащена отладчиком, поддержкой Ant и code wizards, ну а бесплатная version (LE) — нет.
  • Eclipse Che — браузерная облачная IDE: Java, C++, JavaScript, Python, PHP, Ruby и SQL — список языков, которые она поддерживает. .

Выбор Java IDE в зависимости от проекта

J'ai essayé de décrire les avantages importants de chacun des trois IDE Java les plus importants et j'ai brièvement mentionné leurs petits rivaux utiles. Pour choisir le bon environnement de développement Java, vous devez peser le pour et le contre et les adapter à vos besoins et à ceux de vos projets. Si vous rejoignez une équipe, c'est une bonne idée d'utiliser le même IDE que les autres développeurs, même si ce n'est pas obligatoire. Si votre équipe héberge des sources sur GitHub, il sera naturellement plus pratique si votre IDE prend en charge GitHub. Oui, vous pouvez gérer le transfert de code sans IDE à l'aide du client GitHub ou de la ligne de commande git. Mais quelle sera l’efficacité de ces sauts entre différents systèmes ? Il est également important que l'EDI prenne en charge le système de build. Par exemple, s'il s'agit de Maven, il est peu probable que vous souhaitiez reconstruire le système dans Ant pour des tests locaux. Heureusement, les trois grands IDE Java prennent en charge Ant, Maven et Gradle, soit directement, soit avec un plugin. Mais pour les « petits » IDE, cela n’est peut-être pas vrai. Il est naturel que l'environnement de développement prenne en charge la version du JRE utilisée dans le projet. Si les versions ne correspondent pas, il y a une forte probabilité d'obtenir de nombreux bugs supplémentaires, qui, par exemple, apparaîtront chez vous, mais pas chez les autres membres de l'équipe. Il est peu probable qu'une telle situation ait un effet positif sur votre karma. Franchement, l'incohérence de JRE est plus susceptible de se produire en raison d'erreurs de configuration que du manque de prise en charge de l'IDE, à moins que l'IDE n'ait pas encore été mis à jour vers une nouvelle version de Java. Croyez simplement que si votre IDE prend entièrement en charge les frameworks et les technologies utilisés dans le projet, cela contribue vraiment à accélérer le travail. Vous y parviendrez probablement de toute façon. Mais, si l'EDI comprend comment les instructions JPA sont liées aux classes d'entités et d'expressions JPA (comme IntelliJ), vous passerez beaucoup moins de temps sur le code lié à JPA que si vous compreniez complètement mal. Eh bien, si l'EDI prend en charge le framework de test et l'exécuteur de code utilisé pour le projet, vous pouvez exécuter des tests sans modifier l'environnement de travail. Cela accélérera également le processus de développement. Enfin, le travail va plus vite si l'EDI est compatible avec le système de suivi des bogues et de tickets du projet. Encore une fois, vous pouvez utiliser un client autonome ou Web, par exemple JIRA, mais il est difficile de ne pas être d'accord sur le fait que la vérification des tickets est beaucoup plus rapide sans changer de fenêtre, tout en restant directement dans l'EDI.

Gratuit ou payant ?

Après avoir testé IntelliJ IDEA Ultimate, j'ai eu le sentiment d'avoir le bon environnement de développement. Une sorte de Cadillac du monde IDE. Je ne dirai pas sans équivoque qu'IDEA est le meilleur IDE pour Java, mais pour moi c'est le cas. Encore une fois, même si ce n'est pas gratuit, je pense que les gains de productivité liés à son utilisation valent l'abonnement annuel. Pour les débutants qui ne peuvent pas se permettre un abonnement annuel à IntelliJ IDEA Ultimate, je recommande d'utiliser NetBeans plutôt qu'Eclipse. Bien sûr, l'écosystème des plugins Eclipse est aujourd'hui beaucoup plus développé que celui de tout autre IDE, mais il est très envahi et négligé : un développeur novice risque de se retrouver coincé dans la jungle de l'IDE, Java et l'immersion dans le travail passera au second plan. . a également évoqué des alternatives « légères », dont deux ont été développées spécifiquement à des fins éducatives. Eh bien, si vous commencez tout juste à apprendre des langues et préférez un environnement minimaliste, pourquoi pas ?
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION