Los mejores IDE para Java. Inicio rápido en Java: desde la instalación del software necesario hasta el primer programa

¿Cómo crear la mejor aplicación Java que sea rápida, estable y confiable? Esto requerirá no sólo un desarrollador experimentado con excelentes habilidades de programación, sino también el derecho entorno de desarrollo java.

Ya deberías haberte dado cuenta de que un IDE de Java es realmente necesario, especialmente uno que admita varios lenguajes de programación a la vez.

  • NetBeans es el mejor IDE de Java desarrollado por Oracle ();
  • IntelliJ IDEA: el mejor IDE para desarrolladores de Java (premium Java-IDE);
  • Eclipse es un IDE popular para desarrolladores java (software libre);
  • Android Studio es un IDE de Java diseñado para Desarrolladores de Android;
  • JDeveloper es un IDE gratuito para simplificar el desarrollo de aplicaciones Java;
  • DrJava es un entorno de desarrollo compacto para programas Java;
  • JEdit es un editor de código avanzado para desarrolladores java;
  • MyEclipse: IDE Java de pila completa para desarrollo web;
  • JCreator-sencillo IDE para desarrollo Java;
  • GreenFoot es un IDE y un instructor de Java en línea.

Los 10 mejores IDE de Java para un desarrollo web rápido

  1. NetBeans: el mejor IDE de Java desarrollado por Oracle (software gratuito)

Hasta la fecha mejor entorno de desarrollo java, creado por desarrolladores para desarrolladores con el objetivo de hacer que el flujo de trabajo sea lo más simple y eficiente posible.

Con NetBeans, puede crear no solo aplicaciones web corporativas, sino también software móvil y aplicaciones de escritorio. Además, NetBeans le permite reutilizar el espacio de trabajo de su proyecto en múltiples plataformas, como Windows, Linux, Mac OS X y Solaris de Oracle.

NetBeans resuelve la mayoría de los problemas que un desarrollador puede encontrar mientras trabaja. Este IDE le permite gestionar todas las tareas: análisis, diseño, depuración, pruebas unitarias, gestión e implementación del código fuente.

El código que se está desarrollando puede contener errores no detectados que son difíciles de encontrar. Pero las herramientas integradas de NetBeans, como el análisis de código estático y la integración del complemento FindBug, le ayudarán a identificar y solucionar problemas complejos en su código. Además, el depurador de NetBeans brinda la capacidad de navegar rápidamente por el código, establecer puntos de interrupción, agregar notas, tomar instantáneas y monitorear la ejecución del código.

El IDE también viene con un potente generador de perfiles de código que ayuda a optimizar el rendimiento de la aplicación ( velocidad de funcionamiento y consumo de memoria). Además, incluye un depurador visual que permite ajustar las interfaces de usuario creadas sin tener que editar el código.

Vale la pena echarle un vistazo a la herramienta Maven compatible con NetBeans. Con su ayuda, agregar dependencias se realiza con solo unos pocos clics. Esto evita la carga/reconstrucción innecesaria de índices.

Veamos para qué más se considera que NetBeans es uno de los mejores IDE de Java.

Es compatible con HTML5, CSS3, JavaScript (ES 5/6) y Angular JS. NetBeans también admite el autocompletado para estos idiomas, así como directivas Angular.

NetBeans le permite desarrollar aplicaciones móviles utilizando plataformas como Cordova y PhoneGap. Y también, utilizando GlassFish y WebLogic, implemente cualquier aplicación web y pruebe la funcionalidad final. Añaden soporte para Java 8 a las capacidades centrales del kernel.

NetBeans admite todas las aplicaciones web populares ( Resorte/puntales/wicket) y bibliotecas como PrimeFaces, RichFaces, ICEfaces.

  1. IntelliJ IDEA: el mejor IDE para desarrolladores de Java (IDE Java Premium)

Una herramienta rápida y confiable para el desarrollo web en Java. Este entorno de desarrollo de Java para Windows es desarrollado por JetBrains. Lo actualiza y amplía constantemente para satisfacer las necesidades del mercado.

IntelliJ IDEA viene en dos ediciones. La versión gratuita está destinada a estudiantes, profesores y desarrolladores de complementos. Pagado: para organizaciones que desarrollan aplicaciones comerciales.

Edición comunitaria IntelliJ

La versión gratuita es compatible con plataformas como Android, Swing y JavaFX, Java, Groovy, Kotlin, Scala, Go, Dart, Erlang y Python.

Aparte de esto, este IDE es bastante compacto y contiene otras características como ejecución de pruebas JUnit/TestNG, depuración, finalización de código, revisión de código, refactorización de código, Ant y un editor GUI visual.

También hay cuatro tipos de sistemas de control de versiones que puedes utilizar: Git/GitHub, SVN, Mercurial y CVS. Hay disponible un complemento de Docker que brinda soporte para la implementación de aplicaciones web. La versión gratuita también incluye Decompiler y ByteCode para realizar análisis avanzados.

IntelliJ última edición

Para los programadores principiantes, el IDE gratuito ofrece funciones avanzadas que les ayudarán a dar sus primeros pasos en el desarrollo web en Java. Los usuarios más avanzados probablemente prefieran la versión paga, que permite funciones avanzadas.

Es un excelente entorno de desarrollo Java que admite muchos lenguajes de programación como JavaScript, TypeScript, SQL, CSS, LESS, Sass, Stylus, CoffeeScript, ActionScript, Ruby y PHP.

Para el desarrollo web profesional, necesitará la versión Ultimate. Combina marcos como Spring MVC, J2EE ( JSF/JAX-RS/CDI/JPA), Grails, Griffin, React, Angular JS, Node.js, Django, Flask, CMS ( Drupal/WordPress/Laravel).

La versión paga tiene soporte de control de versiones adicional, como TFS, Perforce, ClearCase y Visual SourceSafe. Ofrece muchas opciones para personalizar su estrategia de implementación utilizando Tomcat, TomEE, GAE, GlassFish, JBoss, WebLogic, WebSphere, Geronimo, Jetty y Virgo.

Esta versión incluye soporte para NPM, WebPack, Gulp y Grunt. Incluye herramientas como gráficos ( UML/Dependencias), matriz de dependencia.

  1. Eclipse: IDE popular para desarrolladores de Java (software gratuito)

Es un IDE de código abierto moderno, multiplataforma y de distribución gratuita disponible para el desarrollo web empresarial. En 1998, IBM Software Group decidió crear un IDE que pudiera afianzarse en el mercado y convertirse en uno de sus líderes. Esto llevó a la creación de Eclipse.

Curiosamente, el propio Eclipse es un ejemplo de las mejores aplicaciones Java porque está escrito en Java. Siempre ha sido una plataforma estable, con todas las funciones y de la más alta calidad para desarrollar aplicaciones web modernas.

Eclipse tiene todas las características necesarias que debería tener un IDE de Java ideal:

  • Compatibilidad con Java 8.0 y 9.0;
  • Refactorización de código, edición de código con verificación de consultas, compilación incremental, referencias cruzadas, sugerencia automática de variantes de código;
  • Análisis de código estático integrado;
  • Finalización inteligente de código y soluciones rápidas;
  • Comodidad y rendimiento;
  • Compatibilidad con Windows/Linux/Mac OS X.

La versión actual del entorno de desarrollo para el lenguaje Java es Neon. Introdujo muchas características nuevas:

  • El editor Java muestra un patrón predeterminado para realizar comprobaciones +ve / -ve;
  • El IDE ahora ayuda a clasificar el nivel de gravedad de errores específicos en su código;
  • Code Assist admite patrones de subcadenas;
  • Ahora es posible personalizar el análisis nulo basado en anotaciones para utilizar múltiples conjuntos de tipos de anotaciones;
  • El depurador ahora acepta argumentos de depuración adicionales y la visualización de los recursos del sistema operativo le permite utilizar información del proceso en la depuración;
  • El modelado ha permitido mejoras significativas en la generación de código, editores de modelos, comparación de modelos y editores de gráficos personalizados.

Como puede ver, Eclipse contiene muchas funciones que le permitirán ahorrar tiempo. Incluso puedes crear tus propias plantillas de código para acelerar el desarrollo.

  1. Android Studio: IDE de Java creado específicamente para desarrolladores de Android

Un IDE moderno para desarrollar aplicaciones Java y Android. Este es un producto relativamente nuevo, lanzado a mediados de 2013. Basado en IntelliJ IDEA, Android Studio proporciona un entorno óptimo para el desarrollo de diseño y producción de código.

El objetivo principal de la herramienta es acelerar el proceso de desarrollo de aplicaciones para cualquier dispositivo Android. Antes de su lanzamiento, los desarrolladores tenían que confiar en Eclipse y el complemento ADT. Debido a esto, el sistema operativo Android quedó por detrás de Apple. Después del lanzamiento de Android Studio, la popularidad de Android creció.

El IDE admite una variedad de funciones útiles: Edición de código inteligente, depuración, pruebas unitarias y creación de perfiles de código. Veamos cada uno de ellos con más detalle.

