SlideShare una empresa de Scribd logo
1 de 9
Windows Phone Version

MVVM Made Easy
The Caliburn Micro Framework
MVVM

Model

ViewModel

View
Problem ?

• Internal Pluming (boilerplate code).
• “magic strings” are used.
Toolkits

• MVVM Light.
• Caliburn Micro.
Pros and Cons (MVVM Light)
Pros

Cons

Easy Implementation

Developer has to do more work

Uses Same Concepts as MVVM
Pros and Cons (Caliburn Micro)
Pros

Cons

Less Overhead

Complex Configuration

More Productivity

Hides Mechanism
Uses Conventions (Easier Binding)
Comes With Helpers For Windows Phone
Let’s Make a Demo
Create the first project that uses Caliburn Micro
Configuring the App
• Find it in NuGet
• Create the Bootstrapper Class : http://sdrv.ms/1aArG03
• Declare the namespace in App.xaml:
(xmlns:YOURNAMESPACE="clr-namespace:YOURNAMESPACE“)

• Add The Bootstrapper as a resource:
(<YOURNAMESPACE:Bootstrapper x:Key="bootstrapper" />)

• Clean the App.xaml.cs
Remon Kamel
MEA DPE Intern at Microsoft – Egypt
fb.me/harryremon

@harryremon
harryremon@hotmail.com
harryremon.wordpress.com

Más contenido relacionado

Destacado

The Emerging Greek Yogurt Market
The Emerging Greek Yogurt MarketThe Emerging Greek Yogurt Market
The Emerging Greek Yogurt MarketAmrita Sengupta
 
Chobani Greek Yogurt Insights and Strategy
Chobani Greek Yogurt Insights and StrategyChobani Greek Yogurt Insights and Strategy
Chobani Greek Yogurt Insights and StrategyJosh Crafter
 
Manufacturing process of yogurt and dahi
Manufacturing process of yogurt and dahiManufacturing process of yogurt and dahi
Manufacturing process of yogurt and dahiNajja Tariq
 
Fermented milk products
Fermented milk products Fermented milk products
Fermented milk products Ankita Patil
 

Destacado (6)

Asean Econ. Community
Asean Econ. CommunityAsean Econ. Community
Asean Econ. Community
 
The Emerging Greek Yogurt Market
The Emerging Greek Yogurt MarketThe Emerging Greek Yogurt Market
The Emerging Greek Yogurt Market
 
Chobani Marketing Plan
Chobani Marketing PlanChobani Marketing Plan
Chobani Marketing Plan
 
Chobani Greek Yogurt Insights and Strategy
Chobani Greek Yogurt Insights and StrategyChobani Greek Yogurt Insights and Strategy
Chobani Greek Yogurt Insights and Strategy
 
Manufacturing process of yogurt and dahi
Manufacturing process of yogurt and dahiManufacturing process of yogurt and dahi
Manufacturing process of yogurt and dahi
 
Fermented milk products
Fermented milk products Fermented milk products
Fermented milk products
 

Último

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 

Último (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 

MVVM Made Easy: Introduction To Caliburn Micro on Windows Phone

  • 1. Windows Phone Version MVVM Made Easy The Caliburn Micro Framework
  • 3. Problem ? • Internal Pluming (boilerplate code). • “magic strings” are used.
  • 5. Pros and Cons (MVVM Light) Pros Cons Easy Implementation Developer has to do more work Uses Same Concepts as MVVM
  • 6. Pros and Cons (Caliburn Micro) Pros Cons Less Overhead Complex Configuration More Productivity Hides Mechanism Uses Conventions (Easier Binding) Comes With Helpers For Windows Phone
  • 7. Let’s Make a Demo Create the first project that uses Caliburn Micro
  • 8. Configuring the App • Find it in NuGet • Create the Bootstrapper Class : http://sdrv.ms/1aArG03 • Declare the namespace in App.xaml: (xmlns:YOURNAMESPACE="clr-namespace:YOURNAMESPACE“) • Add The Bootstrapper as a resource: (<YOURNAMESPACE:Bootstrapper x:Key="bootstrapper" />) • Clean the App.xaml.cs
  • 9. Remon Kamel MEA DPE Intern at Microsoft – Egypt fb.me/harryremon @harryremon harryremon@hotmail.com harryremon.wordpress.com

Notas del editor

  1. Speaker NotesInternal Pluming:
  2. Speaker Notes:- Mention that it’s Flexible to Use Standard Binding Instead of Conventions.
  3. Speaker Notes:Mention that in the bootstrapper you have to add a refrence all your ViewModels.We Are Cleaning the App.xaml.cs because the bootstrapper takes care of everything that is needed to initialize the App.