Logo de X-code
Muchas veces cuando comenzamos a desarrollar proyectos nos vemos en la necesidad de tener un IDE(en español Ambiente de Desarrollo Integrado) para poder acceder a la estructurar del proyecto, y tener la flexibilidad de programar en vario lenguajes al mismo tiempo, por la misma naturaleza de nuestro entorno de desarrollo por eso siempre se tiene la tendencia de elegir el más completo, el más rápido y más eficiente.

Actualmente existe un sin fin de IDE's, que se ejecutan en diferentes sistemas operativos e inclusive existen varias alternativas cloud, que permiten interpretar y desplegar el código fuente escrito.

Por ello tenemos un escenario diverso con varias alternativas a elegir según sea la necesidad que presente el proyecto a encarar.

Para ello he seleccionado una serie de IDE, con los he trabajo en estos años de desarrollo, y a continuación describiré sus principales características.


NetBeans IDE


Es un proyecto de código abierto, cabe destaca que es un producto libre y gratuito sin restricciones de uso, con una comunidad en constante crecimiento con más de 100 socios en todo mundo. En principio Sun MicroSystems fundo el proyecto en junio del 2000 y actualmente el patrocinador principal que hoy en día es administrado por Oracle Corporation.

Una de las características que posee, es un sistema de proyecto basado en Ant, de configuración por defecto, haciendo más fácil la vida del programador. Además entre otras características se encuentra el control de versiones en diferentes versionadores, 

Si bien su concepción esta orientada al entorno de programación Java(JavaSE, Java EE, JavaFX, JavaME entre otros) , Netbeans posee Add-on Packs, es decir, paquetes adicionales que pueden ser descargados individualmente teniendo la plataforma netbeans (Base IDE).

Entre esos Add-on tenemos soporte para lenguajes de programación como: C/C++, XML, HTML, PHP, Groovy, CSS, JavaScrip, por su puesto Java y entre otros.

Una característica importante es que puedes descargar con todos los pack completos y con los servidores GlassFish Server Open y Apache Tomcat.

El proyecto Netbens se puede entender como plataforma base y de puede dar el uso que sea requerido, es así que existen varias herramientas Gis, de modelado 3d, inclusive para varias áreas.

Otra característica fundamental Netbeans posee plugins oficiales para poder agregar más funcionalidades al IDE, también existen otros plugins que son realizados por la comunidad aportando un entorno cómodo y diverso.

El requerimiento principal  para la ejecución es tener el JDK correspondiente ya que el IDE fue escrito en código Java, esto permite que se pueda ejecutar en varios sistemas operativos como Windows, Linux y Mac.

Para poder descargarlo


JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html

Eclipse

Eclipse es un conjunto de herramientas de programación de código abierto multiplataforma. Esta plaforma ha sido usada típicamente para desarrollar IDE, como el Java Develpment Toolkit(JDT) también ha sido utilizada para otros tipos de aplicaciones por ejemplo BitTorrent, Azureus y un sin fin de implementaciones para diferentes entornos de desarrollo o soporte para especificaciones de desarrollo.

Eclipse originalmente fue desarrollado por IBM como el sucesor de su familia de herramientas para VisualAge, actualmente está siendo desarrollado y mantenido por la Fundación Eclipse, organización sin ánimo de lucho fomentando la comunidad de código abierto.

Una de la afirmaciones o filosofías de Eclipse a acerca de sus software es: una especie de herramienta universal - un IDE abierto y extensible para todo y nada en particular"
Por ello existen diferentes paquetes para cada entorno de desarrollo con el lenguaje correspondientes por ejemplo, para desarrollar en JavaEE, se dispone el IDE, JavaEE Developers.  Esto hace que se confunda muchas veces para ello se debe buscar los paquete que correspondan con los requerimientos que se necesite.

Eclipse ofrece soporte para los lenguajes como  Java, C/C++, Python, Php, javascript, .net, entre otros además algo que cabe destacar es que tiene editores gráficos bastantes interesantes, y sin fin de plugins para lenguajes, framework, modeladores.

Lo interesante que presenta eclipse es que posee varios proyectos, que les invito a echarle un vistazo https://projects.eclipse.org/search/projects

Pueden visitar este enlace para que los diferentes paquetes que tiene eclipse para los diferentes escenarios que se pueden plantear o la combinación de alternativas para poder logar un proyecto con éxito.

https://eclipse.org/downloads/

Para pode ejecutar se debe tener instalado el jdk requerido por el IDE, existen varias versiones portable de IDE Eclipse como por ejemplo la ADT (Android Developer Tools para la programación en  Android para versiones menores a 5)

IntelliJ IDEA  

Es desarrollado por JetBrains (Anteriormente conocido como IntelliJ), y esta disponible en dos ediciones: community edition(free)  y edición comercial. IntelliJ IDEA no esta basada en Eclipse como MyEclipse o Oracle Enterprise Pack para Eclipse.
Como comentaba IntelliJ IDEA son ediciones: Community Edition (Gratuito) y Ultimate Edition (De pago). Veamos la característica que pose:
Ambas ediciones
  • · Java
  • · Clojure (Vía plugin)
  • · Dardo (vía plugin)
  • · Groovy
  • · Haxe (Vía plugin)
  • · Scala (vía plugin)
  • · XML/XSL
  • · Kotlin (Vía plugin)
Solamente Edición Ultimate7
  • · ActionScript/MXML
  • · CoffeeScript
  • · Haskell (Vía plugin)
  • · HTML/XHTML/CSS
  • · JavaFX
  • · Javascript
  • · Jelastic (Vía plugin)
  • · Lua (Vía plugin)
  • · Node.js (Vía plugin)
  • · PHP (vía plugin)
  • · Pitón
  • · Ruby/JRuby
  • · SQL
  • · TypoScript (Vía plugin)

Una acotación personal es que la versión de pago cuesta uno 459 dólares aproximadamente y por razón obvias no he tenido la oportunidad tener un experiencia más profunda en la versión pago.

fuente https://www.jetbrains.com/company/
A continuación se presenta la historia del IntelliJ IDE hasta nuestros días



Un dato relevante, Google anuncio la versión de Android Studio, un IDE de código abierto para el desarrollo exclusivo de aplicaciones en SO Android basado en la edición comunitaria de IntelliJ IDEA, que próximamente estaremos hablando de este IDE.

Conclusión

Si bien existen varias herramientas para desarrollar un proyecto depende mucho con que lenguaje de programación queremos encarar por lo tanto desde mi punto de vista, elegir el IDE adecuado dependerá de los requerimiento o necesidades que se presenta como solución a desarrolla.

Pero muchas veces tendemos a elegir con algo que estamos más familiarizados o  por la preferencia de las funcionalidades que presenta cada herramienta.

Quisiera terminar con lo siguiente: lo ideal es buscar el equilibrio entre las necesidades y nuestras preferencias, recuerden que trabajar cómodo y con la herramienta adecuada se llevan a cabo las mejores ideas ya que la inspiración fluye.