Características interesantes del entorno de desarrollo Java para Android:

  • Actualización e inicio instantáneos para que los cambios de código se apliquen inmediatamente a la aplicación en ejecución sin reiniciarla;
  • El emulador integrado es fácil de instalar y ejecuta aplicaciones en varias configuraciones de dispositivos;
  • El editor de nueva generación le permite escribir código de alta calidad, ahorra tiempo y aumenta la productividad del desarrollo; Puede utilizar la finalización, refactorización y revisión de código avanzadas;
  • Sistema de montaje incorporado ( Gradle) ayuda a automatizar compilaciones, generar dependencias y preparar configuraciones de compilación personalizadas;
  • Gradle es un sistema de compilación para varios dispositivos. Te permite crear aplicaciones que funcionan en todos los dispositivos Android;
  • Fácil integración con sistemas de control de versiones como GitHub y SVN;
  • Capacidad para preparar una compilación para su ejecución en un servidor CI como Jenkins y Bamboo;
  • Las plantillas de código listas para usar ayudan a simplificar y acelerar el desarrollo de aplicaciones;
  • Puede probar su aplicación usando JUnit 4 y hacer una regresión de la interfaz de usuario usando Espresso Test Recorder;
  • Realice un seguimiento de los errores en su código utilizando la herramienta de análisis incorporada;
  • También están disponibles otras herramientas integradas, como Layout Editor, Vector Asset Studio, APK Analyzer y Translation Editor.
  • Android Studio es uno de los mejores entornos de desarrollo Java que deberías probar para desarrollar aplicaciones móviles y de escritorio.
  1. JDeveloper es un entorno gratuito para simplificar el desarrollo de aplicaciones Java

Potente IDE Java de código abierto de Oracle. Admite todas las etapas de creación de aplicaciones.

JDeveloper incluye un editor de código avanzado que mejora la velocidad de desarrollo con auditoría de código, pruebas unitarias integradas y creación de perfiles. El editor visual también se puede utilizar para programar en SQL, XML, PHP, JavaScript, HTML y CSS.

JDeveloper está optimizado para gestionar aplicaciones J2EE, bases de datos, servicios web REST/SOAP, aplicaciones móviles, componentes y aplicaciones Oracle Fusion Middleware.

Este IDE contiene una serie de herramientas integradas para acelerar el desarrollo. Uno de ellos es el servidor WebLogic integrado, que permite ejecutar, probar y depurar aplicaciones J2EE. Además de un navegador SQL y un editor PL/SQL, que le ayudarán a crear consultas, visualizar bases de datos y crear informes; Editor WSDL que acelera el desarrollo SOAP y REST.

JDeveloper también incluye dos herramientas de seguimiento: generadores de esquemas XSD/XML integrados y herramientas de ejecución de pruebas.

  1. DrJava: un entorno sencillo para desarrollar programas Java

Un entorno de desarrollo Java simple y responsivo. Su misión original era presentar Java a los principiantes a través de formación interactiva. Posteriormente, se agregaron funciones adicionales para usuarios avanzados.

DrJava integra características como un editor de código inteligente, una terminal interactiva para evaluar la salida del programa, un depurador de código fuente y un ejecutor de pruebas unitarias.

El IDE es compatible con Java 8 y versiones más recientes. Y otra adición útil es la integración con la herramienta Jacoco para la cobertura de código. Cuando ejecuta pruebas unitarias, genera informes que contienen enlaces que indican la cobertura del código.

En nuestra opinión, DrJava es más adecuado para usuarios que han comenzado recientemente a aprender Java. Podrán desarrollar sus habilidades. programación java y luego actualice a NetBeans, Eclipse o IntelliJ Java IDE.

  1. JEdit: un editor avanzado para desarrolladores de Java

Editor de código intuitivo utilizado. programadores java durante muchos años. Es compatible con Mac OS X, OS/2, Unix, VMS y Windows.

Al igual que Eclipse, JEdit se desarrolló utilizando el lenguaje de programación Java. Y también es una de las mejores aplicaciones Java disponibles para uso gratuito bajo licencia GPL 2.0.

UDE ofrece una serie de características modernas:

  • JEdit incluye un lenguaje de macros incorporado para automatizar cualquier tarea repetitiva. También puedes utilizar las macros disponibles;
  • Paquetes JEdit con un administrador de complementos interactivo para buscar y cargar los complementos necesarios.
  1. MyEclipse: un IDE Java completo para desarrollo web

MyEclipse es una de las herramientas diseñadas para hacer más eficiente el proceso de desarrollo. MyEclipse es desarrollado por Genuitec, que lo creó basándose en Eclipse.

Este entorno de desarrollo Java admite el desarrollo empresarial, el desarrollo web y el desarrollo web completo.

Echemos un vistazo a las características que proporciona:

  • Soporte J2EE ampliado para todos los marcos conocidos como Spring, JPA, JSF, Jquery y Cordova;
  • Edición inteligente de código con sugerencias, verificación instantánea, resaltado de sintaxis, ayuda conveniente ( barra de herramientas con rutas de navegación y minimapa);
  • Gestión completa del ciclo de desarrollo del proyecto;
  • Soporte integrado para MySQL, SQL Server y Sybase;
  • WebSphere integrado para ejecutar, probar y depurar su aplicación sobre la marcha;
  • Otros servidores de aplicaciones como WebLogic, Apache Tomcat, GlassFish y Derby son compatibles de forma predeterminada;
  • Creación de aplicaciones web dinámicas usando TypeScript y Angular 2 ( ES6);
  • Soporte detallado para desarrollar y probar servicios web RESTful;
  • Capacidad para obtener una vista previa del resultado de la ejecución del código utilizando la herramienta CodeLive incorporada. También puedes ir al origen de cualquier elemento de una página web;
  • Pruebas en varios navegadores y soporte para emuladores móviles;
  • Analice las actualizaciones de código a través de la integración de Slack.

MyEclipse contiene funciones que pueden mejorar la productividad de cualquier desarrollador de Java.

  1. JCreator: un entorno sencillo para el desarrollo de Java

Es uno de los mejores entornos de desarrollo Java que proporciona a los desarrolladores una experiencia de desarrollo interactiva. En este sentido, proporciona más funciones que cualquier otro editor de código.

JCreator es desarrollado por Empresa de TI Xinox Software. El IDE está disponible en dos versiones: una versión Lite con funciones limitadas y una edición Pro con un conjunto completo de funciones.

JCreator incluye muchas funciones útiles:

  • La interfaz de Easy Project Management es similar a Visual Studio;
  • Esquema de colores personalizado para organizar el código;
  • Capacidad para configurar y utilizar múltiples perfiles JDK en proyectos;
  • Seleccionar una plantilla de proyecto para un inicio rápido;
  • Soporte para herramientas de control de versiones y compilación como Ant y CVS;
  • Posibilidad de ejecutar la aplicación como un subprograma usando JUnit o en la terminal;
  • Herramientas integradas para llamar a funciones y utilidades externas. Formateo de código Java, compilador RMI.

Al crear este IDE, se ha prestado la debida atención a la facilidad de uso, la velocidad, el rendimiento y la excelente interfaz de usuario. En muchos sentidos, los autores confiaron en Microsoft Visual Studio.

  1. GreenFoot - Instructor de Java e IDE en línea

Un editor de código especializado diseñado para que los principiantes aprendan Java de forma interactiva. Proporciona un entorno para generar simulaciones de programas gráficos y juegos escritos en Java.

El IDE documenta cada característica en detalle, proporcionando documentación tanto para usuarios nuevos como experimentados. Esto le ayudará a desarrollar rápidamente sus habilidades.

Este entorno de desarrollo Java tiene una interfaz de usuario clara e incluye una única ventana para modelar todos los objetos y clases de la aplicación.

GreenFoot tiene su propio público objetivo, que incluye estudiantes, profesores y entrenadores. Al mismo tiempo, implementa todas las funciones necesarias para desarrollador java:

  • El editor GUI le permite agregar clases con un solo clic. Pero se pueden agregar otros elementos, según el caso de uso específico;
  • Las clases creadas se pueden ampliar o heredar fácilmente. Se puede hacer lo mismo usando un editor visual;
  • GreenFoot admite una gran cantidad de bibliotecas de imágenes agrupadas en categorías como animales, objetos, edificios, personas y símbolos;
  • Este IDE proporciona gestión de proyectos, soporte de código, autocompletado, resaltado de sintaxis y otras herramientas.
  • Los idiomas, plataformas y métodos pueden variar. Pero hay dos aspectos del desarrollo web que son comunes a todas las tareas: front-end y backend. El propósito de este artículo es...

    Hace unos años, casi todas las páginas web se creaban manualmente. Fue muy difícil, y hasta el momento en que...

Presentamos a su atención una adaptación de un artículo de Martin Heller, programador y editor del recurso JavaWorld. Probablemente ya haya oído hablar de los tres IDE más populares para el desarrollo de Java. El 90 por ciento de los programadores industriales utilizan Eclipse, NetBeans o IntelliJ IDEA, y cada uno de estos IDE tiene sus propias ventajas y desventajas. En este artículo intentaremos describirlos para que entiendas cuál es el adecuado para ti. Aunque, por supuesto, es mejor probar los tres en el trabajo y descubrir cuál funciona mejor para ti. Ninguna reseña puede reemplazar esto. He trabajado con estos IDE antes, pero para este estudio instalé IntelliJ IDEA Ultimate 2016.2, Eclipse Neon Java EE y NetBeans 8.1 Java EE en una computadora portátil MacBook Pro. Probé el IDE en varios proyectos Java de código abierto.

Qué esperar de un IDE

