Architettura

There are 11 entries for the tag Architettura
UI Composition :: “Navigation”

Questa cosa è rimasta in sospeso da tempo immemore ed è ora di dare un senso, perchè altrimenti un senso non ce l’ha… <semi-cit> :-) La nostra applicazione funziona! ma effettivamente è poco più di un “Hello World”, però funziona. Prometto che diventerà qualcosa di più di un semplicissimo “proof of concept”. Adesso però abbiamo un problema non da poco, ne abbiamo già parlato, e adesso cerchiamo di approfondire e nel limite del possibile dare una soluzione. A volte si dice che un’immagine vale più di mille parole ma in questo caso non è...

posted @ domenica 27 settembre 2009 15:54 | Feedback (0)

UI Composition :: Astrazione… (intermezzo)

Mi chiedono: “…Se volessi creare una shell con il ribbon in alto e la possibilità di aggiungere schede al ribbon da parte dei singoli moduli, devo referenziare l'assembly del ribbon da ogni modulo? o c'è un modo più corretto e ordinato per fare le cose? Perchè sarebbe carino se potessi referenziare l'assembly del ribbon da un modulo Infrastruttura e poi da tutti i moduli poter caricare la parte di ribbon dedicata al modulo passando per l'infrastruttura…” Se ho ben capito, e qui liberi di smentirmi, la domanda potrebbe essere generalizzata in: ...

posted @ mercoledì 8 aprile 2009 07:47 | Feedback (1)

UI Composition :: RegionService, RegionManager(s) & Region(s)

Prima di passare all’argomento centrale di questa lunga trattazione dobbiamo fare un piccolo escursus sul sistema di comunicazione interno all’applicazione. Messaging Il mondo .net ci ha abituato molto bene, gli eventi sono una vera manna dal cielo, ma purtroppo nel nostro caso servono veramente a poco. Facciamo un esempio chiarificatore: Avete 2 oggetti che devono comunicare tra loro, e per l’esattezza, l’oggetto A deve sapere quando succede qualcosa all’oggetto B. Tradizionalmente fareste: Esporre a B un evento; Aggiungere un handler a B.Event da A;...

posted @ lunedì 6 aprile 2009 08:40 | Feedback (0)

UI Composition :: I Moduli

Scoperto come scoprire quali sono i moduli installati non ci resta che caricarli… fosse semplice ;-) La prima cosa che dobbiamo fare è trovare un sistema per collegare un IModuleDescriptor ad un modulo, dato che le informazioni presenti in un ModuleDescriptor arrivano da un file di configurazione non abbiamo gratis nessun “ponte” tra i 2 mondi: la descrizione di un modulo e il modulo stesso. Quello che possiamo banalmente fare, e che faremo, è aggiungere alcune informazioni al sistema di configurazione, in realtà scopriamo che ci basta aggiungere al file di configurazione un valore che ci dica quale...

posted @ mercoledì 1 aprile 2009 14:45 | Feedback (1)

UI Composition :: Il processo di discovery

La nostra applicazione non fa ancora nulla ma almeno si avvia. Il prossimo passo è quello di realizzare un’infrastruttura per gestire i moduli, in particolare in questa fase ci concentreremo sul processo di discovery. Quali sono i problemi che dobbiamo risolvere: Discovery: il processo di discovery è quello che consente all’IApplicationBootstrapper di capire quali siano i moduli che possono essere caricati, quello che ci dobbiamo limitare a fare è quindi fornire allo strato superiore l’elencodeii moduli disponibili, non è onere nostro fare nessun ragionamento; A questo punto possiamo avere 3 potenziali...

posted @ mercoledì 1 aprile 2009 07:18 | Feedback (0)

UI Composition :: La Shell

