Ho appena incontrato un "problema interessante", di cui vorrei la tua opinione su:
Sto sviluppando un sistema e per molte ragioni (significato: astrazione, indipendenza tecnologica, ecc.) Creiamo i nostri tipi per lo scambio di informazioni.
Ad esempio: se esiste un metodo che si chiama SendEmail ed è invocato dalla logica di business, ha un parametro di tipo OurCompany.EMailMessage, che è un oggetto completamente indipendente dalla tecnologia e contiene solo "dati rilevanti per l'azienda" (per istanza, nessuna informazione sulla codifica head).
All'interno della funzione SendEmail, otteniamo queste informazioni dal nostro oggetto EMailMEssage e creiamo un oggetto MailMessage (questo è specifico per la tecnologia) in modo che possa essere inviato sulla rete.
Come puoi già notare, la nostra classe ha un nome molto simile alla classe di lingua "nativa". Il problema è: questo è esattamente quello che sono, i messaggi e-mail, quindi è difficile trovare un altro nome significativo per loro.
Hai questo problema spesso? Come lo gestisci?
Modifica: @mgkrebbs ha appena commentato l'utilizzo di nomi completi. Questo è il nostro approccio attuale, ma un po 'troppo prolisso, IMHO. Vorrei qualcosa di più pulito, se possibile.