SlideShare una empresa de Scribd logo
1 de 9
Windows Phone 7
    from zero to app




     Damon Allison
      3/17/2012
Agenda

• Make an app - todo list.
• Highlight WP7’s strengths
• UI => Binding => Data => Shell => Tools
• Beyond WP7 : Windows Phone Roadmap
UI
• Frames : panoramic | pivot | app bar
• XAML == HTML | CSS | Box Model
• Resources
• Styles | Templates : CSS in HTML
• User Controls
Binding

• Binding paths | syntax.
• ObservableCollection<T>
• INotifyPropertyChanged
• Field Validation | Data Converters
Data

• LINQ => SQL
• DataContext
• Versioning : DatabaseUpdateSchema
Environment

• Live Tiles | Secondary Tiles
• Backgrounding
• Trial Mode
Tools


• Profiler
• Marketplace Test Kit
WP8 Roadmap
•   Hardware : “Scale and Choice”

    •   4 screen resolutions | multicore | removable SD
        | NFC

•   Software:

    •   Win8 kernel (not CE) | silverlight backwards
        compatibility | WinRT (?)

•   Ecosystem

    •   Zune gone | Skydrive integration | alignment w/
        Windows 8 (store / services / etc?)
Weaknesses

• Market Share
• Cross app communication
• Bluetooth API
• Office integration doesn’t exist (nor file
  viewers)

Más contenido relacionado

Destacado

Get your liaise on
Get your liaise onGet your liaise on
Get your liaise onMobile March
 
Cross-Platform Mobile Development with PhoneGap-Vince Bullinger
Cross-Platform Mobile Development with PhoneGap-Vince BullingerCross-Platform Mobile Development with PhoneGap-Vince Bullinger
Cross-Platform Mobile Development with PhoneGap-Vince BullingerMobile March
 
Using Mobile to Achieve Truly Integrated Marketing - Curt Prins
Using Mobile to Achieve Truly Integrated Marketing - Curt PrinsUsing Mobile to Achieve Truly Integrated Marketing - Curt Prins
Using Mobile to Achieve Truly Integrated Marketing - Curt PrinsMobile March
 
Technology Infusion Project
Technology Infusion ProjectTechnology Infusion Project
Technology Infusion Projectjh08917
 
Tingkatan 2 gaya belajar
Tingkatan 2 gaya belajarTingkatan 2 gaya belajar
Tingkatan 2 gaya belajarHafarah Adam
 
The Mobile Evolution‚ Systems vs. Apps - Matthew David
The Mobile Evolution‚ Systems vs. Apps - Matthew DavidThe Mobile Evolution‚ Systems vs. Apps - Matthew David
The Mobile Evolution‚ Systems vs. Apps - Matthew DavidMobile March
 
United Kingdom
 United Kingdom United Kingdom
United Kingdomamjordan22
 
USA´s' activities
USA´s' activitiesUSA´s' activities
USA´s' activitiesamjordan22
 
Using Chipmunk Physics to create a iOS Game - Scott Lembcke
Using Chipmunk Physics to create a iOS Game - Scott LembckeUsing Chipmunk Physics to create a iOS Game - Scott Lembcke
Using Chipmunk Physics to create a iOS Game - Scott LembckeMobile March
 
Dueling Banjos: Inter-app Communication
Dueling Banjos: Inter-app Communication Dueling Banjos: Inter-app Communication
Dueling Banjos: Inter-app Communication Mobile March
 
Beginning i os part 2 sam kirchmeier
Beginning i os part 2   sam kirchmeierBeginning i os part 2   sam kirchmeier
Beginning i os part 2 sam kirchmeierMobile March
 
Bannin mobile march_2012_public
Bannin mobile march_2012_publicBannin mobile march_2012_public
Bannin mobile march_2012_publicMobile March
 
Mobile marketing meltdown
Mobile marketing meltdownMobile marketing meltdown
Mobile marketing meltdownMobile March
 
Mobile march2012 android101-pt1
Mobile march2012 android101-pt1Mobile march2012 android101-pt1
Mobile march2012 android101-pt1Mobile March
 
Building Wearables-Kristina Durivage
Building Wearables-Kristina DurivageBuilding Wearables-Kristina Durivage
Building Wearables-Kristina DurivageMobile March
 
LiveCode Cross-Platform Development-Joel Gerdeen
LiveCode Cross-Platform Development-Joel GerdeenLiveCode Cross-Platform Development-Joel Gerdeen
LiveCode Cross-Platform Development-Joel GerdeenMobile March
 

Destacado (20)

Get your liaise on
Get your liaise onGet your liaise on
Get your liaise on
 
Mmtc2012 app-full
Mmtc2012 app-fullMmtc2012 app-full
Mmtc2012 app-full
 
Hangover
HangoverHangover
Hangover
 
Cross-Platform Mobile Development with PhoneGap-Vince Bullinger
Cross-Platform Mobile Development with PhoneGap-Vince BullingerCross-Platform Mobile Development with PhoneGap-Vince Bullinger
Cross-Platform Mobile Development with PhoneGap-Vince Bullinger
 
Using Mobile to Achieve Truly Integrated Marketing - Curt Prins
Using Mobile to Achieve Truly Integrated Marketing - Curt PrinsUsing Mobile to Achieve Truly Integrated Marketing - Curt Prins
Using Mobile to Achieve Truly Integrated Marketing - Curt Prins
 
Technology Infusion Project
Technology Infusion ProjectTechnology Infusion Project
Technology Infusion Project
 
Tingkatan 2 gaya belajar
Tingkatan 2 gaya belajarTingkatan 2 gaya belajar
Tingkatan 2 gaya belajar
 
The Mobile Evolution‚ Systems vs. Apps - Matthew David
The Mobile Evolution‚ Systems vs. Apps - Matthew DavidThe Mobile Evolution‚ Systems vs. Apps - Matthew David
The Mobile Evolution‚ Systems vs. Apps - Matthew David
 
United Kingdom
 United Kingdom United Kingdom
United Kingdom
 
USA´s' activities
USA´s' activitiesUSA´s' activities
USA´s' activities
 
Using Chipmunk Physics to create a iOS Game - Scott Lembcke
Using Chipmunk Physics to create a iOS Game - Scott LembckeUsing Chipmunk Physics to create a iOS Game - Scott Lembcke
Using Chipmunk Physics to create a iOS Game - Scott Lembcke
 
Dueling Banjos: Inter-app Communication
Dueling Banjos: Inter-app Communication Dueling Banjos: Inter-app Communication
Dueling Banjos: Inter-app Communication
 
Beginning i os part 2 sam kirchmeier
Beginning i os part 2   sam kirchmeierBeginning i os part 2   sam kirchmeier
Beginning i os part 2 sam kirchmeier
 
Bannin mobile march_2012_public
Bannin mobile march_2012_publicBannin mobile march_2012_public
Bannin mobile march_2012_public
 
Mobile marketing meltdown
Mobile marketing meltdownMobile marketing meltdown
Mobile marketing meltdown
 
Mobile march2012 android101-pt1
Mobile march2012 android101-pt1Mobile march2012 android101-pt1
Mobile march2012 android101-pt1
 
Beatles&webdesign
Beatles&webdesignBeatles&webdesign
Beatles&webdesign
 
Kalimantan utara
Kalimantan utaraKalimantan utara
Kalimantan utara
 
Building Wearables-Kristina Durivage
Building Wearables-Kristina DurivageBuilding Wearables-Kristina Durivage
Building Wearables-Kristina Durivage
 
LiveCode Cross-Platform Development-Joel Gerdeen
LiveCode Cross-Platform Development-Joel GerdeenLiveCode Cross-Platform Development-Joel Gerdeen
LiveCode Cross-Platform Development-Joel Gerdeen
 

Similar a From Zero to App: Windows Phone 7 Development

Presentation design - key concepts and approaches for designing your deskto...
Presentation   design - key concepts and approaches for designing your deskto...Presentation   design - key concepts and approaches for designing your deskto...
Presentation design - key concepts and approaches for designing your deskto...xKinAnx
 
Develop business apps cross-platform development using visual studio with x...
Develop business apps   cross-platform development using visual studio with x...Develop business apps   cross-platform development using visual studio with x...
Develop business apps cross-platform development using visual studio with x...Alexander Meijers
 
Discovering the wp8 sdk
Discovering the wp8 sdkDiscovering the wp8 sdk
Discovering the wp8 sdkNico Vermeir
 
Kony one studio technical training
Kony one studio technical trainingKony one studio technical training
Kony one studio technical trainingNiranjan Kumar Reddy
 
Platform guidance for Microsoft .NET Technology
Platform guidance for Microsoft .NET TechnologyPlatform guidance for Microsoft .NET Technology
Platform guidance for Microsoft .NET TechnologyLohith Goudagere Nagaraj
 
01 introducing the windows phone 8.1
01   introducing the windows phone 8.101   introducing the windows phone 8.1
01 introducing the windows phone 8.1WindowsPhoneRocks
 
Codestrong 2012 breakout session introduction to mobile web and best practices
Codestrong 2012 breakout session   introduction to mobile web and best practicesCodestrong 2012 breakout session   introduction to mobile web and best practices
Codestrong 2012 breakout session introduction to mobile web and best practicesAxway Appcelerator
 
Real World Architectures Using Windows Azure Mobile Services
Real World Architectures Using Windows Azure Mobile ServicesReal World Architectures Using Windows Azure Mobile Services
Real World Architectures Using Windows Azure Mobile ServicesKristof Rennen
 
An Open Source Workbench for Prototyping Multimodal Interactions Based on Off...
An Open Source Workbench for Prototyping Multimodal Interactions Based on Off...An Open Source Workbench for Prototyping Multimodal Interactions Based on Off...
An Open Source Workbench for Prototyping Multimodal Interactions Based on Off...Jean Vanderdonckt
 
DevTeach Ottawa - Silverlight5 and HTML5
DevTeach Ottawa - Silverlight5 and HTML5DevTeach Ottawa - Silverlight5 and HTML5
DevTeach Ottawa - Silverlight5 and HTML5Frédéric Harper
 
Windows 8 DevUnleashed - Session 1
Windows 8 DevUnleashed - Session 1Windows 8 DevUnleashed - Session 1
Windows 8 DevUnleashed - Session 1drudolph11
 
What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015Fons Sonnemans
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsDevelopment Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsRomin Irani
 
Building apps for WP8 and Win8
Building apps for WP8 and Win8Building apps for WP8 and Win8
Building apps for WP8 and Win8Laurent Duveau
 
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Ryan Cuprak
 
Frokost seminar windows 8 februar 2013
Frokost seminar   windows 8 februar 2013Frokost seminar   windows 8 februar 2013
Frokost seminar windows 8 februar 2013Olav Tvedt
 
Android operating system
Android operating systemAndroid operating system
Android operating systemDev Savalia
 

Similar a From Zero to App: Windows Phone 7 Development (20)

Presentation design - key concepts and approaches for designing your deskto...
Presentation   design - key concepts and approaches for designing your deskto...Presentation   design - key concepts and approaches for designing your deskto...
Presentation design - key concepts and approaches for designing your deskto...
 
Develop business apps cross-platform development using visual studio with x...
Develop business apps   cross-platform development using visual studio with x...Develop business apps   cross-platform development using visual studio with x...
Develop business apps cross-platform development using visual studio with x...
 
Discovering the wp8 sdk
Discovering the wp8 sdkDiscovering the wp8 sdk
Discovering the wp8 sdk
 
Kony one studio technical training
Kony one studio technical trainingKony one studio technical training
Kony one studio technical training
 
Platform guidance for Microsoft .NET Technology
Platform guidance for Microsoft .NET TechnologyPlatform guidance for Microsoft .NET Technology
Platform guidance for Microsoft .NET Technology
 
01 introducing the windows phone 8.1
01   introducing the windows phone 8.101   introducing the windows phone 8.1
01 introducing the windows phone 8.1
 
Codestrong 2012 breakout session introduction to mobile web and best practices
Codestrong 2012 breakout session   introduction to mobile web and best practicesCodestrong 2012 breakout session   introduction to mobile web and best practices
Codestrong 2012 breakout session introduction to mobile web and best practices
 
Real World Architectures Using Windows Azure Mobile Services
Real World Architectures Using Windows Azure Mobile ServicesReal World Architectures Using Windows Azure Mobile Services
Real World Architectures Using Windows Azure Mobile Services
 
1. course introduction
1. course introduction1. course introduction
1. course introduction
 
An Open Source Workbench for Prototyping Multimodal Interactions Based on Off...
An Open Source Workbench for Prototyping Multimodal Interactions Based on Off...An Open Source Workbench for Prototyping Multimodal Interactions Based on Off...
An Open Source Workbench for Prototyping Multimodal Interactions Based on Off...
 
DevTeach Ottawa - Silverlight5 and HTML5
DevTeach Ottawa - Silverlight5 and HTML5DevTeach Ottawa - Silverlight5 and HTML5
DevTeach Ottawa - Silverlight5 and HTML5
 
Windows 8 DevUnleashed - Session 1
Windows 8 DevUnleashed - Session 1Windows 8 DevUnleashed - Session 1
Windows 8 DevUnleashed - Session 1
 
What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsDevelopment Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElements
 
Moving from Device Centric to a User Centric Management
Moving from Device Centric to a User Centric Management Moving from Device Centric to a User Centric Management
Moving from Device Centric to a User Centric Management
 
Building apps for WP8 and Win8
Building apps for WP8 and Win8Building apps for WP8 and Win8
Building apps for WP8 and Win8
 
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
 
Frokost seminar windows 8 februar 2013
Frokost seminar   windows 8 februar 2013Frokost seminar   windows 8 februar 2013
Frokost seminar windows 8 februar 2013
 
Android operating system
Android operating systemAndroid operating system
Android operating system
 
Android Introduction
Android IntroductionAndroid Introduction
Android Introduction
 

Más de Mobile March

You Can’t Ignore the Tablet-Designing & Developing Universal Apps for Phones ...
You Can’t Ignore the Tablet-Designing & Developing Universal Apps for Phones ...You Can’t Ignore the Tablet-Designing & Developing Universal Apps for Phones ...
You Can’t Ignore the Tablet-Designing & Developing Universal Apps for Phones ...Mobile March
 
The Blossoming Internet of Things Zach Supalla-Spark
The Blossoming Internet of Things Zach Supalla-SparkThe Blossoming Internet of Things Zach Supalla-Spark
The Blossoming Internet of Things Zach Supalla-SparkMobile March
 
Unity-Beyond Games! - Josh Ruis
Unity-Beyond Games! - Josh RuisUnity-Beyond Games! - Josh Ruis
Unity-Beyond Games! - Josh RuisMobile March
 
IP for Mobile Startups -Ernest Grumbles
IP for Mobile Startups -Ernest GrumblesIP for Mobile Startups -Ernest Grumbles
IP for Mobile Startups -Ernest GrumblesMobile March
 
Introduction to Core Data - Jason Shapiro
Introduction to Core Data - Jason ShapiroIntroduction to Core Data - Jason Shapiro
Introduction to Core Data - Jason ShapiroMobile March
 
Developing Custom iOs Applications for Enterprise
Developing Custom iOs Applications for EnterpriseDeveloping Custom iOs Applications for Enterprise
Developing Custom iOs Applications for EnterpriseMobile March
 
Product Management for Your App
Product Management for Your AppProduct Management for Your App
Product Management for Your AppMobile March
 
Guy Thier Keynote Presentation
Guy Thier Keynote PresentationGuy Thier Keynote Presentation
Guy Thier Keynote PresentationMobile March
 
Mobile March Olson presentation 2012
Mobile March Olson presentation 2012Mobile March Olson presentation 2012
Mobile March Olson presentation 2012Mobile March
 
Beginningi os part1-bobmccune
Beginningi os part1-bobmccuneBeginningi os part1-bobmccune
Beginningi os part1-bobmccuneMobile March
 
Mobile march2012 android101-pt2
Mobile march2012 android101-pt2Mobile march2012 android101-pt2
Mobile march2012 android101-pt2Mobile March
 
Android ui patterns
Android ui patternsAndroid ui patterns
Android ui patternsMobile March
 
Automated interactive testing for i os
Automated interactive testing for i osAutomated interactive testing for i os
Automated interactive testing for i osMobile March
 
Olson mobile march presentation 2012 03-16
Olson mobile march presentation 2012 03-16Olson mobile march presentation 2012 03-16
Olson mobile march presentation 2012 03-16Mobile March
 

Más de Mobile March (15)

You Can’t Ignore the Tablet-Designing & Developing Universal Apps for Phones ...
You Can’t Ignore the Tablet-Designing & Developing Universal Apps for Phones ...You Can’t Ignore the Tablet-Designing & Developing Universal Apps for Phones ...
You Can’t Ignore the Tablet-Designing & Developing Universal Apps for Phones ...
 
The Blossoming Internet of Things Zach Supalla-Spark
The Blossoming Internet of Things Zach Supalla-SparkThe Blossoming Internet of Things Zach Supalla-Spark
The Blossoming Internet of Things Zach Supalla-Spark
 
Unity-Beyond Games! - Josh Ruis
Unity-Beyond Games! - Josh RuisUnity-Beyond Games! - Josh Ruis
Unity-Beyond Games! - Josh Ruis
 
IP for Mobile Startups -Ernest Grumbles
IP for Mobile Startups -Ernest GrumblesIP for Mobile Startups -Ernest Grumbles
IP for Mobile Startups -Ernest Grumbles
 
Introduction to Core Data - Jason Shapiro
Introduction to Core Data - Jason ShapiroIntroduction to Core Data - Jason Shapiro
Introduction to Core Data - Jason Shapiro
 
Developing Custom iOs Applications for Enterprise
Developing Custom iOs Applications for EnterpriseDeveloping Custom iOs Applications for Enterprise
Developing Custom iOs Applications for Enterprise
 
Product Management for Your App
Product Management for Your AppProduct Management for Your App
Product Management for Your App
 
Robotium Tutorial
Robotium TutorialRobotium Tutorial
Robotium Tutorial
 
Guy Thier Keynote Presentation
Guy Thier Keynote PresentationGuy Thier Keynote Presentation
Guy Thier Keynote Presentation
 
Mobile March Olson presentation 2012
Mobile March Olson presentation 2012Mobile March Olson presentation 2012
Mobile March Olson presentation 2012
 
Beginningi os part1-bobmccune
Beginningi os part1-bobmccuneBeginningi os part1-bobmccune
Beginningi os part1-bobmccune
 
Mobile march2012 android101-pt2
Mobile march2012 android101-pt2Mobile march2012 android101-pt2
Mobile march2012 android101-pt2
 
Android ui patterns
Android ui patternsAndroid ui patterns
Android ui patterns
 
Automated interactive testing for i os
Automated interactive testing for i osAutomated interactive testing for i os
Automated interactive testing for i os
 
Olson mobile march presentation 2012 03-16
Olson mobile march presentation 2012 03-16Olson mobile march presentation 2012 03-16
Olson mobile march presentation 2012 03-16
 

Último

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 

Último (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

From Zero to App: Windows Phone 7 Development

  • 1. Windows Phone 7 from zero to app Damon Allison 3/17/2012
  • 2. Agenda • Make an app - todo list. • Highlight WP7’s strengths • UI => Binding => Data => Shell => Tools • Beyond WP7 : Windows Phone Roadmap
  • 3. UI • Frames : panoramic | pivot | app bar • XAML == HTML | CSS | Box Model • Resources • Styles | Templates : CSS in HTML • User Controls
  • 4. Binding • Binding paths | syntax. • ObservableCollection<T> • INotifyPropertyChanged • Field Validation | Data Converters
  • 5. Data • LINQ => SQL • DataContext • Versioning : DatabaseUpdateSchema
  • 6. Environment • Live Tiles | Secondary Tiles • Backgrounding • Trial Mode
  • 8. WP8 Roadmap • Hardware : “Scale and Choice” • 4 screen resolutions | multicore | removable SD | NFC • Software: • Win8 kernel (not CE) | silverlight backwards compatibility | WinRT (?) • Ecosystem • Zune gone | Skydrive integration | alignment w/ Windows 8 (store / services / etc?)
  • 9. Weaknesses • Market Share • Cross app communication • Bluetooth API • Office integration doesn’t exist (nor file viewers)

Notas del editor

  1. This presentation covers the strengths of the Windows Phone 7 platform when compared with Android and iOS. It is not an exhaustive talk on Windows Phone 7 (i.e., it won&amp;#x2019;t show you how to drop a browser control on your app or listen to accelerometer events), but it will give you a sense of how the WP7 platform compares to it&amp;#x2019;s competition.\n\n\n\n
  2. In this talk, we will walk through a sample MVVM based application, focusing on the various applications layers. We then discuss Windows Phone 7 platform &amp;#x201C;shell&amp;#x201D; - the operating system features that we can use to integrate our application into the rest of the Windows Phone 7 OS. We also look into the platform tools, including the application profiler and the marketplace test tool. We conclude by looking at the roadmap of WP7, how it plays into Windows 8, and general direction that has been leaked in the press regarding Windows Phone 8.\n
  3. From Visual Studio 2010, create a new data binding application.\n\nWindows Phone 7 is based on Silverlight - therefore it uses the same XAML based layout engine that is found in Silverlight and WPF. When designing XAML, you should have the mindset of an HTML developer - create the layout and data elements, use styles that are defined in resource files (i.e., CSS), and have the code-behind files control the interaction between the rest of the system and the UI (i.e., javascript).\n\nWindows Phone 7 has a box model (padding, margin) and layout is relative to it&amp;#x2019;s parent controls (think HTML).\n\nDynamic layout in iOS is a real pain. Creating a &amp;#x201C;grid&amp;#x201D; in iOS results in reams of hand written layout code. From the new data binding application, lengthen the text and illustrate the simplicity of dynamic layout.\n\n* Remove Height property on listBox - show dynamic layout\n* Add TextTrimming=Trim in title (show truncation).\n\nResources \n\nResources are containers at the application and page layers that we can use to put templates and other state that can be reused. Resources can include styles, strings, or any other object we would like.\n\nStyles | Templates\n\nSimilar to CSS, we can define styles that we can reuse across controls. We can also define templates (i.e., the layout of a listbox) that can be reused across multiple controls. iOS has no concept of control styling.\n\n \n \n\n\n
  4. Binding allows us to link two objects together. In Windows Phone 7, any &amp;#x201C;DependencyProperty&amp;#x201D; on a UI control can be bound to a property on another object. For example, we can bind the TextBox &amp;#x201C;Text&amp;#x201D; property to a &amp;#x201C;FirstName&amp;#x201D; property on a &amp;#x201C;Person&amp;#x201D; object.\n\nEstablishing a binding relationship only takes a few steps:\n\n1. Create an object that implements INotifyPropertyChanged. For lists, use ObservableCollection&lt;T&gt;. The binding infrastructure uses the INotifyPropertyChanged event to update the other side of the binding relationship.\n2. Assign a &amp;#x201C;DataContext&amp;#x201D; of a UI element to the object. Note that DataContext cascades the object tree. A UI element will inherit the DataContext of it&amp;#x2019;s parent element if it&amp;#x2019;s DataContext property is not set.\n3. Set the &amp;#x201C;binding&amp;#x201D; property of a UI control to point to a property of the object in the data context.\n\n* Property Path: allows you to bind to nested properties.\n* Mode = OneWay (default), TwoWay, OneTime\n\nValidators and Converters:\n\nValidators allow us to validate and convert data. By specifying a validator on the binding relationship, the validator will validate the value prior to assigning it to the other side of the binding relationship.\nConverts allow us to convert the binding value when going to/from it&amp;#x2019;s original value. For example, a DateTime object can be converted to a custom string format when being presented to the UI and is converted from the custom string format when being sent back to the data source.\n\n\n
  5. LINQ is a powerful language feature of C# that allows you to write queries against an object model. For example, using LINQ, we can filter and sort a collection using a custom predicate function (for filtering) and a custom comparator (for sorting). \n\nLINQ to SQL is an ORM tool that allows us to define classes that represent data and gives us the ability to query into the database via LINQ queries. \n\nLINQ to SQL cliff notes:\n\n1. Create a class attributed with [Table]. Create properties attributed with [Column].\n2. Create a DataContext that includes those tables.\n3. Write queries that use the DataContext to do CRUD operations against the tables.\n\n\nVersioning:\n\nWP7 provides a &amp;#x201C;DatabaseUpdateSchema&amp;#x201D; object which allows us to add tables and/or columns to an existing database. It also has a &amp;#x201C;Version&amp;#x201D; property that we can use to determine and change the database version.\n\nWarning:\n\nBy default, all objects obtained through a DataContext are tracked. Thus, when you call a &amp;#x201C;save&amp;#x201D; on the DataContext, all objects retrieved from the context will be updated in the database. You want to ensure only the objects you *want* updated are actually updated. Create a &amp;#x201C;write&amp;#x201D; data context that you use to retrieve and save only the objects you want. \n
  6. * Shell Tiles :\n\nShell Tiles (live tiles) are really simple to implement. You can create a shell tile that has a URI pointed to a specific page in your application (MS calls this &amp;#x201C;deep linking&amp;#x201D;).\nYou can also set properties for both sides of the tile - the OS will flip the tile automatically - you can&amp;#x2019;t control the flip schedule.\n\n* Application Tiles | Secondary Tiles\n* Front | back w/ no animation.\n* In WMAppManifest.xml : the token property is what controls the main app tile (it&amp;#x2019;s a template).\n* Double wide tiles (TemplateType6) are only available to Microsoft.\n* Could update from a background task (weather | news | poll server | etc)...\n* Secondary tile : only one tile per time | URI must be unique | User taken to homepage.\n\n* Backgrounding\n* Background agent.\n* http://msdn.microsoft.com/en-us/library/hh202962(v=vs.92).aspx\n\n* Trial Mode\n* iOS and Android sorely need this functionality.\n* There is a simple &amp;#x201C;IsTrial&amp;#x201D; property that is set when the app is downloaded in trial mode. Use this flag to change the app&amp;#x2019;s functionality appropriately.\n* IsTrial will only be set properly after deployed to the marketplace.\n* Use a #if DEBUG flag to set IsTrial to true during development to test trial mode.\n\n\n\n\n
  7. Profiler:\n\n* Very scaled down version of Apple&amp;#x2019;s instruments program. \n* Instruments is much better because it is real time and the statistics you can gather are *much* better.\n* You can at least drill into the call stack and see where the application is slow.\n\nMarketplace Test Kit:\n\n* A very basic set of automated (and manual) tests you can run before submitting to the Marketplace which verifies your application for known marketplace metrics.\n\n
  8. Windows Phone 8 is gearing up to be a pretty big overhaul. The overall goal of WP8 seems to be aligning WP with Win8. The underlying library stack may change to WinRT, however MS is promising silverlight backwards compatibility. (They really have to provide backward compatibility or they would cut off all apps in their store). \n\nThe ecosystem is going to change. Zune will die, skydrive will become more integrated.\n\n\n
  9. WP7 Marketshare is really low (estimates place it at 2% of the market). \nObviously Microsoft will be making a play to improve Windows Phone marketshare by aligning it with Windows 8 and more hardware should start to become available.\n\nThey do not offer bluetooth support - Android is by far the best at Bluetooth support - going so far as implementing some protocols (Continua for healthcare devices).\n\nOffice and Windows &amp;#x201C;back office&amp;#x201D; integration is sorely hurting - they obviously tried to position this at the consumer market.\n\n