Here we are, lets go deeper! Concentriamo in questo post i primi 2 argomenti: L’organizzazione della solution in Visual Studio, e i problemi che ci dobbiamo portare a casa; La Shell: lo scheletro della nostra infrastruttura; Visual Studio: how to… L’organizzazione della solution in VS è fondamentale per non impazzire durante lo sviluppo e per supportare sia i vostri requisiti sia l’infrastruttura di IoC; quest’ultima è quella che rende particolarmente critica la struttura della solution: Dogma: un framework non deve dipendere da un IoC container; ...

posted @ martedì 31 marzo 2009 06:46 | Feedback (2)

UI Composition :: IndexOf()

Continuiamo… Siamo ancora ad un livello introduttivo, cerchiamo di capire quali sono le problematiche tecniche che dovremo affrontare e perchè. Dogma: Diamoci delle regole e rispettiamole. Nello sviluppo di applicazioni complesse, e comunque in generale nell’applicazione di un pattern, non abbiamo nessun supporto dall’ambiente di sviluppo, questo significa, ad esempio, che il compilatore (san csc.exe :-D) non ci aiuta in nessun modo segnalandoci che stiamo facendo una certa cosa nel modo sbagliato. Abbiamo quindi bisogno di capire quali sono i problemi, trovare una soluzione che ci permetta di rispettare i requisiti e poi non...

posted @ sabato 28 marzo 2009 19:00 | Feedback (4)

UI Composition :: Thread.Start()

Immaginiamo uno scenario in cui sia necessario soddisfare i seguenti requisiti: Deve essere possibile scomporre l’applicazione in moduli funzionali: I moduli funzionali devono essere independenti l’uno dall’altro; I mdouli funzionali possono avere delle dipendenze logiche tra loro ma l’assenza di una dipendenza non deve precludere il funzionamento dell’applicazione o del modulo stesso; I moduli funzionali devono poter essere rimpiazzati/aggiunti a caldo; ...

posted @ venerdì 27 marzo 2009 17:56 | Feedback (7)

Spettacolo!

Era un po’ di tempo che non mi divertivo così tanto a fare questo lavoro! Da un mesetto a questa parte sto lavorando ad un nuovo progetto che è nato quasi per caso. In dicembre IL mio cliente storico si presenta e mi dice che avrebbero bisogno di una semplice applicazione per fare l’inventario di una delle loro attività al pubblico. L’obiettivo è quello di avere uno strumento snello e semplice che permetta ad n operatori di lavorare insieme e funzioni senza fronzoli e soprattutto senza problemi dato che il tempo stimato per l’inventario è di 72h...

posted @ sabato 7 febbraio 2009 18:12 | Feedback (7)

Logica applicativa nelle SP...?

...lungi da me ;-), ma... ebbene si secondo me c'è sempre un ma. In questo periodo, decisamente massacrante, stiamo lavorando ad una soluzione potenzialmente abbastanza complessa e potenzialmente molto distribuita ;-) quindi uno dei problemi è che abbiamo n tier che vengono coinvolti dal ciclo di vita di una entity o da una operazione di business; e questo mi fa sempre dire che ogni tier/layer è storia a se, non sa nulla di chi sta prima e sa molto poco di chi sta dopo... e se assieme a questo assioma ci mettiamo che il dato è sacro (meglio un...

posted @ venerdì 16 maggio 2008 13:40 | Feedback (6)

Il database è al mio servizio...

... e non viceversa. Con questo intendo dire che il modello ad oggetti che utilizziamo non dovrebbe essere mai modellato, in nessuna delle sue parti, pensando al fatto che quello specifico modello ad oggetti dovrà essere mappato su di un modello relazionale. Perchè dico questo? perchè spesso vedo, o semplicemente sento, che questo concetto viene in alcuni casi "dimenticato" a favore della semplicità (ma è poi vera questa semplicità o è solo apparente?) di implementazione della relazione tra i due mondi. Ma andiamo con ordine, ieri "chiaccherando" di architettura con il collega Marco, sono stato simpaticamente tacciato di...

posted @ venerdì 16 maggio 2008 12:51 | Feedback (5)