Possiedo uno strumento di migrazione del database Java open source (http://www.liquibase.org) che sto considerando di eseguire il porting su .Net.JVM/CLR Opzioni lingua compatibili con origine
La maggior parte dello strumento (almeno da un lato della complessità) è in logica come "se si aggiunge una chiave primaria e il database è Oracle utilizzare questo SQL Se il database è MySQL utilizzare questo SQL. è chiamato e il database è Postgres usa questo SQL ".
Potrei inserire la base di codice Java e nasconderlo (manualmente e/o automaticamente), ma poiché gli aggiornamenti e le correzioni di errori alla logica precedente sono disponibili, non voglio doverli applicare a entrambe le versioni. Quello che mi piacerebbe fare è spostare tutta quella logica in una forma che possa essere compilata e utilizzata in modo ingenuo da entrambe le versioni Java e .Net.
Il codice che sto cercando di convertire non contiene alcun utilizzo avanzato di librerie (JDBC, System.out, ecc. peggio può essere progettato intorno).
Quindi quello che sto cercando è:
- Una lingua in cui posso codice parti comuni di mia app e compilarlo in classi utilizzabili dalle lingue "standard" sulla piattaforma di destinazione
- non aggiunge alcuna requisiti di runtime al sistema
- Niente modo strano che si spaventa di distanza i potenziali contributori
I kn o Python e Ruby hanno entrambe le implementazioni per JVM e CLR. Quanto bene si adattano alle mie esigenze? Qualcuno ha avuto successo (o senza successo) usando questa tecnica per le applicazioni multipiattaforma? Ci sono dei trucchi di cui devo preoccuparmi?
Penso che Fan sembra essere l'opzione migliore. Jython su Java sembra non aver funzionato per un po ', mentre IronRuby su CLR è solo alla versione 0.3. Dovrò imparare più fan per sapere se questo è quello che vorrei davvero fare o se è più semplice fare la forchetta. –
L'ultima versione di Jython era a novembre, e sembra abbastanza attiva, anche se sono d'accordo sul fatto che Fantom sia più adatto in questo caso. – Yishai