Un IDE moderno para un "desarrollador de Java saludable" debe ser compatible con Java 8, Scala, Groovy y otros lenguajes de máquinas virtuales Java que utiliza habitualmente. También sería útil la compatibilidad con los principales servidores de aplicaciones y los marcos web más populares, incluidos Spring MVC, JSF, Struts, GWT, Play, Wicket, Grails y Vaadin. El IDE debe ser compatible con cualquier compilación de sistema de control de versiones, como Ant, Maven o Gradle, junto con Git, SVN, CVS, Mercurial o Bazaar. Además, para el entorno de desarrollo es importante poder trabajar con bases de datos y la capa de cliente de su pila, tener soporte para JavaScript, TypeScript, HTML, SQL, JavaServer Pages, Hibernate y Java Persistence integrados. API. Finalmente, es lógico esperar que el IDE le permita editar, crear, depurar y probar sistemas sin estrés innecesario. Idealmente, el entorno de desarrollo admite no solo la finalización inteligente del código, sino también la refactorización inteligente y las métricas del código. En muchos casos, será útil admitir marcos de prueba y apéndices. Si su equipo utiliza un sistema de tickets y CI/CD, necesita el IDE para poder conectarse a ellos. Y decida si necesita implementación y depuración en contenedores y nubes. Hemos enumerado solo las expectativas básicas (quizás tenga algo que agregar) y ahora echemos un vistazo más de cerca a nuestros competidores.

IDEA IntelliJ


En términos de características y precio, IntelliJ IDEA viene en dos versiones: la edición Community gratuita y la edición Ultimate paga con funcionalidad extendida. La edición comunitaria está diseñada para el desarrollo de JVM y Android. La versión gratuita es compatible con Java, Kotlin, Groovy y Scala; Androide; Maven, Gradle y SBT; Funciona con sistemas de control de versiones Git, SVN, Mercurial y CVS. La edición Ultimate es adecuada para el desarrollo web y empresarial. Esta versión del IDE funciona no sólo con Git, SVN, Mercurial y CVS, sino también con Perforce, ClearCase y TFS; en él puedes escribir en JavaScript y TypeScript; Naturalmente, hay soporte para Java EE, Spring, GWT, Vaadin, Play, Grails y muchos otros frameworks. Y, por supuesto, no podríamos prescindir de SQL y de herramientas para trabajar con bases de datos. La idea que guía a los desarrolladores de este IDE a la hora de formular una política de precios es que su versión comercial (Ultimate) ocupe su lugar en los ordenadores de los profesionales, por lo que aumentará su productividad. Si un programador de Java gana 50.000 dólares al año (o incluso más), el retorno de la inversión gastada en el IDE de pago IntelliJ IDEA (500 dólares por una suscripción anual) se producirá muy rápidamente debido a una ligera aceleración de su trabajo. En los años siguientes, el precio para las empresas baja, para las nuevas empresas y los autónomos es significativamente menor y para los estudiantes, profesores, campeones de Java y desarrolladores de código abierto es completamente gratuito. IntelliJ IDEA impresiona por su profunda comprensión del código, su ergonomía inteligente, sus funciones de desarrollo integradas y su compatibilidad con varios idiomas.
Figura 1. IntelliJ IDEA muestra la cantidad de advertencias y conjeturas basadas en el análisis estadístico del código Java. Puedes estudiar los supuestos con más detalle haciendo clic sobre ellos, como se muestra en la imagen; en muchos casos recibirá una lista con opciones y opciones de corrección.

Comprensión profunda del código.

El resaltado de sintaxis y la finalización sencilla de código son algo común en cualquier editor Java moderno. IDEA fue más allá al ofrecer "autocompletado inteligente". Este término significa que el entorno de desarrollo muestra una lista de los símbolos más relevantes aplicables en un contexto determinado. La lista de símbolos depende no sólo del contexto como tal, el "generalmente aceptado", sino también del estilo de programación del desarrollador, de la frecuencia con la que utiliza determinados operadores. "Finalización de cadena" incluso muestra una lista de símbolos aplicables que están permitidos a través de métodos o captadores en el contexto actual. Además, para miembros estáticos o constantes, IDEA agrega automáticamente las declaraciones de importación necesarias. En todos los casos de autocompletado, IDEA intenta adivinar el tipo de símbolo en tiempo de ejecución, refinar su selección e incluso aplicar una conversión de tipo si es necesario. El código Java a menudo incluye fragmentos de otros lenguajes como cadenas. IDEA puede inyectar código SQL, XPath, HTML, CSS o JavaScript en cadenas literales de Java. En este sentido, el IDE puede refactorizar código en múltiples idiomas. Por ejemplo, si cambia el nombre de una clase en una asignación JPA, IDEA actualizará la entidad JPA correspondiente y la clase de expresión. Al refactorizar un fragmento de código, el desarrollador tiene un deseo (bastante natural): que todos los duplicados de este código también sean refactorizados. IDEA Ultimate encuentra duplicados y fragmentos similares y también les aplica refactorización. IntelliJ IDEA analiza el código al cargarlo y directamente cuando lo ingresa. Señala problemas sospechosos (como en nuestra imagen de arriba) y, opcionalmente, ofrece una lista de posibles soluciones rápidas a los problemas encontrados.

Ergonomía


IntelliJ IDEA está diseñado para no sacar al desarrollador de un estado de productividad fluida una vez que ya se encuentra en él. La ventana del Proyecto, que se muestra en la primera imagen de la izquierda, desaparece con un simple clic del mouse para que el programador pueda concentrarse en la ventana del editor de código. Para todas las acciones necesarias al escribir código, existen combinaciones de teclas para llamarlas rápidamente, incluida la definición de símbolos en ventanas emergentes. Al principio, todas estas combinaciones son difíciles de recordar, pero poco a poco te acostumbras y solo las utilizas. Sin embargo, incluso si el programador no utiliza atajos de teclado, como muestra la práctica, se acostumbra a trabajar en IDEA de forma fácil y rápida. Me gustaría destacar especialmente el depurador IDEA: los valores de las variables se muestran directamente en la ventana del editor, junto al código fuente correspondiente. Cuando el estado de una variable cambia, el color de resaltado también cambia.

Herramientas integradas

IntelliJ IDEA proporciona una interfaz única para la mayoría de los sistemas de control de versiones, incluidos Git, SVN, Mercurial, CVS, Perforce y TFS. Puede gestionar los cambios directamente en el IDE, lo cual es muy conveniente. Cuando estaba probando IDEA, deseaba que el último cambio en el código fuente apareciera en la ventana del editor como una anotación (como sucede, por ejemplo, en Visual Studio). Resulta que IDEA tiene un complemento especial para esto. IDEA también viene con herramientas de compilación, un tiempo de ejecución de prueba, herramientas de cobertura y una ventana de terminal incorporada. IntelliJ no tiene su propio generador de perfiles, pero se pueden conectar otros de terceros mediante complementos. Por ejemplo, YourKit, creado por un antiguo desarrollador principal de JetBrains, o VisualVM (que es una versión reempaquetada del generador de perfiles NetBeans). La depuración en Java puede ser complicada cuando suceden todo tipo de cosas misteriosas en clases para las que no tienes el código fuente. IDEA incluye un descompilador para tales casos. La programación del lado del servidor en Java requiere interacción frecuente con bases de datos, por lo que los programadores de IDEA Ultimate apreciarán la conveniencia de las herramientas para trabajar con SQL y bases de datos. Pero si sus capacidades no son suficientes para alguien, puede comprar la versión IDEA Ultimate con un IDE SQL integrado (DataGrip). Sin embargo, será un poco más cara que la suscripción normal a IDEA Ultimate. IntelliJ IDEA es compatible con todos los principales servidores de aplicaciones JVM y le permite implementar y depurar en estos servidores, lo que elimina las dificultades familiares para todos los programadores de Java Enterprise. IDEA también es compatible con Docker (a través de un complemento que agrega una ventana de herramientas Docker especial al entorno de desarrollo. Por cierto, IDEA tiene un montón de complementos.

Un verdadero políglota

IDEA ha ampliado el soporte de código para Spring, Java EE, Grails, Play, Android, GWT, Vaadin, Thymeleaf, Android, React, AngularJS y otros marcos. Probablemente hayas notado que no todos son específicos de Java. IDEA "comprende" otros lenguajes desde el primer momento: Groovy, Kotlin, Scala, JavaScript, TypeScript y SQL. Si no ve el idioma que está buscando en esta lista, actualmente hay 19 complementos de lenguaje IntelliJ, que admiten específicamente R, Elm y D.


Durante muchos años, Eclipse mantuvo con confianza la palma en popularidad entre los IDE de Java. Este entorno es completamente gratuito, de código abierto y escrito principalmente en Java. Sin embargo, su arquitectura modular permite utilizar Eclipse con otros lenguajes. El proyecto Eclipse, iniciado por IBM, apareció en 2001. Querían reemplazar la familia de entornos de desarrollo IBM Visual Age basados ​​en Smalltalk. Bueno, el objetivo principal, como sugiere incluso el nombre, era eclipsar a Microsoft Visual Studio (eclipse en inglés significa eclipse). La portabilidad de Java ayuda a que Eclipse sea un entorno multiplataforma: este IDE se ejecuta en Linux, Mac OS X, Solaris y Windows. Para bien o para mal, el Java Standard Widget Toolkit (SWT) es al menos parcialmente responsable de la apariencia de Eclipse. Eclipse debe su rendimiento (o, como dicen algunos simpatizantes, su falta) a la JVM. Eclipse funciona bastante lento, ya que está basado en hardware bastante antiguo y en versiones antiguas de JVM. Incluso hoy en día parece lento, especialmente si le adjuntas muchos complementos. Parte de la sobrecarga de recursos de Eclipse se puede atribuir a su compilador incremental incorporado, que se ejecuta cada vez que se carga un archivo o se actualiza el código. Esto es algo útil; detecta errores al ingresar texto. Independientemente de la compilación, el proyecto Eclipse mantiene un modelo de contenido que contiene información sobre la jerarquía de tipos, referencias y declaraciones de elementos Java. La versión actual de Eclipse se llama Neon (4.6.0). Instalé Eclipse Java EE IDE para desarrolladores web (esta no es la única opción, puedes elegir otra). Contiene un SDK de Eclipse mínimo y se agregan complementos según demanda. Por cierto, trabajar con complementos en este IDE no es para personas débiles de corazón. Los complementos de terceros a menudo entran en conflicto entre sí, aunque sus especificaciones oficiales no dicen nada al respecto.
Figura 2. De izquierda a derecha, hay cuatro barras de herramientas de Eclipse: Explorador de paquetes, Editor de Java, Estructura de clases de Java y Lista de tareas. El proyecto cargado en Eclipse en esta imagen es el marco de prueba JUnit. Los paneles se pueden intercambiar fácilmente.

Soporte de complementos

El ecosistema de complementos de Eclipse es a la vez la fortaleza del IDE y uno de sus principales problemas. Es debido a la incompatibilidad de los complementos que a veces ensamblados enteros fallan y los programadores tienen que empezar a trabajar de nuevo. Actualmente hay más de 1700 complementos escritos para Eclipse, oficiales y no oficiales, que pueden funcionar muy bien o no. Los complementos de Eclipse admiten más de 100 lenguajes de programación y casi 200 marcos de desarrollo de aplicaciones. La mayoría de los servidores Java también son compatibles: si designa una nueva conexión de servidor desde Eclipse, accederá a una lista de carpetas de proveedores donde encontrará alrededor de 30 servidores de aplicaciones. Sólo habrá hasta nueve variantes de Apache Tomcat. Los proveedores comerciales tienden a agrupar sus soluciones: por ejemplo, solo hay un elemento de Red Hat JBoss Middleware, y en su interior encontrará herramientas de servidor WildFly y EAP, así como JBoss AS.

Edición, refactorización y depuración.

Su primera experiencia con Eclipse puede resultar confusa e incluso confusa. El primer paso es configurar Eclipse y acostumbrarse a su arquitectura conceptual de espacios de trabajo, vistas y vistas. Todo esto está determinado por los complementos que haya instalado. Para el desarrollo de Java del lado del servidor, probablemente utilizará las vistas de navegación Java, Java EE y Java, la vista Explorador de paquetes, la vista de depuración, la vista de sincronización de comandos de herramientas web, la vista de desarrollo de base de datos y la vista de depuración de base de datos. En la práctica, todo cobra sentido cuando abres las ventanas que necesitas. Eclipse casi siempre ofrece varias formas de resolver un problema particular. Por ejemplo, puede ver el código utilizando la perspectiva de navegación de Java. Qué elegir es cuestión de gustos y elección. Una búsqueda especial de Java le permite encontrar declaraciones, referencias y apariciones de paquetes, tipos, métodos y campos de Java. También puede utilizar el acceso de búsqueda rápida y la vista previa. Se pueden generar patrones de código comunes a partir de plantillas de código. Java Refactoring en Eclipse admite 23 operaciones, que van desde operaciones comunes de cambio de nombre hasta transformaciones menos obvias (como en el libro de Martin Fowler). Eclipse admite la depuración local y remota, siempre que esté utilizando una JVM que admita la depuración remota. La depuración es bastante estándar: usted define puntos de interrupción y luego ve las variables en la pestaña de depuración. Por supuesto, puede revisar su código y evaluar expresiones. Eclipse tiene una amplia base de datos de documentación de diferentes edades, valores y utilidad. Desafortunadamente, encontrar una imagen en las instrucciones que no corresponda a la versión actual, por ejemplo, con una interfaz y un diseño de botones obsoletos, es algo común en este IDE. Desafortunadamente, el problema de las actualizaciones tardías de la documentación es muy común en cualquier proyecto de código fuente.


NetBeans comenzó como un proyecto de estudiantes universitarios en Praga en 1996. En 1997, el IDE se convirtió en un producto comercial, y en 1999 fue comprado por Sun Microsystems (los padres de Java) y al año siguiente presentó una versión de código abierto. La versión actual 8.1 se ejecuta en máquinas con Windows, Mac OS X, Linux y Solaris. Bueno, el paquete portátil se puede ejecutar en cualquier sistema para el que exista una máquina Java. Descargué el paquete Java EE por mí mismo, es uno de los seis paquetes de descarga posibles. Este paquete es compatible con JavaScript y HTML, GlassFish y Tomcat, pero no es compatible con PHP, C/C++/Fortran, Groovy y Grails: se pueden obtener en el paquete “Todo Incluido” (o simplemente “Todo”). Sin embargo, si lo deseo, puedo descargar soporte para los idiomas anteriores en cualquier momento seleccionando el complemento apropiado (o cualquier otro). NetBeans tiene menos que Eclipse, pero normalmente no entran en conflicto entre sí. Este otoño, Oracle (que adquirió NetBeans después de adquirir Sun Microsystems) decidió transferir este entorno de desarrollo bajo el ala de Apache Software Foundation, junto con todos los derechos, código fuente, marca registrada, dominio "netbeans.org" y otra infraestructura. elementos. Por tanto, el futuro del proyecto aún es incierto, aunque anteriormente el sistema tenía ciertos privilegios relacionados. Por lo tanto, fue NetBeans el primero en recibir soporte para Java 8 casi inmediatamente después del lanzamiento de la plataforma actualizada, y fue llamado el "IDE oficial para Java 8". Sin embargo, un mes después de su lanzamiento, esta ventaja se perdió: fue entonces cuando otros IDE también recibieron soporte para Java 8. Sin embargo, quiero señalar que el soporte de Java 8 de NetBeans es realmente bueno y que el IDE es excelente para incorporar trucos de Java 8 en código "antiguo". Sus editores, analizadores de código y convertidores ayudarán al programador a actualizar el código utilizando construcciones características de Java 8: expresiones lambda, operadores funcionales y referencias de métodos. Los complementos de JavaScript en NetBeans 8 hacen un gran trabajo al admitir Node.js y las últimas herramientas de JavaScript como Gulp y Mocha, además de admitir el intérprete de JavaScript Nashorn.
Figura 3. Aquí NetBeans está ejecutando el mismo proyecto basado en Maven en el que se abrió IntelliJ IDEA en la Figura 1. Observe la funcionalidad mejorada en el menú contextual y el submenú de refactorización.

Edición y refactorización

NetBeans Editor admite idiomas, detecta errores a medida que escribe y le ayuda con información sobre herramientas y finalización inteligente de código. Según la sensación subjetiva, el IDE hace frente a esta tarea más rápido que Eclipse, pero algo más lento que IntelliJ IDEA. Además, NetBeans tiene una gama completa de herramientas de refactorización (como se muestra en la Figura 3) que permiten al programador reestructurar el código sin romperlo, realizar análisis de código fuente y también ofrece una amplia gama de sugerencias para soluciones rápidas o extensiones de código. NetBeans incluye la herramienta de diseño Swing GUI, anteriormente conocida como "Proyecto Matisse". Los desarrolladores aprecian mucho la herramienta de refactorización automatizada Inspect & Transform, introducida en NetBeans 7.1. Le permite analizar el código del proyecto y realizar mejoras sugeridas. Aunque personalmente prefiero probar todo mi código primero con pruebas unitarias y solo luego ejecutar herramientas que puedan realizar cambios radicales. He sufrido repetidamente todo tipo de correcciones automáticas que tuvieron consecuencias irreparables.

Creación, depuración y creación de perfiles

NetBeans tiene un excelente soporte nativo para Maven y Ant, así como un complemento para Gradle. Me alegré mucho cuando descubrí que el sistema trataba los proyectos de Maven como "nativos". Esto significa que pueden simplemente abrirse en lugar de importarse. NetBeans también contiene una visualización gráfica atractiva (y útil) para las dependencias de Maven. El depurador Java de NetBeans no es malo, pero tiene algunas advertencias. Un depurador visual independiente permite al programador tomar capturas de pantalla de la interfaz gráfica del usuario y explorar las interfaces de las aplicaciones creadas con JavaFX y Swing. El generador de perfiles NetBeans hace más obvio cómo se utilizan la CPU y la memoria y tiene excelentes herramientas para encontrar pérdidas de memoria.

Comparación del trío de gigantes.

He utilizado los tres IDE, Eclipse, NetBeans e IntelliJ IDEA, a lo largo de los años en el orden cronológico indicado. Cada vez que cambiaba a un IDE diferente, sentía que mi productividad aumentaba. Pero incluso cuando estaba firmemente convencido de que IDEA era mi elección final, a veces tenía que volver a uno de los dos IDE restantes. Este fue el caso, por ejemplo, en un momento en que Eclipse era la única herramienta que soportaba el desarrollo de Android (hoy existe Android Studio, el IDE oficial actual para Android, está basado en IntelliJ IDEA). Por supuesto, los tres IDE tienen sus seguidores y detractores. Conozco a muchos desarrolladores de Java que aman IntelliJ IDEA, así como a fanáticos leales de Visual Studio C++ y C#. La mayoría de las veces, estas personas están contentas con el hecho de que su productividad ha aumentado y el costo de la suscripción anual se reembolsa después de unas pocas semanas de usar la versión paga de IDEA. Sin embargo, los usuarios de NetBeans y Eclipse también suelen estar apegados a sus herramientas y se preguntan por qué otros programadores están dispuestos a pagar dinero por IDEA. Aconsejaría a los nuevos desarrolladores de Java que se mantengan alejados de Eclipse. A pesar de que sigue siendo el IDE más popular para Java, es difícil para los principiantes: es fácil perderse en la naturaleza de Eclipse, tanto durante la implementación del sistema como durante el trabajo diario. Eclipse tiene el ecosistema de complementos más extenso de todos los IDE y también es el que tiene más probabilidades de fallar debido a la instalación de un conjunto incompatible de estos mismos complementos. Desafortunadamente, mientras usaba Eclipse, tuve que eliminar repetidamente otro ensamblaje roto de este IDE e instalar un paquete "limpio". NetBeans es bueno para la mayoría de los desarrolladores y tiene un excelente generador de perfiles que uso de vez en cuando. Sin embargo, prefiero pagar por IntelliJ IDEA Ultimate. Y el futuro de NetBeans aún no está claro. Para los nuevos desarrolladores de Java que aún no tienen el presupuesto para comprar herramientas, recomiendo usar NetBeans o IntelliJ IDEA Community Edition según sus necesidades. Vale la pena elegir el primero para aquellos que codifican servidores Java, pero solo si no entra en la categoría de aquellos que pueden obtener IntelliJ IDEA Ultimate gratis o con un gran descuento (estudiantes o programadores que están desarrollando un código abierto). proyecto).

IDE de Java "ligero"

Hoy en día, la mayoría de los desarrolladores de Java utilizan IDEA, NetBeans o Eclipse, pero a veces se necesitan entornos de desarrollo más ligeros o incluso editores de código como Sublime Text, emacs o vim que admitan complementos de Java. A continuación enumero opciones razonables para aquellos que buscan algo un poco más ligero:
  • DrJava es un pequeño entorno de desarrollo gratuito. Fue creado para estudiantes de la Universidad Rice y se ha vuelto bastante popular: DrJava ya se ha descargado más de 2 millones de veces. DrJava está diseñado para promover el desarrollo basado en pruebas. El marco contiene un editor de código inteligente, un panel de interacción para evaluar el código de la aplicación, un depurador a nivel de fuente y herramientas de prueba unitaria.
  • BlueJ es un entorno de desarrollo Java gratuito creado por especialistas de la Universidad de Kent para programadores principiantes. Este entorno es compatible con Oracle. BlueJ tiene una interfaz mucho más limpia y sencilla que los IDE profesionales como NetBeans o Eclipse, e incluso incluye un tutorial dedicado sobre los conceptos básicos de programación orientada a objetos.
  • JCreator es otro pequeño IDE de Java para Windows, escrito en C++ (por motivos de rendimiento). La versión Pro paga está equipada con un depurador, soporte para Ant y asistentes de código, pero la versión gratuita (LE) no.
  • Eclipse Che es un IDE en la nube basado en navegador que admite Java, C++, JavaScript, Python, PHP, Ruby y SQL.

Elegir un IDE de Java según el proyecto

Intenté describir los importantes beneficios de cada uno de los tres IDE de Java más importantes y mencioné brevemente a sus pequeños y útiles rivales. Para elegir el IDE adecuado, debe sopesar los pros y los contras y compararlos con sus necesidades y las de sus proyectos. Si te unes a un equipo, es una buena idea utilizar el mismo IDE que otros desarrolladores, aunque no es obligatorio. Si su equipo aloja fuentes en GitHub, naturalmente será más conveniente si su IDE admite GitHub. Sí, puedes manejar la transferencia de código sin un IDE usando el cliente GitHub o la línea de comando git. Pero, ¿qué tan efectivos serán esos saltos entre diferentes sistemas? También es importante que el IDE admita el sistema de compilación. Por ejemplo, si se trata de Maven, es poco probable que desee reconstruir el sistema en Ant para realizar pruebas locales. Afortunadamente, los tres grandes IDE de Java son compatibles con Ant, Maven y Gradle, ya sea de forma inmediata o con un complemento. Pero para los IDE “pequeños” esto puede no ser cierto. Es un deseo natural que el entorno de desarrollo admita la versión de JRE que se utiliza en el proyecto. Si las versiones no coinciden, existe una alta probabilidad de que aparezcan muchos errores adicionales que, por ejemplo, aparecerán en usted, pero no en otros miembros del equipo. Es poco probable que tal situación tenga un buen efecto en tu karma. Francamente, es más probable que la inconsistencia de JRE se deba a errores de configuración que a la falta de soporte de IDE, a menos que el IDE aún no se haya actualizado a una nueva versión de Java. Simplemente crea que si su IDE es totalmente compatible con los marcos y tecnologías que se utilizan en el proyecto, realmente ayudará a acelerar el trabajo. Lo más probable es que lo consigas de todos modos. Pero, si el IDE comprende cómo se relacionan las declaraciones JPA con las clases de expresión y entidades JPA (como IntelliJ), dedicará mucho menos tiempo al código relacionado con JPA que si no lo comprende por completo. Bueno, si el IDE admite el marco de pruebas y el ejecutor de código utilizado para el proyecto, puedes ejecutar pruebas sin cambiar el entorno de trabajo. Esto también acelerará el proceso de desarrollo. Finalmente, el trabajo es más rápido si el IDE es compatible con el sistema de tickets y seguimiento de errores del proyecto. Nuevamente, puede usar un cliente web o independiente, digamos JIRA, pero es difícil no estar de acuerdo en que verificar los tickets es mucho más rápido sin cambiar la ventana, mientras permanece directamente en el IDE.

¿Gratis o de pago?

Después de probar IntelliJ IDEA Ultimate, tuve la sensación de que era el entorno de desarrollo adecuado. Una especie de Cadillac del mundo IDE. Nuevamente, si bien no es gratuito, creo que las ganancias en productividad al usarlo valen la suscripción anual. Para los principiantes que no pueden pagar una suscripción anual a IntelliJ IDEA Ultimate, recomiendo usar NetBeans en lugar de Eclipse. Por supuesto, el ecosistema de complementos de Eclipse está mucho más desarrollado hoy que cualquier otro IDE, pero está muy descuidado y descuidado: un desarrollador novato corre el riesgo de quedarse atrapado en la jungla del IDE en lugar de sumergirse en el trabajo. También mencioné alternativas "ligeras", dos de las cuales fueron diseñadas específicamente con fines educativos. Bueno, si estás empezando a aprender idiomas y prefieres un ambiente minimalista, ¿por qué no?

Java es un poderoso lenguaje de programación que admite muchas plataformas. Cada uno tiene su propio entorno de desarrollo; veamos cuáles.

1-NetBeans

NetBeans, que alguna vez fue propiedad de Sun Microsystems y ahora de Oracle, es uno de los mejores IDE de la última década. NetBeans es un entorno de desarrollo modular y todas las funciones del IDE vienen en paquetes llamados módulos. Ofrece una fácil integración con el software de control de versiones. NetBeans fue creado como código abierto, por lo que todos pueden contribuir a su desarrollo. Es gratuito y funciona en la mayoría de los sistemas operativos y plataformas.

  • Desarrollador: Oráculo.
  • Precio: Gratis.
  • Tamaño: 186 MB para la versión Java EE.

2 - IDEA IntelliJ

IntelliJ es un IDE de Java de código cerrado y uno de los principales IDE para Java (los otros dos son Eclipse y NetBeans). IntelliJ IDEA tiene una interfaz excelente y moderna. Fue elegido como IDE base para Android Studio, un nuevo software para crear aplicaciones de Android desarrollado por Google.

CON Hay dos versiones de IntelliJ: Community Edition, que es gratuita, y Ultimate Edition, que está totalmente reconocida y requiere el uso de licencias pagas.

  • Desarrollador: JetBrains.
  • Plataformas: Windows, Mac y Linux.
  • Precio: Pagado ($199 licencia de usuario individual). Gratis para estudiantes, también existe una versión de código abierto, también gratuita.
  • Tamaño: 180 MB para Community Edition, 290 MB para Ultimate Edition.

3-Eclipse

Eclipse es uno de los IDE más populares, no sólo para Java sino también para C++ con PHP. Eclipse es una herramienta de código abierto con una gran comunidad de desarrolladores. También cuenta con una enorme biblioteca de complementos creados por los propios usuarios. Este IDE tiene muchas versiones, la más popular es Eclipse Oxygen . Eclipse también fue el IDE base para el antiguo SDK (kit de desarrollo de software) de Android.

  • Desarrollador: Fundación Eclipse.
  • Precio: Gratis.
  • Tamaño: El paquete de descarga de Eclipse Oxygen para Java EE es de 180 MB.

4 - JDesarrollador

JDeveloper es un entorno de desarrollo completamente gratuito lanzado por Oracle. JDeveloper ofrece varias características tales como: refactorización; control de versiones de Git; auditoría y métricas; código de depuración y creación de perfiles; Soporte para Ant y Maven. Viene en dos versiones:Studio Edition, que tiene un conjunto completo de herramientas para crear programas Java, y Java Edition, que carece de funciones J2EE, ADF, UML y bases de datos, pero esta versión ocupa menos espacio y es más rápida. Java Edition tiene todas las características básicas necesarias para Java y debería satisfacer a la mayoría de los programadores principiantes de Java.

  • Desarrollador: Oráculo.
  • Plataformas: Windows, Mac y Linux.
  • Precio: Gratis.
  • Tamaño: Edición Java -181 MB, Edición Studio -1,8 GB.

5-Dra. Java

Dr. Java es un IDE de Java ligero compatible con el proyecto SourceForge. Está destinado principalmente a programadores y estudiantes principiantes, pero también tiene funciones avanzadas para programadores profesionales. Este es un proyecto gratuito y de código abierto. Dr. Java es mantenido por el grupo JavaPLT de la Universidad Rice. Su interfaz fue desarrollada utilizando el kit de herramientas Swing desarrollado por Sun Microsystems.

  • Desarrollador: JavaPLT.
  • Plataformas: Windows, Mac y Linux.
  • Precio: Gratis.
  • Tamaño: 13MB

6 - AzulJ

BlueJ es un IDE de Java de código abierto creado con fines educativos. También es adecuado para desarrollar pequeños proyectos de software. La interfaz de BlueJ es bastante sencilla, por lo que los principiantes pueden utilizarla con facilidad. Muestra clases y objetos de una manera clara y visual. El objetivo principal de BlueJ es enseñar programación orientada a objetos, por lo que el proyecto es adecuado para principiantes.

  • Desarrollador: King's College London, Universidad de Kent.
  • Plataformas: Windows, Mac y Linux.
  • Precio: gratis.
  • Tamaño: 160-170 MB (incluido JDK).

7 - jCreador

jCreator es un IDE de Java rápido y eficiente escrito en C++ (lo que supuestamente lo hace más rápido que otros IDE escritos en Java). Tiene una interfaz similar a versiones anteriores de Visual Studio y te permite personalizarla a tu gusto. jCreator es un IDE pago, pero hay una versión gratuita disponible sin funciones como la finalización de código. jCreator sólo ofrece soporte para Windows, pero se puede ejecutar en Linux usando Vine.

  • Desarrollador: Software Xinox.
  • Plataformas: Windows.
  • Precio: de $30 a $1600, versión de prueba disponible.
  • Tamaño: 7,2 MB para la versión de prueba.

8 - jAgarrar

jGrasp es otro IDE de Java muy ligero que se centra en la visualización de software. Tiene características como diagramas de clases UML que ayudan a mejorar la legibilidad del código. jGrasp genera visualizaciones automáticamente y también tiene motores de identificación de estructuras de datos, visores de objetos dinámicos y varias otras características que presentan el código Java en un formato agradable y fácil de leer.

  • Desarrollador: Universidad de Auburn.
  • Plataformas: Windows, Mac y Linux.
  • Precio: Gratis.
  • Tamaño: 5 MB.

9 - Pie verde

Greenfoot es un IDE educativo de Java. Se basa en gran medida en la visualización de estructuras de datos y está optimizado para crear programas simples y juegos Java 2D. Greenfoot tiene una función para compartir en línea que se configura directamente dentro del entorno. Los usuarios pueden compartir sus programas en línea para que otros los vean y reciban ayuda y comentarios. Los proyectos colaborativos se pueden editar en línea. En general, Greenfoot es ideal para principiantes.

  • Desarrollador: King's College London, Oracle.
  • Plataformas: Windows, Mac y Linux.
  • Precio: Gratis.
  • Tamaño: 162 MB para Windows (incluido JDK).

10 - Codenvidia

Codenvy es un IDE puramente basado en la nube, lo que significa que no requiere instalación. Codenvy tiene todas las características de un IDE independiente con todas las funciones, incluidos entornos de compilación/ejecución/depuración. La capacidad de colaborar en tiempo real es una de las características deseables de Codenvy. Codenvy tiene una excelente interfaz y múltiples opciones de espacio de trabajo. Está disponible después de pagar una tarifa de suscripción mensual. La edición comunitaria de Codenvy es de uso gratuito.

  • Desarrollador: Codenvy Inc.
  • Plataformas: Basado en navegador.
  • Precio: gratis para la edición comunitaria Suscripción a la versión premium desde 1$/mes.

Conclusión

Dado que Java es un lenguaje de programación multiplataforma, casi todos los entornos de desarrollo también lo son. Sin embargo, nuevamente, la elección del IDE también depende de las preferencias personales, los propósitos de uso y el nivel de habilidad. ¡Buena suerte!

5 (100%) 1 voto

Es hora de pasar de las funciones del lenguaje a programas que le ayudarán a escribir código de forma más rápida y correcta. El entorno de desarrollo (IDE - Integrated Development Environment) incluye:

  • editor de código;
  • compilador;
  • coleccionista;
  • depurador

Algunos entornos de desarrollo contienen todo esto listo para usar, otros llegan a este estado con la inclusión de complementos y módulos. Aquí están los 10 mejores IDE para Java actuales.

IDEA IntelliJ

Descripción: Uno de los entornos más funcionales para el desarrollo de Java, equipado con un sistema de asistencia inteligente en la escritura de código. Según el contexto, IDEA configura cómo funciona el autocompletado y la disponibilidad de las herramientas. La abundancia de herramientas le permite acelerar el desarrollo, por ejemplo utilizando plantillas e iteraciones, y también aumentar la productividad del programa final. Una gran cantidad de complementos y complementos para cualquier tarea hacen del entorno de desarrollo Java IDEA una herramienta casi ideal.

Costo: $499 por el primer año de operación.

NetBean

Descripción: Posicionado por el fabricante como un entorno de desarrollo que admite todas las funciones más recientes de Java, lo que le permite escribir código sin errores gracias a la herramienta FindBug. El sitio, la documentación y el propio IDE para Java están en ruso. Quizás el entorno de desarrollo java gratuito más potente.

Costo: Gratis.

Esta lista de IDE de Java está lejos de ser completa y cubre solo los representantes más populares. Por eso, antes de elegir un favorito, recuerda que el mejor entorno de desarrollo java es aquel que te permite resolver el problema actual con el mínimo esfuerzo y con el mejor resultado.

Casi todos los libros y tutoriales sobre Java para principiantes comienzan con una descripción de la programación orientada a objetos: qué maravilloso y magnífico es. Está claro, dado que en Java es simplemente imposible hacer cualquier otra programación que no sea la orientada a objetos, entonces primero te piden que domines 40...80 páginas de locas analogías con la jerarquía de gatos/perros/patos/autos, y solo después de eso se le ofrece escribir "¡Hola, mundo!". :-)

