Immaginate di avere un web service con i suoi bellissimissimi [WebMethod]s. Questi metodi chiamano il costruttore di una classe parte dell'object model "interno" che avete disegnato, il quale costruttore ha un parametro col quale valorizza un campo privato, che a sua volta è esposto tramite una proprietà con accessore get().
Tutto molto normale, no? L'avrò fatto decine (solo?) di volte... ma soltanto ieri mi sono fermato a pensare ad una possibile naming convention per "tracciare" sistematicamente un dato che viaggia all'interno della nostra architettura.
Intendiamoci, lo so che comunque la gestione dello scope è automatica ed efficiente, per cui in molti casi si potrebbe usare tranquillamente lo stesso nome, però... mi piacerebbe avere una mia codifica "parlante" che mi faccia capire al volo che tipo di dato sto maneggiando.
Personalmente l'unico formalismo che ho in testa e che rispetto è quello tra campi privati e properties. So che va per la maggiore approfittare della case-sensitiveness (ammesso che si possa dire...) di C# e scrivere iniziare le properties con la lettera maiuscola, ma personalmente mi piace premettere di data-type ai campi interni, per cui qualcosa del genere:
private String strNome
public String Nome
{
get { return strNome; }
}
E fin qui... ma quando entra in ballo il costruttore? Qui si che forse sarebbe "carino" far ricorso al nome tutto-minuscolo...?
public void MiaClasse(String nome)
{
strNome = nome;
}
E se, come dicevo, questo costruttore deve venire invocato all'interno di un WebMethod che a sua volta espone il dato come parametro della propria firma?
Uhm... come diceva il mio ex-collega Giuliano: "l'affare si ingrossa!". C'è qualche lineaguida in merito? Voi come vi regolate? Sono pippe mentali tipicamente mie? :-O