Silverlight 4 Reference Architecture for LOB apps

  • 2,895 views
Uploaded on

A short introduction to my current Silverlight 4 reference architectuer with elements of CQRS.

A short introduction to my current Silverlight 4 reference architectuer with elements of CQRS.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,895
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
62
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • MVVM

Transcript

  • 1. A Silverlight 4 Reference Architecturefor Line-of-Business Applications
    Dennis Doomen
    dennis.doomen@avivasolutions.nl
  • 2. Dennis Doomen
    Requirements
    • Testable
    • 3. Pragmatic
    • 4. Single ResponsibilityPrinciple
    • 5. DependencyInjection
    • 6. Don’t DIY
    • 7. …whateveryour project requires
  • The traditional architecture…
  • 8. Views (XAML + C#)
    Shell
    View Models
    Silverlight 4
    Application Controller
    Service Agent
    DTOs
    Service Interface
    WCF
    Workflows
    Domain Model
    Service Actions
    NHibernate(+ Fluent & LINQ)
    Service Agents
    Unit-of-Work
    Repositories
    Database
    Backoffice System
    External Service
  • 17. Dennis Doomen
    Model View-ViewModel
    INotifyPropertyChanged
    Events
    XAML (+C#)
    ViewModel
    ServiceAgent
    {Binding}
    Command
    Call
    Model
    Loads
  • 18. As Microsoft wants it…
  • 19. Views (XAML + C#)
    Shell
    View Models
    Silverlight 4
    Application Controller
    Domain Context
    Changesets
    WCF RIA Services
    Domain Service
    Business Actions
    Entities
    Service Agents
    Entity Framework
    Database
    Backoffice System
    External Service
  • 30. Entity Framework and WCF RIA Services?
  • 31. Dennis Doomen
    WCF RIA Services
    • Client-side Validation
    • 32. Automatic change-tracking
    • 33. Client-side LINQ
    • 34. Code Sharing
    • 35. Great for CRUD i.c.m. Entity Framework
    • 36. Built-in authorization
    • 37. OData support
    • 38. WCF based
    • 39. No rich domain models
    • 40. No eagerloading
    • 41. No enum support
    • 42. Notpersistency ignorant
  • Dennis Doomen
    Entity Framework
    • Great designer environment
    • 43. Code Sharing
    • 44. Fluent interface
    • 45. POCO support
    • 46. Great integrationwith WCF RIA/Data
    • 47. Mappingattributes
    • 48. Mappingattributes
    • 49. No free support forothervendors
    • 50. No enum support
    • 51. No 2nd level caching
  • Thenwhat?
  • 52. Views (XAML + C#)
    Shell
    View Models
    Coroutines
    Caliburn Micro
    Unity 2 or MEF
    Silverlight 4
    Application Controller
    Service Agent
    Bootstrapper
    DTOs
    Commands
    Enterprise Library 5
    WCF Data Services
    Rest Service
    Command Service
    Command Handlers
    Domain Model
    Service Actions
    Policy Injection
    Logging
    Unity 2 of MEF
    Workflows
    Event Handlers
    Domain Events
    NHibernate(+ Fluent & LINQ)
    Service Agents
    Unit of Work
    Repositories
    Database
    Backoffice System
    External Service
  • 53. Dennis Doomen
    WCF Data Services
  • Commanding
  • 64. Domain Events
  • 65. Background InformationMVVM, Coroutines, Commanding, Querying, Domain Events, TestableRepositoryPattern
    Example Code, FrameworksThe CQRS Kitchen, CaliburnMicro, MEF, Unity 2, NHibernate, FluentNHibernate, FluentAssertions
  • 66. Emaildennis.doomen@avivasolutions.nl
    Twitter
    @ddoomen
    Blogwww.dennisdoomen.net