Vale la pena señalar que absolutamente todo el entrenamiento de Java se basa en la salida más primitiva del resultado a la consola. Es decir, no aplicación de consola en el sentido habitual, es decir, la salida de algunos datos línea por línea. Bueno, por ejemplo, Turbo Pascal 3.0 se lanzó en 1985 y ya tenía soporte para modos gráficos. En 1990, apareció Turbo Vision, algo muy interesante, al igual que Windows solo para DOS. Y en Java en 2018, solo es posible la salida de consola. Y todo este entusiasmo y frialdad de alguna manera se hace añicos ya en la etapa "¡Hola, mundo!"... Lo único peor probablemente sea divertirse con una calculadora programable MK-61 o MK-52, pero ¿qué? hay la misma salida línea por línea.

¡Pero lo más divertido es que en Java puedes crear programas usando programación visual! Me enteré de esto solo cuando leí (o más bien me familiaricé con) un libro de 500 páginas, donde en uno de los últimos capítulos de repente quedó claro que para Java existen GUI (interfaces gráficas de usuario) normales y que se pueden diseñar. programas con botones, campos de entrada y menús normales. Surge la pregunta: ¿por qué pasaste tanto tiempo preocupándote por esta pésima consola cuando podrías haber hecho todo de manera hermosa y ordenada a la vez?

