Il "principio open-closed" include anche file e dati dell'app? Secondo il link , si dice che file e dati non sono inclusi, ma non menziona se dovrebbero essere incluso.
Supponiamo di avere 2 modi per definire la stringa locale della mia app:
Metodo 1: tutte le stringhe locali in un singolo file:
locale.json
{
'title':{
'en':'Welcome',
'es':'bienvenida'
},
'hello_message':{
'en':'Welcome to use the app',
'es':'Bienvenido a usar la aplicación'
}
}
pseudo codice per caricare le impostazioni internazionali: carica local.json direttamente
come aggiungere una nuova localizzazione: modifica locale.json, aggiungi una nuova chiave a ogni stringa
Metodo 2: un json per ogni locale
locale_en.json
{
'title':'Welcome',
'hello_message':'Welcome to use the app'
}
locale_es.json
{
'title':'bienvenida',
'hello_message':'Bienvenido a usar la aplicación',
}
codice pseudo per caricare le impostazioni internazionali: cerca e carica tutti i file locali_xx.json nella cartella dati app specifica
come aggiungere una nuova locale: aggiungi un nuovo file locale_xx.json nella cartella dati app specifica
La mia domanda è, supponiamo che potrei aver bisogno di aggiungere una nuova localizzazione in futuro, e il codice da maneggiare rimane invariato, il metodo 2 è preferito perché segue il principio "open-closed?