SlideShare a Scribd company logo
Forretningsapplikasjoner med WPF Gøran Hansen Senior Consultant, Capgemini http://blog.goeran.no [email_address]
Agenda WPF Recap Utvikling av GUI Prinsipper Presentation Model Testing
WPF Recap! Det av .NET 3* Platform Hard 2/3D Vektorbasert Video og Lyd
WPF Recap! Rammeverk Rik komposisjonsmodell Styles and Templates Databinding XAML
Utvikling av GUI Team med flere utviklere Endringer er garantert
Dette skjer! Høy kobling Vanskelig å legge til ny funksjonalitet eller erstatte eksisterende Vanskelig å teste og deploye Monolitisk
 
 
 
 
 
 
Hmmm... Hvordan lage løsere kobling? Hvordan dekomponere GUI koden? Hvor kommer WPF inn i bildet?
Prinsipper! Design Patterns
Prinsipper ” Program to an interface, not an implementation” Separation Of Concerns
Design Patterns
Presentation Model Presentation Model Represents the state and the behavior of the presentation independently of the GUI controls used in the interface. Martin Fowler Design Pattern Guru
Presentation Model Presentation Model is a pattern that  pulls presentation behavior from a view .
Presentation Model It's useful for  allowing you to test  without the UI, support for some form of multiple view and a  separation of concerns  which may make it easier to develop the user interface.
View (XAML) Data Binding Change  notification “ It is easier to consider  Presentation Model  as an  abstract of the view  that is not dependent on a specific GUI framework.” “ A view then simply  projects  the state of the presentation model onto the glass.” Presentation Model State Name, Description, Estimate, IsSaveButtonEnabled Operations Save, Delete Data Model WS DB FS
Probably the most  annoying  part of Presentation Model is the synchronization between Presentation Model and view.
Presentation Model Ideally some kind of framework could handle this, which I'm hoping will happen some day with technologies like  .NET's data binding .
WPF Data Binding!
View (XAML) Data Binding Change  notification Presentation Model State Name, Description, Estimate, IsSaveButtonEnabled Operations Save, Delete Data Model WS DB FS Designer Developer Integration/Database developer
Testing
Oppsummering WPF + Presentation Model = Godt design! Separation Of Concerns ” Program to an interface, not an implementation”
Hvorfor WPF Kunnskap er portabel til Web (Silverlight 2) Designer <-> Dev vennlig Rik databinding støtte!
Tools CompositeWPF (CAB)
Forretningsapplikasjoner med WPF Gøran Hansen Senior Consultant, Capgemini http://blog.goeran.no [email_address]

More Related Content

PPTX
Silverlight 4 @ MSDN Live
goeran
 
PDF
Use html5 to build what you want, where you want it
Kevin DeRudder
 
PDF
Testing apps with MTM and Tea Foundation Service
Kevin DeRudder
 
PDF
Building cross platform applications using Windows Azure Mobile Services
Kevin DeRudder
 
PDF
VISUG: Visual studio for web developers
Kevin DeRudder
 
PPTX
Windows Store Apps: Tips & Tricks
Robert MacLean
 
PPTX
Visual Studio: The best tool for web developers.
Robert MacLean
 
PPTX
What’s new in LightSwitch 2013?
Robert MacLean
 
Silverlight 4 @ MSDN Live
goeran
 
Use html5 to build what you want, where you want it
Kevin DeRudder
 
Testing apps with MTM and Tea Foundation Service
Kevin DeRudder
 
Building cross platform applications using Windows Azure Mobile Services
Kevin DeRudder
 
VISUG: Visual studio for web developers
Kevin DeRudder
 
Windows Store Apps: Tips & Tricks
Robert MacLean
 
Visual Studio: The best tool for web developers.
Robert MacLean
 
What’s new in LightSwitch 2013?
Robert MacLean
 

What's hot (20)

PPTX
The state of testing @ Microsoft
Robert MacLean
 
PPTX
Windows 8
Robert MacLean
 
PPTX
What’s new in Visual Studio 2012 & .NET 4.5
Robert MacLean
 
PPTX
How to build a Mobile API or HTML 5 app in 5 minutes
Robert MacLean
 
PPTX
JavaScript Toolkit
Robert MacLean
 
PPTX
B4UConference_Sexy Angular Stack
Hoa Le
 
