I namespace Alias sono utili?

Gli alias di namespace gli definisco nel codice così

using sysDat = System.Data;
using sysSql = System.Data.SqlClient;
using sysXmlSrl = System.Xml.Serialization;
using sysRtmSrl = System.Runtime.Serialization;

e quindi per indicare il tipo DataRow scrivo sysDat.DataRow.
Se invece nel codice scrivo

using System.Data; 

posso anche dimenticarmi che esiste il namespace System.Data e per indicare il tipo DataRow scrivo DataRow e basta.

  Quando disegno il codice (sia up-front che col refactoring) uso i namespace per organizzare i tipi (classi, enum, etc.) raggruppando quelli logicamente correlati (un EventArgs insieme al suo evento, il tipo Spedizione insieme all'enum TipoSpedizione, etc.) [1]. Quando poi dichiaro, istanzio o referenzio quei tipi, il namespace in cui sono mi aiuta a comprendere la logica con cui sono stati disegnatio e quindi il modo corretto di usarli.
  Ecco che l'uso dell'Alias mi costa qualche tasto in più da premere ma mi aiuta a comprendere meglio l'astrazione che il disegno vuole creare [2].

  Per esempio nel codice quando leggo sysDat so che l'oggetto indicato di riferisce alla rappresentazione relazionale di informazioni in memoria indipendente dal Db e non lo confondo con sysSql che riguarda la comunicazione col db  SqlServer! Così quando leggo sysXmlSrl so che mi riferisco alla serializzazione di istanze in modo fedele all'Xml mentre se leggo sysRtmSrl so che la serializzazione è fedele al tipo .NET a discapito dell'Xml.

Questo è il vantaggio più importante che ho riscontrato ma ce ne sono altri. Ecco xKé nel codice mi piace usare gli alias e mi piacciono meno i semplici using.

Tags :   |

___________________________

[1] Strumenti Della Programmazione Object Oriented
[2] Paradigma Di Programmazione Modulare

Print | posted @ mercoledì 18 maggio 2005 18.09

Comments on this entry:

Gravatar # re: I namespace Alias sono utili?
by Luca Mauri at 18/05/2005 19.14

...una banalità, ma per esempio ho dovuto usarli in quanto avevo create gli aspx e gli ascx con lo stesso nome della della classe che rappresenta il mio modello dati.
Per esempio, devo gestire gli utenti, ho:
classe utenti
aspx utenti.aspx
ascx utenti.ascx

nel codice dell'ascx se non uso l'alias non riesco a referenziare correttamente la classe utenti.

comunque nel mio caso ho ripensato i nomi di ascx ed aspx risolvendo poi cosi la questione...

:)
Gravatar # re: I namespace Alias sono utili?
by Massimo Prota at 20/05/2005 0.45

Li ho notati per la prima volta guardando il codice dei nullable types e da allora ogni tanto ne faccio uso, ma non sempre.
Li uso ad esempio quando ho un namespace che uso poco; non così poco da doverlo scrivere ogni volta, ma neanche così tanto da "meritarsi" una using senza alias diciamo :)
Sicuramente ora è molto comodo per i casi di ambiguità; 'global' di C# 2.0 viene in aiuto in questo senso.

Your comment:

Title:
Name:
Email:
Website:
 
Italic Underline Blockquote Hyperlink
 
 
Please add 4 and 6 and type the answer here: