Come posso aggiornare i miei pacchetti di risorse per l'internazionalizzazione?

1

Vorrei aggiungere traduzioni senza aspettare una nuova versione completa.

In altre parole, preferirei che i bundle di risorse non facessero parte del mio repository Git; e che siano facilmente modificabili e immediatamente riflessi nella mia webapp.

Quali sono le soluzioni standard per questo?

    
posta Joshua Fox 12.09.2018 - 10:00
fonte

2 risposte

2

Beh, non c'è motivo per cui non dovrebbe essere parte del repository git. Il punto cruciale è quello di separare la parte del tuo progetto che è versionata dalla parte che può essere rilasciata in qualsiasi momento.

Tipicamente per fare questo, lo metterei nella sua cartella e avrebbe il suo ciclo di vita e l'integrazione continua. Immagino che nel tuo caso sarebbe un semplice contenitore con i file .properties per il tuo pacchetto di risorse. Quindi, ogni volta che devi creare una nuova versione del tuo programma, compili una versione specifica, e prendi l'ultima compilation della tua cartella senzaverso e mettili insieme per la distribuzione, probabilmente come una libreria di riferimento della tua applicazione web.

In questo modo, hai sempre una copia pronta per la distribuzione del binario non controllato e anche la possibilità di combinarla con il binario versione per la distribuzione. Potrebbe essere nel tuo migliore interesse avere il file .properties predefinito nel tuo progetto direttamente, in modo che tu possa testare l'applicazione web senza richiedere il bundle (in questo caso non avresti le traduzioni disponibili).

Se preferisci, puoi metterlo in un repository git separato, ma penso che sia un po 'eccessivo, considerando che le due componenti sono metà di un intero programma. Buona fortuna!

    
risposta data 12.09.2018 - 10:10
fonte
2

Ci sto pensando da un po 'di tempo.

Distribuisci qualcosa con un errore di battitura che ha superato il controllo di qualità e devi eseguire un'altra versione solo per correggere un errore di battitura (bug?).

Ho iniziato a pensare che le traduzioni fossero un contenuto di qualsiasi altro contenuto creato mentre il sistema è in esecuzione, come la creazione di un utente con il pulsante "crea nuovo utente". Questo cambia molto le cose e devi chiederti chi è effettivamente responsabile della creazione o della fornitura delle traduzioni, c'è un cliente o sei tu perché stai facendo un prodotto?

Anche se ti viene in mente una soluzione che è hot-reloadable come archiviarli e tagliarli usando un database, devi avere un modo per farli passare dal server di sviluppo al server di test alla produzione e al contrario viceversa bene. Quindi è necessario un qualche tipo di meccanismo di esportazione / importazione più o meno automatico e questo sembra un sacco di problemi.

La gestione delle traduzioni è dolorosa se si dispone di una terza parte che si occupa di fornirle poiché è necessario elaborare un formato comprensibile dal sistema e da terze parti o un meccanismo che consenta una facile leggibilità e un modo per gestirli per il terzo partito ma devono essere compatibili anche con il sistema. Finora mi sento come se i tipi di file .properties di soluzione avessero meno problemi da risolvere.

    
risposta data 12.09.2018 - 13:11
fonte

Leggi altre domande sui tag