PPTX
Visual Studio ❤ JavaScript
Robert MacLean
 
PDF
Machine Learning para devs com ML.NET
Letticia Nicoli
 
PPTX
Mercurial
Robert MacLean
 
PDF
Modern web applications
Andrea Tino
 
PPTX
WebMatrix
Robert MacLean
 
PPTX
A Developer Day 2014 - Durban
Robert MacLean
 
PDF
Pros & cons of svelte
ElenorWisozk
 
ODP
dot net
sambhajimeher
 
PPTX
Untangle Your Front End Development with Visual Studio 2015
Scott Heckel
 
ODP
Getting to Done on the Command Line
All Things Open
 
PPTX
Visual studio 2017 - Tips & Tricks
Amal Dev
 
PDF
Javascript cheatsheet
Andrea Tino
 
PDF
PLASTIC 2011: "Enterprise JavaScript with Jangaroo"
Frank Wienberg
 
PDF
How To be a Backend developer
Ramy Hakam
 
The state of testing @ Microsoft
Robert MacLean
 
Windows 8
Robert MacLean
 
What’s new in Visual Studio 2012 & .NET 4.5
Robert MacLean
 
How to build a Mobile API or HTML 5 app in 5 minutes
Robert MacLean
 
JavaScript Toolkit
Robert MacLean
 
B4UConference_Sexy Angular Stack
Hoa Le
 
Visual Studio ❤ JavaScript
Robert MacLean
 
Machine Learning para devs com ML.NET
Letticia Nicoli
 
Mercurial
Robert MacLean
 
Modern web applications
Andrea Tino
 
WebMatrix
Robert MacLean
 
A Developer Day 2014 - Durban
Robert MacLean
 
Pros & cons of svelte
ElenorWisozk
 
dot net
sambhajimeher
 
Untangle Your Front End Development with Visual Studio 2015
Scott Heckel
 
Getting to Done on the Command Line
All Things Open
 
Visual studio 2017 - Tips & Tricks
Amal Dev
 
Javascript cheatsheet
Andrea Tino
 
PLASTIC 2011: "Enterprise JavaScript with Jangaroo"
Frank Wienberg
 
How To be a Backend developer
Ramy Hakam
 
Ad

Similar to MSDN Live: Windows Presentation Foundations Line of Business Apps (20)

PPTX
Prism Tech Ed India
rsnarayanan
 
PPTX
Mvvm pattern
msarangam
 
PPTX
Introduction To Useful Wpf
Burke Holland
 
PPTX
Eclipse Developement @ Progress Software
sriikanthp
 
PPTX
Windows Presentation Foundation
Tran Ngoc Son
 
PPT
Visual Studio 2008 & .Net 3.5
Hadi Karimi
 
PPTX
Extending the Visual Studio 2010 Code Editor to Visualize Runtime Intelligenc...
Joe Kuemerle
 
PPTX
Application Lifecycle Management with TFS
Mehdi Khalili
 
PPT
MVC(Model View Controller),Web,Enterprise,Mobile
naral
 
PPT
What's New for Presentation in Visual Studio 2008 SP1
ukdpe
 
PPTX
Better User Experience with .NET
Peter Gfader
 
PDF
SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...
danyackel
 
PPSX
Oracle ADF Overview for Beginners
Jithin Kuriakose
 
PPTX
Presentation Model
Alex Miranda
 
PPT
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Dave Bost
 
PPT
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Frank La Vigne
 
PPTX
Whats New In 2010 (Msdn & Visual Studio)
Steve Lange
 
PPTX
NET Event - Migrating WinForm
Raffaele Garofalo
 
PPTX
Oracle fusion adf online training in africa
magnifics
 
PPTX
Oracle fusion adf online training in africa
magnificsmile
 
Prism Tech Ed India
rsnarayanan
 
Mvvm pattern
msarangam
 
Introduction To Useful Wpf
Burke Holland
 
Eclipse Developement @ Progress Software
sriikanthp
 
Windows Presentation Foundation
Tran Ngoc Son
 
Visual Studio 2008 & .Net 3.5
Hadi Karimi
 
Extending the Visual Studio 2010 Code Editor to Visualize Runtime Intelligenc...
Joe Kuemerle
 
Application Lifecycle Management with TFS
Mehdi Khalili
 
