Sto cercando alcuni suggerimenti sulla progettazione della classe per un'applicazione globale.
Diciamo che devo creare una struttura di classe per gestire i prodotti e che i prodotti sono venduti in paesi diversi. Alcuni dei campi per il prodotto avranno lo stesso valore in tutti i paesi (ad esempio codice prodotto, descrizione ERP). Chiamerò questi campi "internazionali" e alcuni campi saranno specifici per un singolo paese (ad esempio Descrizione locale), lascia chiamare questi campi "locali". Ovviamente, alcuni campi "locali" saranno uguali per gruppi di paesi (es: peso: 1 chilogrammo / 2 libbre). Inoltre, mi aspetto che non tutti i Paesi abbiano valori per tutti i campi.
Quali campi sono "internazionali" e quali campi "locali" possono cambiare da un'installazione all'altra e io sono riluttante a inserire questo aspetto nel design perché sono sicuro che mi morderà più tardi.
Quindi, sto cercando di capire come strutturare gli oggetti in modo da poter utilizzare un prodotto a livello internazionale e fare sempre riferimento allo stesso "prodotto", ma anche mantenere e utilizzare le informazioni locali quando necessario?
Per essere chiari, non sto parlando di impostazioni locali dell'utente, numero o data, ecc. I dati sorgente provengono da diversi schemi di database (uno per ogni paese). Il prodotto finale sarà scritto in C #.
Mi chiedo se qualcuno ha esperienza o può indicarmi un modello che potrebbe fornire una buona soluzione prima di andare a reinventare la ruota?