¿Cuál es la mejor manera de aislar mi entorno de desarrollo en OS X?

5

¿Cuál es la mejor práctica actual para configurar un entorno de desarrollo en OS X?

Hace poco recibí una nueva Mac con OS X 10.10, Yosemite.

Estoy familiarizado con homebrew y, desde mi experiencia con Linux, también con VirtualBox y con máquinas virtuales (sin cabeza). Sin embargo, no sé prácticamente (intencionalmente) nada sobre Docker.

Soy un desarrollador y recientemente he comenzado a aprender Node.js y Meteor. He trabajado en el pasado principalmente con Python en máquinas Linux. Sin embargo, desde 2013 he tenido un descanso autoimpuesto del desarrollo diario mientras regresaba a la escuela para obtener un nuevo título.

Mucho ha cambiado desde que dejé el trabajo de desarrollo a tiempo completo en 2013 (debería haber hecho un mejor trabajo al estar al tanto de todo). Ahora está Docker, escuché hablar de Ansible por primera vez, Homebrew todavía anda por ahí, parece que ya nadie usa MacPorts, y me siento completamente perdido con respecto a descubrir la forma óptima de configurar mi nueva máquina para Node. Python, y desarrollo de C / C ++.

Mi principal preocupación, además de ser libre de jugar y desarrollar aplicaciones en Node, Python y C / C ++, es que mi entorno de desarrollo no debe interferir con mi sistema operativo y la vida informática diaria en todos. Por ejemplo, cuando obtuve mi primer Mac en 2009, utilicé Homebrew para instalar Python y varios paquetes, y en algún momento mi sistema se arruinó un poco con todo el material que le puse.

Definitivamente quiero evitar eso. Si eso significa usar una VM o un contenedor (no estoy seguro de cuál es la diferencia, por cierto) para hacer todo mi desarrollo, así sea, no importa cuán inconveniente sea. Prefiero mantener limpio mi sistema OS X.

Por otro lado, si hay una manera de desarrollarme directamente en mi máquina OS X, mientras la mantengo limpia y sin permitir que ningún software que instale interfiera con mis aplicaciones y uso cotidianos "normales", eso estaría bien.

¿Alguien puede ofrecer alguna sugerencia / consejo? He buscado en Google varias variaciones de la consulta "entorno de desarrollo de os x [idioma]" y he usado herramientas de búsqueda para filtrar todas las entradas excepto las recientes, pero aún no he encontrado un artículo sobre el tema en el que confío.

    
pregunta tommytwoeyes 03.08.2015 - 00:13

2 respuestas

1

No habrá una respuesta correcta a tu pregunta. Depende mucho de tus preferencias y necesidades de desarrollo.

Apple espera que los desarrolladores que trabajan en el software Mac o iOS lo hagan sin usar una máquina virtual.

Si está implementando en una plataforma Linux o no Mac, probablemente se recomiende una máquina virtual.

Para probar su software en otras versiones de OS X, una máquina virtual puede ser útil.

Idiomas compilados

Para desarrollar con C, C ++, Objective-C y Swift, use Xcode . Xcode es la propia herramienta de desarrollo de Apple y no dañará su instalación de OS X.

Scripts y lenguajes dinámicos

Para desarrollar con Python u otro lenguaje de scripting, considere usar una herramienta que permita la instalación de múltiples versiones de su idioma.

El objetivo es instalar y utilizar una versión de su idioma que esté aislada de los archivos binarios provistos por OS X. Las actualizaciones pueden cambiar la edición provista por OS X, pero su entorno permanecerá sin cambios.

Homebrew y MacPorts

Debería poder usar tanto homebrew como MacPorts sin riesgo para su instalación de OS X. Ambos administradores de paquetes intentan aislar sus instalaciones y simplifican la eliminación de software no deseado o problemático.

Si encuentra problemas, registre errores con los desarrolladores.

A partir de 2015, ambos gestores de paquetes se están desarrollando activamente:

respondido por el Graham Miln 03.08.2015 - 11:18
0

Otra opción que ahora está disponible en la tienda de aplicaciones es Veertu. Lo estoy usando y funciona perfecto. La versión gratuita me permite ejecutar múltiples linux aislados, windows Vms y también docker.

    
respondido por el Medicis 17.03.2016 - 08:11

Lea otras preguntas en las etiquetas