BBVA Open4u - Desarrollo en la nube: ventajas y plataformas para programadores

Desarrollo en la nube: ventajas y plataformas para programadores

Codio, Cloud9, Codenvy o Nitrous son cuatro ejemplos de Entornos de Desarrollo Integrado online, que disponen de las funcionalidades habituales de un editor de texto y las ventajas principales del desarrollo en la nube: colaboración y personalización.
BBVAOpen4U
|
03 Nov. 2015

Gran parte del negocio del software, en cualquiera de sus vertientes, se está trasladando a la nube. Una razón esencial de ese movimiento es la reducción de costes. No hay nada más sagrado en una empresa que los costes. El desarrollo de productos no es una excepción. En la actualidad existen herramientas para programadores que permiten picar código en la nube: Codio, Cloud9, Codenvy o Nitrous son algunos ejemplos. 

El concepto de este tipo de herramientas en sencillo. Son Entornos de Desarrollo Integrado (IDEs) con las ventajas de una solución alojada en la nube. En Sitepoint, la página de contenido especializado para desarrolladores, hacen un listado de las virtudes de utilizar la nube para programar:

- Son algo más que un editor de código: igual que los IDEs se podrían definir como editores de código con esteroides, las plataformas de desarrollo en la nube podrían pasar por ser IDEs con esteroides. Este tipo de herramientas son más bien Plataformas de Desarrollo como Servicio (Development Platform as a Service- dPaaS), que ofrecen una serie de funcionalidades sobre costes y productividad más elevadas.

- Menos tiempo de implementación: este tipo de plataformas reducen mucho los tiempos de instalación. Menos tiempo, menos costes.

- Programa desde cualquier sitio: no es necesario estar delante de tu máquina para continuar programando tu producto. Al estar alojada en la nube, es posible hacerlo desde cualquier sitio y dispositivo (ordenador o tableta). Único requisito: estar conectado a la Red

- Trabajo colaborativo en tiempo real: una de sus grandes ventajas es que varios desarrolladores pueden estar trabajando en el mismo proyecto a la vez y utilizar servicios de chat online para comunicarse.

- Personalización del entorno de desarrollo: este tipo de herramientas permiten instalar dependencias para los proyectos de forma independiente. Cuando se programa en local, en muchas ocasiones se pueden tener complicaciones porque las dependencias para unos proyectos afectan a otros o perjudican a otras aplicaciones web.   

Codio: gratis para proyectos opensource

Codio es una herramienta de desarrollo en HTML5, CSS3 y JavaScript. Además es posible programar en otros lenguajes como Java, C, Pascal, Scala, Go, Haskell o Rust. Por el lado del backend nos ofrece servidores en Linux Ubuntu configurados con Node.js. Además, dispone de varios sistemas de control de versiones distribuidos como Mercurial o Git. En cuanto a bases de datos, tiene varias opciones: MongoDB, phpMyAdmin, MySQL, PostgreSQL, SQLite y Redis

Algunas de sus características más importantes:

- Como editor de código tiene todas las funcionalidades habituales en una herramienta así: cargar y descargar archivos, crear o eliminar carpetas, función de arrastrar y soltar documentos, autocompletado de código durante la programación, capacidad para compartir y embeber proyectos, trabajo colaborativo, comando para formateo de código… En este último caso, con un simple atajo limpias código sin problemas:

De este código sin formato:

if ('this_is'==/an_example/){of_beautifer();}else{var a=b?(c%d):e[f];}

A este otro mucho más limpio y ordenado:

if ('this_is' == /an_example/) {
    of_beautifer();
} else {
    var a = b ? (c % d) : e[f];
}

- Varias herramientas adicionales:

Bower: es una herramienta que se encarga fundamentalmente de todos los paquetes y librerías relacionados con el frontend de un proyecto web. El árbol de dependencias que utiliza es plano, solo requiere una versión de cada uno de los paquetes que gestiona, por lo que reduce al mínimo el tiempo de carga de los sitios web.

