Domanda

Quando si convalidano gli input dell'utente in un'applicazione che deve essere eseguita su più locali, qual è il modo più appropriato per farlo? L'ho riscontrato in un progetto che avevo partecipato qualche anno fa e ora sono interessato a guardare indietro a come altrimenti avremmo potuto affrontare questo problema.

Le idee che ho avuto sono di scrivere una condizione di input valida su più locali o di utilizzare un'istruzione switch di grandi dimensioni (non mi piace questa) o di scrivere una regex specifica della locale che può essere archiviata in un file di proprietà esterno (o simile). La terza opzione è il mio metodo preferito ma sono interessato a sentire gli altri.

Un esempio di questo problema potrebbe essere, ad esempio, l'uso di lettere accentate in un contesto più diffuso all'interno delle lingue dell'Europa continentale o di insiemi di caratteri completamente diversi.

Quindi, se è necessaria la convalida sull'input e la condizione varierà a seconda della locale, che è il modo migliore per gestire questo problema.

PS: non sto specificatamente cercando una soluzione in una lingua particolare, più per approcci al problema in generale.

È stato utile?

Soluzione

Se stai scrivendo software per il mercato globale, è meglio utilizzare un framework per la parte di internazionalizzazione. C'è un'enorme quantità di differenze tra paesi e lingue. Ci sono molte trappole e insidie. Sicuramente non vuoi implementare tutte queste differenze da solo.

Qui è dove diventa dipendente dal linguaggio (linguaggio di programmazione). Se sei fortunato ad usare Java, ricevi gratuitamente il supporto per l'internazionalizzazione. Java ha molti strumenti per supportarti nella scrittura di software internazionalizzato. Anche altre lingue di livello superiore supportano l'internazionalizzazione.

Se non esiste un supporto integrato per l'internazionalizzazione per la tua lingua, è meglio iniziare a cercare un framework pronto all'uso

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top