Después de pasar varios días estudiando este tema, descubrí varios matices divertidos.

Primero- GUI para Java tiene tres tipos (bibliotecas): A.W.T., Balancearse(¿A quién se le ocurren esos nombres?) y javafx.

Hoy en día (Java 8 y 9) están todos incluidos en el JDK: es decir, todo funciona de inmediato y no es necesario molestarse en instalarlos. Esta es una gran ventaja.

Pero AWT es la primera y muy antigua implementación, por lo que no es necesario utilizarla. En general, no es kosher. Swing tampoco es kosher, porque algo se ha estropeado allí y los programas son terriblemente lentos por eso. No puedo decirlo con mayor precisión, no lo entendí, pero parece que ya no se está desarrollando oficialmente en varias versiones. Pero JavaFX es un rumor y nuestro brillante futuro.

Hay otra abominación subprogramas de java, aquellos que funcionan en el navegador y al mismo tiempo lo “cuelgan” con fuerza, como Flash, sólo que aún peor. Afortunadamente, esta/estas cosas prácticamente ya no se utilizan, por lo que perder el tiempo estudiándolas no tiene sentido.

Entonces, lo único a lo que vale la pena dedicarle tiempo es JavaFX.

Segundo punto. No es tan simple. Consideremos Delphi (o Visual Studio, Lazarus, no importa). Incluso para un principiante, la creación de un programa simple (un botón y un campo de texto para la salida) será así:

  • lanzar Delphi;
  • se crea automáticamente un nuevo proyecto con el formulario principal;
  • seleccione un botón en la paleta de componentes y colóquelo en el formulario; todo es visual
  • de manera similar, colocamos un campo de texto en el formulario;
  • si es necesario, en el panel de propiedades puede especificar el texto del botón, las dimensiones, etc.;
  • lanzamiento: Delphi ofrecerá guardar, guardar.