MVC(Model View Controller),Web,Enterprise,Mobile
naral
 
What's New for Presentation in Visual Studio 2008 SP1
ukdpe
 
Better User Experience with .NET
Peter Gfader
 
SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...
danyackel
 
Oracle ADF Overview for Beginners
Jithin Kuriakose
 
Presentation Model
Alex Miranda
 
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Dave Bost
 
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Frank La Vigne
 
Whats New In 2010 (Msdn & Visual Studio)
Steve Lange
 
NET Event - Migrating WinForm
Raffaele Garofalo
 
Oracle fusion adf online training in africa
magnifics
 
Oracle fusion adf online training in africa
magnificsmile
 
Ad

More from goeran (6)

PPTX
Intro til windows 8
goeran
 
PPTX
The Software Craftsman (2nd edition)
goeran
 
PPTX
The Software Craftsman
goeran
 
PPTX
Software Craftsmanship @ Ntnu
goeran
 
PPT
OOP - Back to Basic
goeran
 
PPT
MSDN Live: Silverlight 2
goeran
 
Intro til windows 8
goeran
 
The Software Craftsman (2nd edition)
goeran
 
The Software Craftsman
goeran
 
Software Craftsmanship @ Ntnu
goeran
 
OOP - Back to Basic
goeran
 
MSDN Live: Silverlight 2
goeran
 

Recently uploaded (20)

PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PDF
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PDF
Doc9.....................................
SofiaCollazos
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
The Future of Artificial Intelligence (AI)
Mukul
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
Doc9.....................................
SofiaCollazos
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 

MSDN Live: Windows Presentation Foundations Line of Business Apps

  • 1. Forretningsapplikasjoner med WPF Gøran Hansen Senior Consultant, Capgemini http://blog.goeran.no [email_address]
  • 2. Agenda WPF Recap Utvikling av GUI Prinsipper Presentation Model Testing
  • 3. WPF Recap! Det av .NET 3* Platform Hard 2/3D Vektorbasert Video og Lyd
  • 4. WPF Recap! Rammeverk Rik komposisjonsmodell Styles and Templates Databinding XAML
  • 5. Utvikling av GUI Team med flere utviklere Endringer er garantert
  • 6. Dette skjer! Høy kobling Vanskelig å legge til ny funksjonalitet eller erstatte eksisterende Vanskelig å teste og deploye Monolitisk
  • 7.  
  • 8.  
  • 9.  
  • 10.  
  • 11.  
  • 12.  
  • 13. Hmmm... Hvordan lage løsere kobling? Hvordan dekomponere GUI koden? Hvor kommer WPF inn i bildet?
  • 15. Prinsipper ” Program to an interface, not an implementation” Separation Of Concerns
  • 17. Presentation Model Presentation Model Represents the state and the behavior of the presentation independently of the GUI controls used in the interface. Martin Fowler Design Pattern Guru
  • 18. Presentation Model Presentation Model is a pattern that pulls presentation behavior from a view .
  • 19. Presentation Model It's useful for allowing you to test without the UI, support for some form of multiple view and a separation of concerns which may make it easier to develop the user interface.
  • 20. View (XAML) Data Binding Change notification “ It is easier to consider Presentation Model as an abstract of the view that is not dependent on a specific GUI framework.” “ A view then simply projects the state of the presentation model onto the glass.” Presentation Model State Name, Description, Estimate, IsSaveButtonEnabled Operations Save, Delete Data Model WS DB FS
  • 21. Probably the most annoying part of Presentation Model is the synchronization between Presentation Model and view.
  • 22. Presentation Model Ideally some kind of framework could handle this, which I'm hoping will happen some day with technologies like .NET's data binding .
  • 24. View (XAML) Data Binding Change notification Presentation Model State Name, Description, Estimate, IsSaveButtonEnabled Operations Save, Delete Data Model WS DB FS Designer Developer Integration/Database developer
  • 26. Oppsummering WPF + Presentation Model = Godt design! Separation Of Concerns ” Program to an interface, not an implementation”
  • 27. Hvorfor WPF Kunnskap er portabel til Web (Silverlight 2) Designer <-> Dev vennlig Rik databinding støtte!
  • 29. Forretningsapplikasjoner med WPF Gøran Hansen Senior Consultant, Capgemini http://blog.goeran.no [email_address]