2010-02-13 6 views
5

Sembra molto controproducente in quanto così tante gemme si romperanno su Windows. Ho avuto a che fare con così tanti problemi gemma mysql e ruby-mysql (errori di seg che si verificano nella gemma stessa, una classe chiamata UnixSocket apparentemente non funziona bene su macchine Windows, ecc. Ecc.).Lo sviluppo in Ruby, su una macchina Windows, è troppo controproducente?

Sto sprecando il mio tempo qui? Dovrei passare a un linguaggio di scripting diverso?

+8

Si potrebbe chiedere se si dovrebbe passare a un sistema operativo diverso ...;) – DGM

+0

Mi dici .... – Zombies

+0

Che tipo di progetti stai lavorando? di Ruby funziona perfettamente su più piattaforme.Potresti trovare Ruby è perfettamente adatto al tuo progetto se non hai bisogno di gemme/moduli specifici che non funzionano bene su Windows. –

risposta

8

Ho poca esperienza con Ruby su Windows ma quando stavo iniziando con Ruby ero su Windows e ho avuto l'impressione generale che non fosse un sistema nativo di Windows.

Quindi dopo molti anni di utilizzo principalmente di Windows, entrare in Ruby mi ha spinto a tornare al mio sistema originale, Unix, questa volta a Linux. Ruby è stato eseguito con meno problemi e l'esecuzione di bash nel suo ambiente nativo era migliore rispetto al Cygwin solo per lo più OK. Ero felice.

Poi il mio nuovo datore di lavoro mi ha fatto passare al Mac. Ora sono davvero viziato, ma davvero felice.

Mi rendo conto che questo è soggettivo ma ISTM che Linux era molto meglio di Windows e il Mac è molto meglio di Linux. Potrei ancora eseguire Windows in VMWare Fusion se lo volessi, ma non lo faccio. Ho delle macchine virtuali Linux.

Penso che quello che sto cercando di dire è che c'è un motivo per cui Ruby non è il migliore per Windows. Il tipo di persone che gestiscono Ruby sono .. Sto provando a pensare a una parola non peggiorativa qui .. probabilmente non trovata su Windows.

Quindi questo è un punto di svolta per voi. Sì, .net è un ambiente sofisticato e ben documentato, sì, Windows è stato affidabile per diversi anni, e sì, è un sistema rispettabile a questo punto. Sì, esegue Stack Overflow e alcuni dei guru sono ragazzi di Windows. Ma è solo una sorta di cartina di tornasole per .. dannatamente, manca ancora quella parola ..

Un sacco di gente esegue Windows perché non sanno cos'altro da eseguire. Linux è una buona alternativa se devi acquistare tu stesso il sistema. E se tu o il tuo datore di lavoro potete permettervelo, il Mac (sotto Unix) vi offre tutto ciò che fa Linux più il mondo specifico per Mac.

E 'il momento di scegliere ... :-)

+0

Hm, immagino che mi piaccia windows perché sono abituato a così tante app su di esso e gioco un po 'su di esso in qualche modo ... E beh, quando torno a casa mi godo la semplicità di windows suppongo .. ... Ma considererò Linux come sembra che sto facendo di più a casa dev (dove come prima Windows era meglio per me) ... – Zombies

+0

Inoltre, dovrei semplicemente eseguire una distro linux in VirtualBox per il mio sviluppo Ruby? – Zombies

+2

Questo potrebbe essere il modo più semplice per configurare un ambiente di sviluppo. Quindi potresti semplicemente eseguire l'intera GUI di linux oppure potresti eseguire un'installazione di linux senza GUI e poi aprire solo le finestre di Cygwin o di Putty nella casella MSWindows dell'host e ssh nell'host di Linux. – DigitalRoss

1

ho sviluppato con Ruby su Windows per diversi anni, tra cui la costruzione e la distribuzione di "impresa" Rails intranet applicazioni in esecuzione contro Oracle, MySQL e SQL Server su entrambi Windows e server Solaris.

D'accordo, ci sono alcune gemme che hanno componenti compilati i cui autori non hanno costruito le versioni di Windows - va bene, è una piattaforma open-source e non devono farlo se non vogliono. Allo stesso modo, hai perfettamente il diritto di (a) ignorare le librerie che non hanno versioni mswin32 o mingw32 o (b) restituire qualcosa compilando tu stesso!

Per quanto riguarda la gemma MySQL, IIRC su Windows è necessario l'adattatore "puro Ruby", che non utilizza l'API C di MySQL: http://github.com/tmtm/ruby-mysql o gem install ruby-mysql

+0

Sì, ho provato esattamente questo, ma mi stava fallendo perché la versione DB di MySQL era troppo recente. – Zombies

+0

Ma sì, ho funzionato ora e uso la gemma ruby-mysql. – Zombies

0

Non credo che stai perdendo il tuo tempo. Ho lavorato con due ragazzi che hanno realizzato progetti estesi su app Ruby on Rails utilizzando Windows XP, come progetti importanti a lungo termine. Sembra che non gli dispiaccia affatto. Entrambi hanno lavorato su di esso utilizzando l'IDE NetBeans. (Ha una versione specifica di Ruby.)

Ho provato da solo quando ho iniziato a utilizzare Ruby e non ho riscontrato molti errori o problemi con le gemme, anche se c'erano alcune cose che funzionavano in modo imbarazzante. Di solito c'era una soluzione.

Ho deciso che ho preferito utilizzare OS X o CentOS Linux per lo sviluppo di Ruby. Ma so per certo che è possibile lavorare su Windows.

Una cosa da tenere a mente è che il 90% della comunità di Ruby si trova su OS X e viene distribuito su Linux, quindi avrai più aiuto se ti trovi su uno di questi SO.

Un'altra cosa da considerare è che l'intero universo e cultura di Ruby è molto orientato verso la riga di comando di Unix utilizzando la shell bash. Tutti i tuoi tutorial e roba daranno per scontato che. Avranno istruzioni come "Vai alla shell ed esegui # rake db:migrate e sarà molto più semplice seguire queste istruzioni se hai una shell con funzionalità complete con il completamento dei comandi, la cronologia dei comandi, ecc. Quindi, se vuoi lavorare su Windows potresti cercare di installare qualcosa come MinGW.

Problemi correlati