Es decir, no escribimos ni una sola línea de código, el IDE hizo todo por sí mismo. Si miras el código generado, no puedes llamarlo simple: ya requiere ciertos conocimientos, pero Delphi es lo suficientemente inteligente como para entender cómo trabajar con él.

Si queremos agregar alguna acción, por ejemplo, cuando se hace clic en un botón, llenar un campo de texto con la frase “¡Hola!”, entonces hacemos esto:

  • haga doble clic en el botón (o seleccione el evento onClick);
  • Delphi crea el código para este controlador de eventos y nos transfiere al editor;
  • Escribimos el nombre del campo de texto y Delphi ofrece sugerencias que pueden ayudarle a descubrir qué hacer y cómo hacerlo.

Es decir, nuevamente, el IDE hizo todo el trabajo sucio.

Pero esto es en otros lenguajes, Java sigue su propio camino. Para crear un botón en JavaFX, debe crear manualmente un escenario: "escenario de teatro" (¡el nombre es completamente serio!) y sobre ellos colocar una escena. Hay una especie de contenedor en el que ya se encuentran colocados otros elementos.

Se supone que cada elemento y cada una de sus propiedades deben programarse individualmente. Aquí hay un ejemplo de dos botones y una etiqueta de mi libro de entrenamiento.

Respuesta = nueva etiqueta ("Pulse un botón"); Botón btnUp = nuevo Botón("Arriba"); Botón btnAbajo = nuevo Botón("Abajo"); btnUp.setOnAction (nuevo controlador de eventos () (mango público void(ActionEvent ae) (respuesta.setText("Presionaste Arriba."); ) )); btnDown.setOnAction (nuevo controlador de eventos () ( public void handle(ActionEvent ae) (respuesta.setText("Presionaste Abajo."); ) )); rootNode.getChildren().addAll(btnUp, btnDown, respuesta); ...

Cuando hay una docena de botones, más 20 elementos de menú y otros 30 componentes, el código no parecerá pequeño. Y esto sin el código que es responsable de propiedades adicionales, como alineación, tamaños, fuente... Y aquí está segundo indica que los tutoriales de JavaFX muestran exactamente cómo escribir "código fx" a mano. Melancolía, en una palabra...

Pero aquí viene la gracia salvadora. tercer matiz. Resulta que personas inteligentes (aparentemente familiarizadas con los IDE completos) han desarrollado otro tipo de aplicación, donde un archivo xml descriptivo llamado fxml, y dichos programas se intercambian como “ Aplicaciones FXML JavaFX»

Me sorprende absolutamente que el aprendizaje de Java no comience con este tipo de aplicaciones. Incluso si no es Delphi, sigue siendo un millón de millones de veces mejor que trabajar con la consola y llenarte la cabeza con otras tonterías sobre por qué necesitas usar cientos de líneas de programación orientada a objetos, mientras que en otros idiomas se necesita un procedimiento simple. ;-)

Ahora pongámonos serios. Si nunca has programado en Java, puedes probarlo ahora mismo. En realidad es bastante bueno, aunque llevará un poco de tiempo acostumbrarse a los programas. Si tienes experiencia con "IDE visuales", aún mejor: conocerás a mucha gente que conoces.

JDK

Java debe estar instalado en su computadora. No proporcionaré enlaces sobre cómo hacer esto; Google me ayudará, porque todo es demasiado simple.

IDE

En Java no existe un único programa: el entorno de desarrollo, por lo que en Internet hay ejemplos de diferentes programas. Los más primitivos, como Notepad++, sólo son aptos para salida de consola, pero si consideramos algo más serio, entonces sólo destacan tres candidatos: NetBeans, Eclipse e IntelliJ IDEA.

NetBean- el programa más simple que se inicia rápidamente (en comparación con otros) y funciona bastante bien.

Eclipse- También es una buena opción, más potente que NetBeans, pero más débil que IntelliJ IDEA.

IDEA IntelliJ- Se ve mejor, pero hay que pagarlo con rapidez. Vale la pena señalar que Android Studio se basa en IntelliJ IDEA, pero por alguna razón el estudio funciona mucho más lento.

Un punto importante está relacionado con la programación para Android. De estos tres IDE, sólo IntelliJ IDEA es más o menos adecuado para esto. Hay muchos materiales en Internet sobre programación para Android en Eclipse, pero todos ya están desactualizados; no pierda el tiempo ejecutando un complemento ADT antiguo e intentando hacer al menos algo con él. Quizás el antiguo SDK de Android funcione, pero todos los nuevos ya no funcionarán.

Le mostraré cómo crear una aplicación FXML JavaFX en los tres programas, pero antes de comenzar, necesita instalar un programa más: SceneBuilder (use la versión Java 8). Este es el programa clave donde, de hecho, se realiza toda la construcción visual. Generador de escenas Puede funcionar por sí solo sin un IDE, por lo que puedes ejecutarlo y ver cómo funciona. El resultado será un archivo fxml que contendrá todo el marcado necesario. Este archivo se utiliza en el IDE, en lugar de escribir megatones de código. :-)

conocimientos tradicionales

El programa creado será muy simple: un botón y un campo de texto. Cuando hagas clic en el botón, deja que se agregue el texto "¡Hola!" al campo de texto.

En cada programa, debe especificar la configuración de antemano: la que utiliza el JDK. Si no sabes cómo hacerlo, búscalo en Google.

NetBean

Antes de comenzar, necesita conectar SceneBuilder: Herramientas - Opciones - Java - JavaFX - Página de inicio de Scene Builder. Seleccione el directorio del programa. La configuración sólo debe realizarse una vez. Esto se aplica a todos los IDE.

Cree un nuevo proyecto donde necesite seleccionar "Aplicación FXML JavaFX".

Haga clic en "Finalizar" y, después de un poco de trabajo por parte de NetBeans, vemos los archivos terminados:

  • myfx.java- este es el archivo principal, que realmente inicia todo el programa.
  • FXMLDocumentController.java- este es el "controlador", donde se llevará a cabo la mayor parte de la programación.
  • FXMLDocumento.fxml- este archivo almacena la parte visual.

Ahora ejecuta el programa. Primero, comenzará el ensamblaje y la compilación (bastante rápido), después de lo cual aparecerá la ventana de nuestro programa.

Esto es genial porque no hemos escrito ni una sola línea de código, pero ya tenemos un programa con un botón que funciona. :-)

Si ha especificado correctamente la ruta a SceneBuilder, puede seleccionar el elemento del menú "Abierto" fichado FXMLDocumento.fxml. Lo mismo sucederá si haces doble clic. Se abrirá SceneBuilder. Si no hay ningún elemento, entonces la ruta se especificó incorrectamente, verifique la configuración.

El principio de funcionamiento de SceneBuilder es el mismo para todos los IDE, por lo que por ahora solo describiré los puntos generales, luego podrás descubrirlo tú mismo.

Vale la pena señalar que después de editar el archivo, no es necesario cerrar SceneBuilder. Sólo necesita guardar (Ctrl+S) y cambiar al IDE; él mismo recogerá los cambios.

La ventana de SceneBuilder se divide en tres partes:

  • a la izquierda están los conjuntos de componentes, jerarquía y Controlador, donde se indica la clase principal (¡esto es importante!)
  • en el centro está la forma misma, donde tiene lugar la construcción visual.
  • a la derecha están las propiedades de los componentes, divididas en tres pestañas (esta es una división condicional). La pestaña Código es responsable de lo que se utilizará en el archivo java.

La creación de programas FX debe comenzar con un contenedor. En este ejemplo se utiliza NetBeans. Panel de anclaje. Es bastante conveniente y le permite configurar la sangría "correcta" para elementos anidados. Pestaña Contenedores contiene otros contenedores con los que puedes practicar por tu cuenta (yo ni siquiera he dominado la mitad :-)).

La jerarquía de componentes es algo muy conveniente que le permite seleccionar rápidamente el elemento deseado.

Según los términos de la especificación, debemos tener un campo de texto. NetBeans usa Label, pero no eliminaremos nada, solo agregaremos un nuevo elemento campo de texto en la forma (arbitrariamente a tu gusto).

La vista previa es posible en SceneBuilder (Ctrl+P). En este modo, sólo se muestran el formulario y todos los elementos "sin programación java".

Ahora un punto importante: para poder utilizar un componente en un programa java (en nuestro código), se deben hacer dos cosas.

La primera es comprobar que se especifica el controlador correcto. En nuestro caso, NetBeans ya hizo todo y especificó myfx.FXMLDocumentController.

Como puede ver, este es el controlador del archivo. FXMLDocumentController.java(paquete.controlador). Los IDE no siempre lo indican, pero esto es importante, ya que el archivo fxml (más precisamente, el código java) lo usa para vincular.

El segundo punto es que el componente utilizado debe tener su propio ID: este es el parámetro fx:id. Aquí indiqué campo de texto1.

Aparecerá un mensaje de triángulo amarillo en la parte superior indicando que supuestamente no hay conexión entre esta identificación y el controlador. No le prestes atención por ahora, hablaremos de ello más tarde.

