Quizás cuando hablemos de máquinas o entornos virtuales, los asociamos más a un entorno de prueba o producción/pre-producción que de desarrollo, pero quizás aplicado al desarrollo nos pueda brindar muchas ventajas también.
Prepararemos el entorno de desarrollo de la siguiente forma:
- Escoger cualquier software de virtualización (VirtualBox, VMWare, Parallels, etc..), recomendarÃa VirtualBox por el hecho de ser Software Libre y gratuito.
- Ahora toca ver cual será el sistema operativo a virtualizar, que deberÃa variar según las necesidades que tengamos. SerÃa conveniente hacer una instalación lo más minimalista posible del sistema operativo, evitando asà el uso de recursos innecesarios.
- Una vez creada la máquina virtual o después al instalar todas las herramientas que nos hagan falta, es aconsejable clonar la máquina para disponer siembre de un sistema virgen, al cual podamos volver siempre para modificar los IDE, configuraciones, versiones, etc.
- SerÃa interesante compartir un directorio, en el sistema operativo nativo, con el resto de máquinas virtuales, desde el cual pondrÃamos todos los programas que fueramos a desarrollar. De esta forma podrÃamos modificarlos y ejecutarlo desde las diversas máquinas con posibles distintas configuraciones. Normalmente este directorio deberÃa ser el directorio raÃz de tu servidor web (si estás desarrollando aplicaciones web), el workspace de trabajo, etc.
Algunas de las ventajas que obtendremos, haciendo uso de entornos de desarrollo virtuales, se podrÃan resumir en:
- Posibilidad de disponer distintas versiones y probar asà la compatibilidad del software entre dichas versiones. Por ejemplo, si tenemos en una máquina un programa con la versión de PHP 5.0 y otra con la versión 5.3.
- Disponer de distintos IDEs para desarrollar (Eclipse, Netbeans, Visual Studio, etc..), distintas bases de datos o simplemente con distintas configuraciones.
- Separamos totalmente el entorno de desarrollo de nuestro ordenador, asà una vez hayamos terminado, apagamos la máquina virtual y dispondremos de todos los recursos de nuestra máquina, sin tener la necesidad de ir cerrando procesos o servicios para liberar memoria, cpu, etc..
- Libramos también a nuestro ordenador (sobre todo si es el que usamos generalmente) de instalar programas de desarrollo, base de datos, etc.
- Podemos clonar nuestro entorno de desarrollo y portarlo asà a distintos ordenadores, al portátil, en el ordenador del trabajo, etc.
Sin duda muchas de ellas son interesantes y nos puede ayudar mucho en el dÃa a dÃa, pero evidentemente todo depende de las necesidades y gustos de cada uno, aunque tal y como he visto en varios blogs de desarrolladores, el uso de estos entornos de desarrollo está ganando muchos adeptos dÃa a dÃa.