O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Introducing the silverlight cookbook

1.686 visualizações

Publicada em

Publicada em: Tecnologia, Negócios
  • If you are looking for customer-oriented academic and research paper writing service try ⇒⇒⇒ WRITE-MY-PAPER.net ⇐⇐⇐ liked them A LOTTT Really nice solutions for the last-day papers
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • Seja a primeira pessoa a gostar disto

Introducing the silverlight cookbook

  1. 1. Introducing the Silverlight Cookbook Why, what, how and when Dennis Doomen© 2011 Aviva Solutions dennis.doomen@avivasolutions.nl 25 februari 2012
  2. 2. About Me • Principal Consultant • 14 years IT experience • C++ origins but C# since 2001 • Specialties • .NET Architecture • Scrum/XP • ALM • Speaker • Public initiatives • Silverlight Cookbook • C# Coding Guidelines • Fluent Assertions • Internet • www.dennisdoomen.net • DZone MVB • @ddoomen© 2011 Aviva Solutions Dennis Doomen 25 februari 2012
  3. 3. Defining an architecture 1. Collect non-functionals 2. Determine deployment environment 3. Determine usage 4. Select engineering principles 5. Read between the lines 6. Select technology 7. Define reference architecture 8. Build & adapt© 2011 Aviva Solutions Dennis Doomen 25 februari 2012
  4. 4. Design Decisions • Tiers vs. Layers • Integration • Distribution • Scalability • Security • Deployment • Diagnostics • Reliability© 2011 Aviva Solutions Dennis Doomen 25 februari 2012
  5. 5. The Silverlight Cookbook • Silverlight 5 • Fully automated testing (almost ) • Complex domain logic • Task Based • Scalable • Responsive • Any relational DB • Overkill for most applications, so pick & choose© 2011 Aviva Solutions Dennis Doomen 25 februari 2012
  6. 6. The traditional architecture…© 2011 Aviva Solutions 25 februari 2012
  7. 7. Shell Views (XAML + C#)  Well-known  Rich domain models Silverlight 5 View Models  Many frameworks Application Controller  Very flexibele Service Agent × Lots of work × Lots of plumbing needed × Not using RIA frameworks DTOs × DTO conversion troubles × No eager loading WCF Service Interface Service Actions Domain Model Workflows Nhibernate 3.x (+ Fluent) Repositories Unit-of-Work Service Agents Backoffice External Database System Service© 2011 Aviva Solutions 25 februari 2012
  8. 8. As Microsoft wants it…© 2011 Aviva Solutions 25 februari 2012
  9. 9. Shell Views (XAML + C#)  Easy to build  Silverlight 5 View Models Simple domain models  Less plumbing needed Application Controller  No DTO conversions needed Domain Context  Maximizes RIA frameworks  WCF RIA Services Great for CRUD  Batching Changesets × CRUD-based × Domain model not possible Domain Service × No dynamic relationship Entities Business Actions loading × Almost enum support Entity Framework Service Agents × No 2nd level caching Backoffice External Database System Service© 2011 Aviva Solutions 25 februari 2012
  10. 10. Then what?© 2011 Aviva Solutions 25 februari 2012
  11. 11. Shell Views (XAML + C#) Caliburn Micro Silverlight 5 AutoFac Coroutines View Models Application Controller Service Agent Bootstrapper WCF Data Services DTOs Commands Query Services Command Service Event Handlers Command Handlers AutoFac Logging Nhibernate 3.x (+ Fluent) Domain Events Domain Model Repositories Unit of Work Service Agents Backoffice External Database System Service© 2011 Aviva Solutions 25 februari 2012
  12. 12. Commanding Concurrency Validation Querying Testability Business Rules Recipes Data Access Deployment Exception Handling IoC Composition Logging Asynchronity© 2011 Aviva Solutions 25 februari 2012
  13. 13. What’s Next? • Nicer Design • WinRT? HTML5? • Query Optimization • Key-Based Commanding • More CQRS • Authentication • Authorization • Globalization • Fluent Migration© 2011 Aviva Solutions Dennis Doomen 25 februari 2012
  14. 14. Background Information MVVM, Coroutines, Commanding, Querying, Domain Events, Testable Repository Pattern Example Code, Frameworks Silverlight Cookbook, Caliburn Micro, AutoFac, NHibernate, Fluent NHibernate, Fluent Assertions© 2011 Aviva Solutions 25 februari 2012
  15. 15. Email dennis.doomen@avivasolutions.nl Twitter @ddoomen Blog www.dennisdoomen.net© 2011 Aviva Solutions 25 februari 2012

×