© Hive Studios 2009 Ivan Pavlović, Hive Studios CSM, Visual C# MVP, MCSD, MCDBA, MCT
© Hive Studios Who really needs it? Components Interactions Dive, dive…
© Hive Studios Multiple sources – One UI Bank Teller App Dev, test and deploy modules independently App developed by multiple teams
© Hive Studios Ingredients One monolith app or requirement for a new (and large) Desktop / Silverlight App Development environment (C# Express is OK) 150g of Module Loader implementation UnityContainer or Windsor to keep things together If you want get best taste out of this receipt cook on the mild temp in the beginning and increase temperature later Server hot with WiX or similar deployment tool
© Hive Studios Shell Presenter Region View(s) Presenter Model Service / Dependancy Injection Container Shell Host Application (entry point) ModuleEnumerator Module Loader RegionManager Logging EventAggregator Loader Core Modules Module Proffered Services Commands
© Hive Studios Commanding Event Aggregation Region Context Shared Services
© Hive Studios Configure ContainerConfigure Region MappingsLoad ModulesCreate ShellInitialize Modules
© Hive Studios
9 Order 1 Order 2 Order Item QTY Cost Navigation Region Navigation Region Main Content Window Order Details SHELL Item QTY Cost Views
© Hive Studios Publisher Subscriber IEventAggregator CompositePresentationEvent … …
© Hive Studios
© Hive Studios