2010-06-17 2 views
12

Je suis un développeur Windows qui se lance actuellement dans Rails. Alors que vous pouvez développer sur RoR Windows, ce n'est pas l'expérience idéale. Les choses sont glitchy et les tests de concombre sont douloureusement lente. Donc, serais-je capable d'avoir une expérience de développement décent exécutant Linux dans une machine virtuelle pour le développement de RoR, ou devrais-je mordre la balle et juste faire un double démarrage - Windows 7/Linux?Ruby On Rails sur Windows - Linux VM ou dual boot

Répondre

9

Il est logique que votre environnement de développement devrait suivre votre production aussi étroitement que possible, en particulier pendant l'apprentissage. Dans cette optique, une machine virtuelle sera la meilleure solution, malgré les problèmes supplémentaires tels que la mise en réseau entre l'hôte et l'ordinateur invité. Je l'ai fait personnellement dans un projet Magento, et je peux dire que le temps passé à tout faire correctement a été amplement récompensé avec moins de maux de tête à la fin du processus, et maintenant tout son setup peut facilement être réutilisé. En ce qui concerne le double amorçage, cela ne vaut vraiment pas la peine vu la facilité avec laquelle une machine virtuelle est prête à fonctionner, et à ces fins, il n'y a aucune différence. Assurez-vous de jeter un coup d'œil sur l'installation des ajouts aux invités de la boîte virtuelle si vous suivez cette route, tout devient beaucoup plus frais une fois qu'ils sont installés et fonctionnent sur l'invité.

Liens pour les ressources:

VirtualBox

NAT Configuration of virtualbox, some ideas

Redcar editor - édition de style TextMate sur linux, y compris le soutien bundle TM

+3

Je suis entièrement d'accord avec @danp. Je fais le développement de Rails sur Ubuntu fonctionnant dans VirtualBox sous Windows 7. L'utilisation de machines virtuelles vous donne la possibilité d'accéder à de nombreuses versions et configurations d'une paire OS/environnement de développement. Avec dual boot, vous êtes largement limité à un ou deux. Les machines virtuelles vous permettent de travailler sur plusieurs projets sans risque qu'un projet modifie l'environnement de l'autre. –

+0

Encore une chose: pour obtenir les meilleures performances de votre machine virtuelle, placez l'image disque de la machine virtuelle sur une broche de disque séparée de votre système d'exploitation. Cela augmentera le débit total des E/S et devrait considérablement augmenter la réactivité de la machine virtuelle. J'ai un lecteur de disque USB 2.0 externe sur lequel vivent toutes mes nombreuses machines virtuelles. –

+0

OK, c'est ma dernière chose: je n'ai pas utilisé Redcar, mais NetBeans est un superbe IDE pour développer des applications Rails. Si, comme moi, vous êtes un développeur Windows, vous connaissez probablement et appréciez Visual Studio. NetBeans fournit une intégration similaire des tâches et des outils. Je l'aime et ne fonctionnerait pas sans elle. –

1

Ne vous embêtez pas avec double démarrage, vous vous trouvez l'éviter avant longtemps. Utilisez juste les VM. J'utiliserais même - et actuellement - une VM pour le codage de Windows. Les instantanés de VM sont votre ami.

Utilisez également Ubuntu; c'est juste plus facile à configurer et à faire. (a couru Fedora pendant des années mais s'est fatigué de la configuration)

VirtualBox ou VMWare fonctionnent bien tous les deux.

2

La double botte est la solution à adopter si vous êtes sérieux dans l'installation de rails et que vous passerez de longues périodes à travailler sur des rails.

À moins d'avoir une machine très puissante, le surcoût de Windows + Ubuntu/linux + rails serveur + serveur de base de données + ide/éditeur sera pénible.

Le double amorçage est facile à configurer et, avec les vitesses d'amorçage rapides, les allers-retours devraient être assez faciles. Cependant, si vous explorez encore très souvent les rails ou si vous vous attendez à un changement de vitesse très fréquent, alors une VM est peut-être la solution idéale.

0

J'ai essayé d'apprendre les rails en utilisant cygwin. Je l'ai mis en marche, mais je l'ai trouvé impossible à traiter. Je n'ai jamais réussi à faire fonctionner mysql après environ 20 heures de jeu. J'ai trouvé que Cygwin est très buggé, et vous aurez probablement beaucoup de mal à faire fonctionner les choses.

D'autres machines virtuelles, je ne suis pas sûr, mais mon expérience en essayant de faire du développement Rails via Cygwin était horrible.

Je double maintenant Ubuntu Linux et Windows Vista. Je ne pense pas que c'est un gros problème, et je le recommande.

0

Conformément à la recommandation de virtualiser ou double démarrage, je recommande fortement Vagrant. Il faut un peu de configuration, mais c'est Ruby (ce qui est cool si vous vous lancez dans le développement RoR) et vous donne beaucoup de puissance et de flexibilité. Je n'ai commencé à l'utiliser que récemment, mais je suis déjà amoureux. Cela me permet de ne pas avoir à utiliser un système d'exploitation distinct complet dans une machine virtuelle et le clunkiness de basculer entre les systèmes d'exploitation dans une configuration à double démarrage.

Si vous ne pouvez pas simplement exécuter Ubuntu en tant que votre système d'exploitation principal, Vagrant est définitivement plus utile aux développeurs que les machines virtuelles traditionnelles.