Spanish flagItalian flagPortuguese flagEnglish flagGerman flagFrench flagJapanese flagDutch flag

Tiempo estimado de lectura 4:35 min. rellotge
Herramientas de desarrollo de aplicaciones para sistemas GNU/Linux: Alternativas de mercado

Uno de los factores más atractivos a la hora de desarrollar aplicaciones para sistemas de tipo GNU/Linux es la amplia gama de herramientas orientadas a tal objetivo.

Aunque realmente la filosofía de este tipo de herramientas no es centrarse en un determinado tipo de sistema operativo, sino introducir el concepto de aplicación multiplataforma, es decir, una aplicación que pueda lanzarse en cualquier sistema operativo. En este reportaje nos vamos a centrar en un conjunto de herramientas o marcos de trabajo de desarrollo de aplicaciones orientadas a ser empleadas en sistemas GNU/Linux.

En primer lugar nos vamos a centrar en Kdevelop. Esta herramienta de desarrollo se encuentra integrada dentro del proyecto del entorno de escritorio KDE y está orientada al desarrollo de aplicaciones para ser lanzadas en dicho entorno, haciendo uso de su librería gráfica, Qt de Trolltech. Kdevelop no dispone de compilador propio, sino que hace uso del compilador gcc de Linux. Las aplicaciones desarrolla se codifican mediante C++ y se puede especificar en qué versión de KDE se desea que corran. La interfaz de usuario del entorno es muy atractiva y está bastante bien organizada. Como curiosidad decir que el propio entorno se desarrolló a partir de la versión anterior al mismo. Para desarrollar aplicaciones gráficas necesitaremos adjuntar al proyecto los ficheros obtenidos en el diseño mediante QT Designer.

Actualmente se está preparando el desarrollo de la versión nueva denominada HEAD.

Otra de las posibilidades es hacer uso de Anjuta, una herramienta para la codificación de aplicaciones en C y C++, lo que nos permite desarrollar software tanto para escritorios KDE como Gnome, o lo que es lo mismo, la herramienta es independiente del tipo de entorno de escritorio que estemos usando dentro de nuestra distribución Linux favorita. La herramienta, además, posee soporte para otros lenguajes tales como Perl y Java. Aunque si nunca nos ha gustado C ni C++ esto no es ningún obstáculo para no poder desarrollar aplicaciones en Linux. Gambas es un buen ejemplo de esto, un entorno gráfico de desarrollo para aplicaciones en Visual Basic.

Gambas es un entorno que, además de permitirnos desarrollar en Basic y VB, nos permite el acceso a bases de datos MySQL, PostgreSQL y SQLite además de desarrollar aplicaciones KDE y mediante OpenGL. La última versión de este producto es altamente recomendable, dado que las primeras atrajeron a múltiples desarrolladores que se encontraron con numerosas incidencias y bugs que, hoy por hoy, han sido solventados.

Otro entorno que no corrió la misma suerte, pero que fue todo un atractivo proyecto que, de haber sido exitoso podría considerarse como toda una lección dentro de la filosofía de desarrollo multiplataforma, fue Borland Kylix. Kylix nos proporcionaba un clon al IDE de Borland, Borland C++ Builder y Borland Delphi. Con este entorno era posible desarrollar aplicaciones en los dos anteriormente citados IDE y migrarlos a Linux cambiando una serie de parámetros como, por ejemplo, la librería de gráficos a emplear, se recompilaba y ya teníamos la aplicación desarrollada en un sistema Windows corriendo en Linux. La realidad fue que la cantidad de incidencias y fallos encontrados en la aplicación y en el proceso de migración congelaron el proyecto hasta que al final se dejó de lado y no se volvieron a sacar nuevas versiones del mismo, siendo la última la 3.0.

Una de las últimas y más vistosas alternativas ha sido la aparición de las wxWidgets. Esta librería de interfaces de usuario multiplataforma permite a los programadores crear aplicaciones para Win31, Mac OS X, GTK+, X11, Motif, WinCE, y un largo etcétera. Son múltiples las aplicaciones actuales que se han montado con este sistema de librerías el cual nos brinda un consumo de recursos mínimo y muy óptimo.

El principal atractivo de todo este abanico de alternativas es la facilidad de aprendizaje de uso de las mismas dado que se basan en lenguajes de desarrollo comunes y muy bien estructurados.

Además de estas existe, actualmente, un IDE que encaja perfectamente dentro del desarrollo de sistemas para cualquier tipo de plataforma. Hablamos de Eclipse, desarrollado en Java y que no está específicamente orientado sólo al mundo Linux, sino a cualquier tipo de sistema. Eclipse es actualmente la apuesta más fuerte dado que se basa en Java y su organización es robusta y su desarrollo es continuo, además de fácilmente extensible, proporcionando a la comunidad de desarrolladores un sistema de enganche de plug-ins muy adecuado para poder adaptar el entorno a las necesidades de desarrollo sobre las que estemos trabajando.

También es destacable otro IDE que ha aparecido hace poco en el mercado y que también está basado en Java, nos referimos a Netbeans. Este nos proporciona un entorno de desarrollo de aplicaciones multiplataforma basada en este entorno en el que, de un plumazo, podemos crear auténticas obras de arte. El problema es que no se encuentra muy refinado su desarrollo teniendo problemas en determinadas opciones, como por ejemplo en el uso de CVS tipo Sourcesafe o en el refactoring de proyectos, problemas totalmente paliados en Eclipse que, hoy por hoy, es el número uno del mercado.

Comunmente para el desarrollo de aplicaciones bajo, y para sistemas Linux, se han empleado una metodología, digamos artesanal, en lo que se refiere al desarrollo de un producto software. Así pues, el uso de editores de texto como entornos ha sido una práctica que a día de hoy aún se sigue empleando para el desarrollo de aplicaciones software. Podríamos englobar a dichos editores como herramientas de desarrollo. Por citar algunos, requieren una mención especial el editor emacs, el cual posee un innumerable sin fin de características, o vi.

Pero, como sabemos, para el desarrollo de software no sólo necesitamos un entorno para programar, también necesitamos disponer de herramientas que nos permitan modelar diagramas UML o que nos gestionen procesos de desarrollo. Eclipse vuelve a sonar por aquí con Eclipse Process Framework como plug-in para definir procesos de metodologías de desarrollo software y para dibujar diagramas UML que mejor que Umbrello o Poseidon, dos fuertes alternativas a Microsoft Visio.

Con esto hemos definido un conjunto de herramientas que nos permitirán desarrollar aplicaciones software bajo entornos Linux y orientados a este sistema operativo, aunque sin olvidar la filosofía multiplataforma.

Si se desean conocer más posibilidades, invitamos a los lectores de MundoInformática a que se den una vuelta por la forja de software conocida como Sourceforge y disfruten de la cantidad de herramientas disponibles para este sistema operativo destinadas a la finalidad que hemos comentado, el desarrollo de aplicaciones para y bajo Linux.

1 Estrella2 Estrellas3 Estrellas4 Estrellas5 Estrellas (Valora el reportaje)
Cargando ... Cargando ...



...por Ildefonso Montero ...por Ildefonso Montero


Enlaces Patrocinados:



Otros Reportajes:

Otros Reportajes Tendencias víricas: Qué nos depara el futuro »
Otros Reportajes Entornos de escritorio: KDE vs. Gnome »






Publicidad


Publicidad




PortalMundos Factory, S.L. | 2000 - 2008 | Hosting Profesional por isyourhost.com isyourhost.com