El botón que llenará el campo de texto también debe tener su propia identificación, así como un método de evento onAction (este es el evento principal del componente, y no onClick, como en Delphi). NetBeans ya se ha encargado de esto, por lo que no tendremos que escribir nada.

En este punto se puede completar la construcción visual. Guarde y cambie a NetBeans. Vemos que el archivo FXMLDocumento.fxml cambiado: agregado campo de texto1:

Ahora necesitamos usar de alguna manera el campo de texto en el código Java. A diferencia de Delphi, NetBeans no crea ningún código para esto, por lo que tendremos que agregarlo semimanualmente. Para hacer esto, diferentes IDE usan diferentes métodos, pero el principio general es que debe colocar el cursor en el campo deseado en el editor y realizar algunas "acción". En NetBeans se llama Instalar el controlador en el menú Fuente. (Sí, Java tiene grandes problemas con los nombres...)

Después de ejecutar este comando, habrá una transición al archivo FXMLDocumentController.java, donde se agregará una declaración de variable al código campo de texto1:

Tenga en cuenta "@FXML": esta anotación indica que el código se está utilizando en FXML de alguna manera. Después de estos cambios, SceneBuilder ya no emitirá una advertencia como lo hacía anteriormente el triángulo amarillo. Si ejecuta SceneBuilder nuevamente, puede verificar esto.

Lanzamos el programa de ejecución para la prueba. Ahora nuestra tarea es completar el campo de texto haciendo clic en el botón. Como ya entendiste el método. manejarBotónAcción hace el trabajo correcto. Agregamos en él:

TextField1.setText("¡Hola!");

Presta atención a cómo funciona. finalización del código después de presionar el punto.

A medida que escribe, NetBeans limitará las opciones donde podrá seleccionar la opción que desee. Esta característica hace la vida muy fácil a los programadores, ya que hay demasiadas opciones y esto permite evitar varios tipos de errores de sintaxis al escribir.

Esta característica está presente en todos los IDE, aunque existen diferencias en su implementación y uso.

Lanzamos el programa y vemos que todo funciona como debería.

Tuvimos que escribir solo una línea de código y realizar algunos pasos adicionales en el editor.

Eclipse

Eclipse tarda un poco más en iniciarse que NetBeans. Primero debe especificar la ruta a SceneBuilder. Esto se hace en Ventana - Preferencias - JavaFX.

Tenga en cuenta también que Eclipse no es un programa ruso (ni siquiera sé si existe un idioma ruso para ello).

Cree un nuevo proyecto y seleccione JavaFX.

Hacer clic Próximo y vaya a la página de configuración. Aquí indiqué el nombre del proyecto, como antes. mifx(Tengo diferentes directorios de proyectos para diferentes IDE, por lo que no se superponen entre sí).

Aquí debe seleccionar el tipo de aplicación, el tipo de contenedor y el nombre del controlador. Hacer clic Finalizar y Eclipse genera rápidamente el esqueleto de nuestro programa futuro.

Aquí todo es muy similar, sólo se ha añadido un archivo más. aplicación.css- Sí, sí, ¡en JavaFX puedes usar CSS para personalizar el diseño! Eclipse generó inmediatamente un código de conexión para este archivo.

Ejecutemos el programa y asegurémonos de que no haya errores.

A diferencia de NetBeans, este formulario está completamente vacío. Abrámoslo en SceneBuilder usando el menú contextual.

Y aquí vemos que no hay forma. Pero, de hecho, existe, solo que de forma predeterminada se usa el tamaño calculado (alto y ancho), que en este caso es cero. ¡No hay componentes! En nuestro caso esto no es exactamente lo que necesitamos, por lo que seleccionaremos BorderPane en la lista jerárquica y en las propiedades. Ancho preferido Y Altura preferida Indiquemos algunos valores. Estas propiedades especifican el ancho y alto "deseado". Después de esto, el formulario “aparece” inmediatamente.

El contenedor BorderPane consta de 4 partes: superior, derecha, inferior, izquierda y centro. Los componentes deben colocarse en diferentes partes; su posición dependerá de esto cuando se cambie el tamaño de la ventana.

Es bastante difícil de explicar con palabras, simplemente intente colocar algunos botones y luego cambie el tamaño de la ventana en la vista previa.

No me puse demasiado sofisticado y coloqué un campo de texto en la parte superior y un botón en el centro.

Ahora comprobemos que el controlador esté especificado: en este caso aplicación.SampleController- Eclipse hizo el trabajo por nosotros.

Ahora necesitamos especificar la identificación de nuestros elementos. Para el botón que configuré btn1 y el campo de texto campo de texto1. Nuevamente recibimos el mensaje del “triángulo amarillo”.

Para el botón, especificamos un método para el evento: btn1Haga clic.

Guardemos y volvamos a Eclipse. Veremos que el archivo Muestra.fxml actualizado, pero aparecieron íconos de advertencia junto a algunas líneas.

La situación aquí es exactamente la misma que en NetBeans: es necesario realizar ediciones en modo "semiamanual". En Eclipse, esto se hace usando el menú contextual del segundo botón del mouse: Solución rápida o tecla de acceso rápido Ctrl+1(lo que sea más conveniente).

Al mismo tiempo, aparece una pista sobre la acción prevista. Por ejemplo para campo de texto1 Se propone agregar un identificador al controlador:

y para el botón también hay un método de controlador de eventos:

Al mismo tiempo, Eclipse se ralentiza un poco y los cambios no se muestran inmediatamente en la pantalla. Aquí debe cambiar al archivo del controlador o esperar un poco. Como resultado, se agregarán los cambios necesarios al código y los íconos de advertencia desaparecerán.

Agreguemos nuestro código como lo hicimos antes en NetBeans.

Observe cómo el autocompletado funciona de forma más inteligente. En modo automático se ralentiza un poco, pero si pulsas Ctrl+Espacio(la misma combinación se usa en muchos IDE), esto le permite obtener buena ayuda.

Lanzamos nuestro programa.

Y estamos agregando otro IDE a nuestro haber. :-)

IDEA IntelliJ

IntelliJ IDEA se inicia con bastante lentitud, por lo que es posible que tenga tiempo para revisar su correo electrónico. :-)

Nuevamente, especifique la ruta a SceneBuilder: Archivo - Configuración:

E indique su nombre (como de costumbre - myfx):

IntelliJ IDEA se inicializará y veremos los tres archivos ya familiares. Ejecutemos el programa para comprobar si hay errores.

Este también es un formulario vacío, pero se indica el título del programa. Si miras el código principal.java, entonces veremos la línea:

PrimaryStage.setTitle("Hola mundo");

Este es el título de la aplicación. Esta línea falta en otros IDE, pero ahora sabemos para qué sirve el "escenario de teatro". ;-)

Cambie a SceneBuilder (similar a Eclipse): con el segundo botón del mouse debe seleccionar Abrir en SceneBuilder.

Aquí también hay un formulario vacío, pero con un contenedor. Panel de cuadrícula. Instalar Ancho preferido Y Altura preferida para mostrar el formulario.

El GridPane en sí es una cuadrícula de celdas para elementos. Creo que no tiene sentido repetirnos: todas las acciones serán similares:

  • colocar un botón y un campo de prueba,
  • asignarles una identificación,
  • para el botón, especifique un método para procesar el clic,
  • No olvides comprobar si el controlador está especificado ( muestra.Controlador).

Cierre SceneBuilder y regrese a IntelliJ IDEA. Aquí debe agregar identificadores al código y también crear un método para reaccionar ante el clic de un botón.

IntelliJ IDEA ofrece dos formas de hacer esto. Primero, cuando pase el mouse sobre el "área del problema", aparecerá una sugerencia en la que puede hacer clic:

El segundo es una tecla de acceso rápido. Alt+Entrar

Cada vez que lo agrega, cambia al archivo del controlador, donde puede ver inmediatamente los cambios.

En este caso, tenga en cuenta que no se agrega la línea "@FXML". Si lo agregamos manualmente antes de las variables y el método, IntelliJ IDEA ofrecerá inmediatamente agregar la clase Java requerida:

En general, IntelliJ IDEA muestra una inteligencia bastante buena y actúa como asistente en la escritura de código. Y lo hace de forma independiente sin pulsar botones innecesarios.

Bueno, agreguemos nuestro código para el controlador y ejecutemos el programa:

¡Genial, todo funciona!

Total

La conclusión principal es La programación visual es posible en Java. Puede que no sea lo ideal, pero es bastante adecuado, especialmente para principiantes. Aprender un idioma es mucho más interesante cuando hay algún resultado tangible: la programación orientada a objetos, las clases y otros conocimientos son buenos, pero es mejor comenzar con botones, campos de entrada, menús y todo lo que implica un programa normal. Y la consola es aburrida y poco interesante.

Traje tres IDE no por casualidad. Hay muchos ejemplos en Internet para Java y todos son para programas diferentes. Personalmente, todavía no he decidido cuál es mi preferencia, ya que todos tienen sus pros y sus contras. Probablemente necesitemos trabajar con todos, entonces quedará claro.

Pero el punto clave es la capacidad de trabajar con SceneBuilder. La creación de un formulario en JavaFX es ligeramente diferente a Delphi, principalmente en el uso de contenedores complejos (se pueden anidar unos dentro de otros). Por lo tanto, primero debe ocuparse de ellos y luego podrá encargarse de los componentes mismos.




Arriba