Phonegap: Codio está totalmente integrado con esta herramienta de Adobe para el desarrollo de aplicaciones multiplataforma. Phonegap facilita que podamos programar una app para iOS, Android y Windows sin necesidad de utilizar distintos lenguajes de programación ni Entornos de Desarrollo diferentes.

Despliegue: Codio permite hacer un despliegue de tu proyecto web o aplicación en el menú Tools → Terminal menu, pero sirve de forma automática el código frontend a través del puerto 80.

Cloud9, editor de código en la nube con Ubuntu

Cloud9 empezó siento un editor de código en Node.js y ahora es una herramienta de desarrollo de proyectos web y aplicaciones en la nube, en Python, PHP, Ruby, C, C++, JavaScript, Go y así hasta 40 tipos de lenguajes distintos. Facilita la creación de productos digitales en gestores de contenidos como Wordpress, Drupal, Joomla o Ghost y marcos de desarrollo como Django, Ruby on Rails, Meteor, Bootstrap, CakePHP, Ember.js, Laravel o Symphony.

 

 

También es importante reseñar que tiene integración con bases de datos como Cassandra, CouchDB, MongoDB, MySQL, phpMyAdmin, PostgreSQL, Redis o SQLite. Las posibilidades son enormes, están casi todas las opciones posibles.

Sus características fundamentales son:

- Editor de código. Dispone de lo habitual en herramientas de este tipo: gestión de varios archivos de forma simultánea, autocompletado de código, atajos de teclado, depurador de programación, control de versiones, posibilidades de personalización de la propia herramienta, editor de imágenes, edición de código en equipo y en tiempo real…    

- Servidor virtual de testeo: en un proyecto de desarrollo digital es habitual la instalación de un servidor local en cualquiera de sus opciones (Xampp, Wampp o Mampp) para lanzar el código de nuestro proyecto web o aplicación y hacer pruebas reales. Cloud9 dispone de un servidor virtual, donde el desarrollador puede ver en tiempo real el resultado visual y funcional de su programación. Y hacer mejoras.

- Plantillas personalizables.

- Soporta Git y Mercurial.

Codenvy, un IDE online muy flexible

Codenvy es un Entorno de Desarrollo Integrado en la nube con una gran aceptación dentro de la comunidad de desarrolladores: permite proyectos en lenguajes como Java, JavaScript, Ruby, Python o PHP; marcos de desarrollo como Spring o Ruby on Rails; y servicios de hosting en la nube para el despliegue de los productos como Heroku, Google App Engine o AWS.

Algunas de sus características:

Condenvy es una herramienta que permite la instalación de plugins para aumentar sus funcionalidades. Un ejemplo es el plugin de Eclipse. Este se conecta al IDE a través de una API de autenticación. Una vez conectada, se pueden trabajar en Eclipse todos los proyectos que se tuvieran en Codenvy. Los cambios se sincronizan automáticamente.

Usa Docker, un proyecto de código abierto para la creación de contenedores para el desarrollo de proyectos. Son máquinas virtuales que resultan fáciles de desplegar en otros sistemas y además son realmente ligeras, la exigencias en el almacenamiento son menores.

Nitrous, un IDE perfecto para Ruby on Rails

Nitrous ofrece en gran medida lo mismo que los Entornos de Desarrollo Integrado en la nube vistos con anterioridad: varios lenguajes de programación, diferentes marcos de desarrollo y distintos servicios de bases de datos como MongoDB, PostGreSQL, MySQL, Redis o Amazon RDS. Nitrous permite la creación de máquinas virtuales Linux para desarrollos con Ruby on Rails, pero también en lenguajes de programación como Python o Go.

Sus características principales:

- Acceso SSH: permite el acceso a la máquina virtual de Nitrous y configurarla de forma personalizada. En esa máquina virtual viene instalado por defecto Ubuntu OS, Ruby on Rails, Vim y Tmux

- Cifrado de datos SSL.

- Integración con GitHub.

- Usa Docker para la creación de contenedores.

Síguenos en @BBVAAPIMarket