2009-11-25 8 views
18

Sarebbe possibile tradurre il codice Ruby on Rails in Python?Python on Rails?

Penso che a molte persone piaccia Python più di Ruby, ma che le funzionalità di Ruby on Rails siano migliori (nel loro complesso) rispetto a quelle dei framework web Python.

Quindi, sarebbe possibile? Oppure Ruby on Rails utilizza funzionalità specifiche della lingua che sarebbe difficile tradurre in Python?

+22

Si chiama: Django –

+1

Il linguaggio groovy ha graal, che in origine era chiamato "Groovy on Rails". –

+4

E ora c'è Rango, che è Django su rubino, esattamente l'opposto di quello che vuoi. http://www.rubyinside.com/rango-ruby-web-app-framework-2858.html –

risposta

15

This is a great blog post. Gli sviluppatori di Rails hanno scelto un framework e la codifica in Ruby è il ripensamento.

Gli sviluppatori Python hanno scelto la lingua per il linguaggio, non il framework. D'altra parte, ciò ha reso molto più basso l'accesso ai framework.

+2

Concordato - Nel 90% delle discussioni che ho incontrato riguardo a Ruby in front-facing sviluppo web, il nome "Ruby" è quasi usato in modo intercambiabile con riferimento direttamente a Rails. – DeaconDesperado

+6

Anche se non scriverò questo post, perché ovviamente è un'opinione, mi piacerebbe sicuramente sottolineare che si tratta di un'assurda generalizzazione.Il rubino non è certamente un ripensamento e le sue strutture di metaprogrammazione e l'estensibilità hanno giocato un ruolo cruciale nella sua popolarità. Inoltre, gli sviluppatori di Rails hanno scelto Ruby per un motivo. Semplicemente non avrebbero potuto fare quello che hanno fatto (almeno altrettanto elegantemente) in python. – lorefnon

+0

+1 Il rubino sembra una lingua parlata piuttosto che una programmazione. Nella programmazione abbiamo bisogno di logica, non essere in grado di parlare con esso! '5.times {print (" ruby ​​sucks! ")}' Che diavolo è ?! anche le istruzioni 'end' sono ridondanti e occupano ** una riga ** per se stesse e sono inutili. – TechJS

13

Penso che una delle cose che le persone amano del RoR sia lo stile di programmazione del linguaggio specifico del dominio (DSL). Questo è qualcosa che Ruby è molto meglio di Python.

16

Molti dei metodi utilizzati in Rails sono stati tradotti in Django. L'hai provato?

http://www.djangoproject.com/

+0

Sì, grazie. –

+1

@Juanjo: Allora sapresti che risponde alla tua domanda interamente, dal momento che è praticamente un Python Rails in più aspetti - giusto? –

+3

L'architettura MVC (o MTV come la chiama Django) è un po 'sciocca. L'interpretazione di Rails di MVC è molto più pulita. –

2

So che Rails non necessariamente = MVC per sé, ma penso che un sacco di ciò che rende Rails produttiva è che si fa rispettare (o meglio, incoraggia vivamente) lo sviluppo MVC, per cui si potrebbe trovare qualcosa di simile se cerchi Python MVC, come questo post precedente qui su Stack: What's a good lightweight Python MVC framework?

Ci sono molti framework Python MVC là fuori, ma continuo a sentire molto su Django (http://www.djangoproject.com/) in modo che sia sicuramente nella tua lista di cose da controllare IMO.

+2

Due altri framework degni di nota sono Pylons (http://pylonshq.com/) e TurboGears (http://www.turbogears.org/) – Chirael