Ambiente de desarrollo integrado

De Wikipedia, la enciclopedia libre
(Redirigido desde «Entorno de desarrollo integrado»)
Saltar a: navegación, búsqueda
Anjuta, un entorno de desarrollo integrado de C y C++ para el ambiente GNOME

Un ambiente de desarrollo interactivo o entorno de desarrollo integrado (en inglés Integrated development environment; IDE) es una aplicación de software, que proporciona servicios integrales para facilitarle al programador de computadora el desarrollo de software. Normalmente, un IDE consiste de un editor de código fuente, herramientas de construcción automáticas y un depurador. La mayoría de los IDEs tienen auto-completado inteligente de código.

Algunos IDEs contienen un compilador, un intérprete, o ambos, tales como NetBeans y Eclipse; otros no, tales como SharpDevelop y Lazarus. El límite entre un entorno de desarrollo integrado y otras partes del entorno de desarrollo de software más amplio no está bien definido. Muchas veces, a los efectos de simplificar la construcción de la interfaz gráfica del usuario (Interfaz gráfica de usuario (GUI -"por sus siglas en inglés"-) se integran un sistema controlador de versión y varias herramientas. Muchos IDEs modernos también cuentan con un navegador de clases, un buscador de objetos y un diagrama de jerarquía de clases, para su uso con el desarrollo de software orientado a objetos.

Generalidades[editar]

Los entornos de desarrollo integrados están diseñados para maximizar la productividad del programador proporcionando componentes muy unidos con interfaces de usuario similares. Los IDEs presentan un único programa en el que se lleva a cabo todo el desarrollo. Generalmente, este programa suele ofrecer muchas características para la creación, modificación, compilación, implementación y depuración de software. Esto contrasta con el desarrollo de software utilizando herramientas no relacionadas, como Vi, GCC o Make.

Uno de los propósitos de los IDEs es reducir la configuración necesaria para reconstruir múltiples utilidades de desarrollo, en vez de proveer el mismo set de servicios como una unidad cohesiva. Reduciendo ese tiempo de ajustes, podemos incrementar la productividad de desarrollo, en casos donde aprender a usar un IDE es más rápido que integrar manualmente todas las herramientas por separado.

Una mejor integración de todos los procesos de desarrollo hace posible mejorar la productividad en general, mas que únicamente ayudando con los ajustes de configuración. Por ejemplo, el código puede ser continuamente armado, mientras es editado, previendo retroalimentación instantánea, como cuando hay errores de sintaxis. Esto puede ayudar a aprender un nuevo lenguaje de programación de una manera más rápida, así como sus librerías asociadas.

Algunos IDEs están dedicados específicamente a un lenguaje de programación, permitiendo que las características sean lo más cercanas al paradigma de programación de dicho lenguaje. Por otro lado, existen muchos IDEs de múltiples lenguajes tales como Eclipse, ActiveState Komodo, IntelliJ IDEA, MyEclipse, Oracle JDeveloper, NetBeans, Codenvy y Microsoft Visual Studio. Xcode, Xojo y Delphi están dedicados a un lenguaje cerrado o a un tipo de ajustes de tipos de lenguajes de programación.

Mientras la mayoría de los IDEs modernos son gráficos, los editores de textos tales como Turbo Pascal eran populares antes de que los sistemas de Windows se hicieran disponibles tales como Microsoft Windows y X Window System (X11). Estos usan funciones por medio de teclas rápidas para ejecutar comandos o macros frecuentemente usados.

Historia[editar]

GNU Emacs, un editor normalmente utilizado como IDE en sistemas tipo-UNIX

Los IDEs fueron posibles cuando se desarrollaba vía consola o terminal de la computadora. Los primeros sistemas no podían soportarlos, ya que los programas eran preparados usando diagramas de flujo, introduciendo programas con tarjetas agujeradas (o papel cartón, etc.) antes de enviarlos a un compilador. Dartmouth BASIC fue el primer lenguaje en ser creado con un IDE (también fue el primero en ser diseñado para ser utilizado enfrente de la consola o la terminal). Este IDE (parte de Dartmouth Time Sharing System) fue basado en código y basado en comandos, y por esto no lucía mucho a los IDEs tan gráficos como a 2015. Sin embargo la edición integrada, manejo de archivos, compilación, depurador y ejecutable en una manera consistente con los IDEs modernos.

Maestro I es un producto de Softlab Munich y fue el primer sistema de desarrollo integrado IDE,[1] para software, creado en 1975. Maestro I fue instalado por 22.000 programadores en todo el mundo. Hasta 1989, existían 6.000 instalaciones en República Federal de Alemania. Maestro fue sin duda el líder mundial en este campo durante los años 1970s y 1980s. Hoy uno de los últimos Maestro I puede ser encontrado en el Museo de Tecnología e Informática en Arlington.

Uno de los primeros IDEs con un concepto de plug-in fue Softbench. En 1995 Computerwoche comento que el uso de un IDE no era bien recibido por los programadores, ya que afectaría su creatividad.

Tópicos[editar]

Programación visual[editar]

La Programación Visual es un marco de usuario en la que generalmente se requiere una IDE. Los IDEs visuales le permiten a los usuarios crear nuevas aplicaciones de programación en movimiento, bloques de construcción, o nodos de código para crear diagramas de flujo o diagramas de estructura que luego son compilado o interpretado. Estos diagramas de flujo muchas veces se basan en el Lenguaje de modelado unificado.

Esta interfaz ha sido popularizada con los Lego Mindstorms, y se ha mantenido activa por un número de compañías deseando capitalizar el poder de los buscadores personalizados como los fundados en Mozilla. KTechlab apoya el flowcode y es un IDE de código abierto "opensource" y un simulador para desarrollar software para micro-controladores. Programación visual también es responsable del poder de la distribución de software (cf. LabVIEW y software EICASLAB). Un primitivo sistema visual de programación, Max, fue modelado a partir de un sintetizador de diseño análogo siendo desarrollado para utilizar el desempeño de la música en tiempo real desde los años 1980. Otro ejemplo primitivo fue Prograph, un programa a base de flujo de datos, originalmente desarrollado para la Macintosh. El ambiente de programación gráfica "Grape" es usado para programar qfix robot kits.

Este acercamiento es también utilizado por softwares especializados, tales como Openlab, dónde el usuario final quiere la flexibilidad completa de un lenguaje de programación, sin la tradicional curva de aprendizaje.

Soportes del lenguaje[editar]

Algunos IDEs soportan múltiples lenguajes, tales como GNU Emacs basados en C y Emacs Lisp, y Eclipse, IntelliJ IDEA, MyEclipse o NetBeans, todos basados en Java, o MonoDevelop, basados en C#.

Normalmente, el soporte para lenguajes alternativos regularmente es proveído por un plugins, permitiéndoles ser instalados en el mismo IDE, al mismo tiempo.[2] Eclipse, y Netbeans tienen plugins para C/C++, Ada, (por ejemplo AdaGIDE), Perl, Python, Ruby, y PHP, los cuales son seleccionados entre extensión de archivos, ambientes o ajustes de proyectos.

Características entre diferentes plataformas de computación[editar]

Los programadores Unix pueden combinar herramientas de línea de comandos POSIX en un entorno de desarrollo completo, capaz de desarrollar grandes programas como el kernel de Linux y su entorno.[3] Las herramientas GNU de software libre (GNU Compiler Collection (GCC), depurador GNU (gdb), GNU make) están disponibles en muchas plataformas, incluyendo Windows.[4] Los desarrolladores que prefieren herramientas orientadas a la línea de comandos pueden utilizar los editores con soporte para muchos estándares de Unix y herramientas de contrucción GNU, construyendo una IDE con programas como Emacs[5] [6] [7] o Vim. El Data Display Debugger está destinado a ser un front-end gráfico avanzado para muchas herramientas estándar depurador basados ​​en texto. Algunos programadores prefieren Administración de makefiles y sus derivados a las herramientas similares de construcción de código incluidos en un IDE completo. Por ejemplo, muchas contribuciones a las bases de datos de PostgreSQL usan mark y gdb directamente a desarrollar nuevas características.[8] Aun cuando se construya PostgreSQL para Microsoft Windows utilizando Visual C++, se utilizan scripts Perl como reemplazo para el make, en lugar de depender de cualquier característica del IDE.[9] Algunos IDEs de Linux como Geany intentan proporcionar una interfaz gráfica para las operaciones de construcción tradicionales.

En las diversas plataformas de Microsoft Windows, rara vez se utilizan herramientas de línea de comandos para el desarrollo. Como consecuencia, hay muchos productos comerciales y no comerciales. Sin embargo, cada uno tiene un diseño diferente creando comúnmente incompatibilidades. La mayoría de los vendedores más importantes del compilador para Windows todavía proporcionan copias gratuitas de sus herramientas de línea de comandos, incluyendo Microsoft (Visual C++, Plataforma SDK, .NET Framework SDK, utilidad nmake), Embarcadero Technologies (compilador bcc32, utilidad make).

Los IDEs siempre han sido populares en Mac OS de Apple Macintosh, que se remonta al Taller de los programadores Macintosh, de los ambientes Turbo Pascal, THINK Pascal y THINK C de mediados de la década de 1980. A 2015 los programadores Mac OS X pueden elegir entre IDEs nativos como Xcode y herramientas de código abierto como Eclipse y Netbeans. ActiveState Komodo es un IDE multilenguaje propietaria apoyado en el Mac OS.

Con el advenimiento de la computación en nube, algunos IDEs están disponibles en línea y se ejecutan dentro de los navegadores web.

Referencias[editar]

Enlaces externos[editar]