martedì 18 dicembre 2007

Custom user control

Sprecherei ancora qualche parola su questo argomento, cercando più che altro di ragionare sulla funzionalità intesa come astrazione.

Il fatto di creare un "cuc" (quanto mi piace questo termine) da sicuramente del valore aggiunto.

Osservando questo schema:

si noti, che non è difficile creare un template di controlli, ed ereditarlo di volta in volta, dando una strutturazione all'applicazione molto efficiente.

Rimane pur vero che è necessario approfondire considerevolmente l'analisi tecnica al fine di non creare oggetti inutili o poco fruibili.

Va da se ogni controllo dovrà rappresentare una singola funzionalità e non un gruppo complesso di operazioni.


In questo esempio vorrei finalizzare i controlli in modo tale da creare una griglia, un form e combo, senza tuttavia dare una specializzazione effettiva delle classi.
Ma ereditando esclusivamente il nostro controllo template.

E' possibile inoltre estendere considerevolmente le funzionalità di un controllo implementando vari metodi, proteggendoli qualora fosse necessario, o creando metodi privati ad hoc per la funzionalità che il controllo rappresenta.



In questo esempio CostomControlGrid nel metodo render Disegnerà una griglia sulla nostra pagina, nessuno (anzi è lo scopo finale) ci vieta di implementare un metodo che popoli le colonne, dando le corrette intestazioni, e che naturalmente popoli le celle con i dati.

Come non smetterò mai di dire si tratta di un approccio dispendioso dal punto di vista della scrittura del codice, ma a vantaggio della qualità del nostro lavoro finale.

Nessun commento: