SlideShare a Scribd company logo
A Developer's View of Windows
8


Andrei Marukovich
andrei.marukovich@lunarfrog.com
@taggedfrog
Agenda
• Developing for Classic Desktop
• Introduction to Metro UI
• Building Metro applications




                                   2
Is .NET dead?



                vs




                     3
Windows 8 platform

                                               HTML /
                                     C# / VB     JS
                                                          C / C++
                                                  or
                                                 SL
     Metro-style APIs

                                       CLR     Internet
                                                          Win32
                                               Explorer


                 Windows Kernel Services




                                                                    4
.NET 4.5 Framework
• Pre-installed in Windows 8
• Windows XP is not supported
• Use 4.0 runtime (same as 3.5 use 2.0 RT)




                                             5
Asynchronous development
• New data structures
• New async APIs
• New keywords in C# and VB
  • async
  • await




                              6
Demo
Async and Await




                  7
If it runs on a Windows 7,
it'll run on Windows 8 PC




                             8
Demo
 Metro UI




            9
App suspension
• Inactive apps are suspended by the OS:
  • Apps remain in memory
  • No CPU, Disk or Network consumed
  • All threads are suspended




                                           10
App lifecycle states


      Not started      Running



                                 Suspending



                    Suspended




                                              11
Demo
App lifecycle




                12
Windows 8 platform

                                                       HTML /
                                             C# / VB     JS
                Languages                                         C / C++
                                                          or
                                                         SL

                WinRT APIs
                                               CLR     Internet
Communication   Graphics/Media   Devices                          Win32
                                                       Explorer
            Application Model

                         Windows Kernel Services




                                                                        13
WinRT
• Object-oriented Win32 replacement
• Native, written in C++
• Based on COM
• .NET-like metadata
• Any language can be used to extend it
• Async everywhere (50ms rule)


                                          14
Windows 8 platform

HTML / CSS        DirectX          XAML                     HTML /
                                                  C# / VB     JS
                                                                       C / C++
 JavaScript                          C# / VB                   or
                    C / C++
IE 10 Engine                           CLR                    SL

                  WinRT APIs
                                                    CLR     Internet
Communication     Graphics/Media     Devices                           Win32
                                                            Explorer
               Application Model

                              Windows Kernel Services




                                                                             15
.NET Metro profile
• Subset of Client Profile
  •   No Remoting
  •   No System.Data
  •   No System.Web
  •   No private reflection, no Emit
  •   Some APIs replaced with async versions
  •   Some .NET classes moved to WinRT




                                               16
XAML for Metro
• New variation of XAML, close to Silverlight
• Standard controls
  • Button, TextBox, ComboBox, CheckBox, etc.
• New controls
  •   ProgressRing
  •   FlipView
  •   GridView
  •   ListView

                                                17
Demo
• Image Browser
  • Scans Pictures library and shows all the
    keywords
  • Allows to select a keyword
  • Shows all the images for the keyword
• Snapping
• Search integration
• FilePicker integration

                                               18
Demo
Developing Windows 8 apps




                            19
App packaging
                    • .appx file format (zip)

   Files / Assets
                    • Compiled app and
                      resources
                    • App Manifest
 AppXManifest.xml
                    • BlockMap
    BlockMap
                    • Digital signature
    Signature

   .appx package


                                                20
Installation
• Declarative approach
• Everything installed in one folder
• Installation is on per-user basis
  • Installation for first user
  • Registration for the next
• No custom actions
• Automatic updates

                                       21
How to start
• Main start point: http://dev.windows.com/
  •   Samples
  •   Metro style app reference and APIs
  •   Forums
  •   Windows 8 Developer Preview with developer
      tools (x64)


• Installation on a VM
  • VirtualBox 4.1.2+
  • VMware Workstation 8.0+
  • Hyper-V                                    22
Links
• BUILD conference videos
  • http://channel9.msdn.com/Events/BUILD/BUILD2011
  • 8 Traits of Great Metro Style Apps (Jensen Harris)



• Building Windows 8 blog
  • http://blogs.msdn.com/b/b8/




                                                         23
Q&A
lunarfrog.com/blog
  @taggedfrog




                     24
Thank you!


             25

More Related Content

What's hot

Microsoft .Net Framework
Microsoft .Net FrameworkMicrosoft .Net Framework
Microsoft .Net Framework
Rohit Rao
 
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Ken Cenerelli
 
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Ken Cenerelli
 
How to modernise WPF and Windows Forms applications with Windows Apps SDK
How to modernise WPF and Windows Forms applications with Windows Apps SDKHow to modernise WPF and Windows Forms applications with Windows Apps SDK
How to modernise WPF and Windows Forms applications with Windows Apps SDK
Mirco Vanini
 
C++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - OverviewC++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - Overview
Mirco Vanini
 
Deep Dive into WinRT
Deep Dive into WinRTDeep Dive into WinRT
Deep Dive into WinRT
Sasha Goldshtein
 
Best DotNet Training in Delhi
Best   DotNet Training  in DelhiBest   DotNet Training  in Delhi
Best DotNet Training in Delhi
Information Technology
 

What's hot (7)

Microsoft .Net Framework
Microsoft .Net FrameworkMicrosoft .Net Framework
Microsoft .Net Framework
 
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
 
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
 
How to modernise WPF and Windows Forms applications with Windows Apps SDK
How to modernise WPF and Windows Forms applications with Windows Apps SDKHow to modernise WPF and Windows Forms applications with Windows Apps SDK
How to modernise WPF and Windows Forms applications with Windows Apps SDK
 
C++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - OverviewC++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - Overview
 
Deep Dive into WinRT
Deep Dive into WinRTDeep Dive into WinRT
Deep Dive into WinRT
 
Best DotNet Training in Delhi
Best   DotNet Training  in DelhiBest   DotNet Training  in Delhi
Best DotNet Training in Delhi
 

Viewers also liked

Решения для агропромышленных предприятий
Решения для агропромышленных предприятийРешения для агропромышленных предприятий
Решения для агропромышленных предприятийsystemgroups
 
Sharonov paper
Sharonov paperSharonov paper
All about data persistence in Windows 8
All about data persistence in Windows 8All about data persistence in Windows 8
All about data persistence in Windows 8
Andrei Marukovich
 
Deceptive simplicity of async and await
Deceptive simplicity of async and awaitDeceptive simplicity of async and await
Deceptive simplicity of async and await
Andrei Marukovich
 
м.а. шаронов к вопросу о моделировании когнитивных функций при проектировании...
м.а. шаронов к вопросу о моделировании когнитивных функций при проектировании...м.а. шаронов к вопросу о моделировании когнитивных функций при проектировании...
м.а. шаронов к вопросу о моделировании когнитивных функций при проектировании...Павел Барышников
 
Easter sunday 2013 [compatibility mode]
Easter sunday 2013 [compatibility mode]Easter sunday 2013 [compatibility mode]
Easter sunday 2013 [compatibility mode]
Theresia Frida
 
П.Н. Барышников Философия It и мифы современного университета
П.Н. Барышников Философия It и мифы современного университетаП.Н. Барышников Философия It и мифы современного университета
П.Н. Барышников Философия It и мифы современного университетаПавел Барышников
 
Battlegraph
BattlegraphBattlegraph
Battlegraph
Tania Rivera
 
Reactive Extensions for .NET
Reactive Extensions for .NETReactive Extensions for .NET
Reactive Extensions for .NET
Andrei Marukovich
 
иллюзия субъективного опыта или отсутствующее сознание
иллюзия субъективного опыта или отсутствующее сознаниеиллюзия субъективного опыта или отсутствующее сознание
иллюзия субъективного опыта или отсутствующее сознание
Павел Барышников
 
Kỹ thuật lập trình (khoa toán tin học)
Kỹ thuật lập trình (khoa toán tin học)Kỹ thuật lập trình (khoa toán tin học)
Kỹ thuật lập trình (khoa toán tin học)nhok_lovely
 
ATDD in practice
ATDD in practiceATDD in practice
ATDD in practice
Andrei Marukovich
 
Решения для металлургии
Решения для металлургииРешения для металлургии
Решения для металлургииsystemgroups
 
The Differences in Attitude toward Education in UK and HK
The Differences in Attitude toward Education in UK and HKThe Differences in Attitude toward Education in UK and HK
The Differences in Attitude toward Education in UK and HK
conteura
 
Using NuGet libraries in your application
Using NuGet libraries in your applicationUsing NuGet libraries in your application
Using NuGet libraries in your application
Andrei Marukovich
 
Open Source Libraries for.NET developers
Open Source Libraries for.NET developersOpen Source Libraries for.NET developers
Open Source Libraries for.NET developers
Andrei Marukovich
 
Intro and History of Account Planning
Intro and History of Account PlanningIntro and History of Account Planning
Intro and History of Account Planning
Corrie Wilder
 

Viewers also liked (17)

Решения для агропромышленных предприятий
Решения для агропромышленных предприятийРешения для агропромышленных предприятий
Решения для агропромышленных предприятий
 
Sharonov paper
Sharonov paperSharonov paper
Sharonov paper
 
All about data persistence in Windows 8
All about data persistence in Windows 8All about data persistence in Windows 8
All about data persistence in Windows 8
 
Deceptive simplicity of async and await
Deceptive simplicity of async and awaitDeceptive simplicity of async and await
Deceptive simplicity of async and await
 
м.а. шаронов к вопросу о моделировании когнитивных функций при проектировании...
м.а. шаронов к вопросу о моделировании когнитивных функций при проектировании...м.а. шаронов к вопросу о моделировании когнитивных функций при проектировании...
м.а. шаронов к вопросу о моделировании когнитивных функций при проектировании...
 
Easter sunday 2013 [compatibility mode]
Easter sunday 2013 [compatibility mode]Easter sunday 2013 [compatibility mode]
Easter sunday 2013 [compatibility mode]
 
П.Н. Барышников Философия It и мифы современного университета
П.Н. Барышников Философия It и мифы современного университетаП.Н. Барышников Философия It и мифы современного университета
П.Н. Барышников Философия It и мифы современного университета
 
Battlegraph
BattlegraphBattlegraph
Battlegraph
 
Reactive Extensions for .NET
Reactive Extensions for .NETReactive Extensions for .NET
Reactive Extensions for .NET
 
иллюзия субъективного опыта или отсутствующее сознание
иллюзия субъективного опыта или отсутствующее сознаниеиллюзия субъективного опыта или отсутствующее сознание
иллюзия субъективного опыта или отсутствующее сознание
 
Kỹ thuật lập trình (khoa toán tin học)
Kỹ thuật lập trình (khoa toán tin học)Kỹ thuật lập trình (khoa toán tin học)
Kỹ thuật lập trình (khoa toán tin học)
 
ATDD in practice
ATDD in practiceATDD in practice
ATDD in practice
 
Решения для металлургии
Решения для металлургииРешения для металлургии
Решения для металлургии
 
The Differences in Attitude toward Education in UK and HK
The Differences in Attitude toward Education in UK and HKThe Differences in Attitude toward Education in UK and HK
The Differences in Attitude toward Education in UK and HK
 
Using NuGet libraries in your application
Using NuGet libraries in your applicationUsing NuGet libraries in your application
Using NuGet libraries in your application
 
Open Source Libraries for.NET developers
Open Source Libraries for.NET developersOpen Source Libraries for.NET developers
Open Source Libraries for.NET developers
 
Intro and History of Account Planning
Intro and History of Account PlanningIntro and History of Account Planning
Intro and History of Account Planning
 

Similar to A Developer's View of Windows 8

Windows 8 Development Stack
Windows 8 Development StackWindows 8 Development Stack
Windows 8 Development Stack
Dev2
 
Win rt fundamentals
Win rt fundamentalsWin rt fundamentals
Win rt fundamentals
Kevin Stumpf
 
Windows 8 developer preview
Windows 8 developer previewWindows 8 developer preview
Windows 8 developer preview
Whisnu Sucitanuary
 
Introduction to Metro Applications
Introduction to Metro ApplicationsIntroduction to Metro Applications
Introduction to Metro Applications
Michael Collins
 
Windows 8
Windows 8Windows 8
Windows 8
Robert MacLean
 
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Gabriel Villa
 
Geek a-paloozaaa metro-xaml_appdev
Geek a-paloozaaa metro-xaml_appdevGeek a-paloozaaa metro-xaml_appdev
Geek a-paloozaaa metro-xaml_appdev
Jose Luis Latorre Millas
 
Introduction to building apps for windows 8
Introduction to building apps for windows 8Introduction to building apps for windows 8
Introduction to building apps for windows 8
Khalil Saleem
 
Windows 8 and the cloud a match made in heaven
Windows 8 and the cloud a match made in heavenWindows 8 and the cloud a match made in heaven
Windows 8 and the cloud a match made in heaven
Noam Sheffer
 
Dot net Online Training | .Net Training and Placement online
Dot net Online Training | .Net Training and Placement onlineDot net Online Training | .Net Training and Placement online
Dot net Online Training | .Net Training and Placement online
Garuda Trainings
 
Windows 8 App Developer Day
Windows 8 App Developer DayWindows 8 App Developer Day
Windows 8 App Developer Day
Patric Boscolo
 
Porting tometro
Porting tometroPorting tometro
Porting tometro
dogra09
 
Eco system apps
Eco system appsEco system apps
Eco system apps
Sergey Seletsky
 
.Net + novas tecnologias + win8
.Net + novas tecnologias + win8.Net + novas tecnologias + win8
.Net + novas tecnologias + win8
Ricardo Guerra Freitas
 
Building apps with common code for windows 8 and windows phone 8 (WP8)
Building apps with common code for windows 8 and windows phone 8 (WP8)Building apps with common code for windows 8 and windows phone 8 (WP8)
Building apps with common code for windows 8 and windows phone 8 (WP8)
Tamir Dresher
 
Microsoft .Net Technology
Microsoft .Net TechnologyMicrosoft .Net Technology
Microsoft .Net Technology
vijayakumari kaliannan
 
Windows 8 & JavaScript
Windows 8 & JavaScriptWindows 8 & JavaScript
Windows 8 & JavaScript
Robert MacLean
 
Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]
vaishalisahare123
 
Win8 architecture for developers
Win8 architecture for developersWin8 architecture for developers
Win8 architecture for developers
Robert MacLean
 
Keynote Rockford Lhotka on the Microsoft Development Platftorm
Keynote   Rockford Lhotka on the Microsoft Development PlatftormKeynote   Rockford Lhotka on the Microsoft Development Platftorm
Keynote Rockford Lhotka on the Microsoft Development Platftorm
Code Mastery
 

Similar to A Developer's View of Windows 8 (20)

Windows 8 Development Stack
Windows 8 Development StackWindows 8 Development Stack
Windows 8 Development Stack
 
Win rt fundamentals
Win rt fundamentalsWin rt fundamentals
Win rt fundamentals
 
Windows 8 developer preview
Windows 8 developer previewWindows 8 developer preview
Windows 8 developer preview
 
Introduction to Metro Applications
Introduction to Metro ApplicationsIntroduction to Metro Applications
Introduction to Metro Applications
 
Windows 8
Windows 8Windows 8
Windows 8
 
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
 
Geek a-paloozaaa metro-xaml_appdev
Geek a-paloozaaa metro-xaml_appdevGeek a-paloozaaa metro-xaml_appdev
Geek a-paloozaaa metro-xaml_appdev
 
Introduction to building apps for windows 8
Introduction to building apps for windows 8Introduction to building apps for windows 8
Introduction to building apps for windows 8
 
Windows 8 and the cloud a match made in heaven
Windows 8 and the cloud a match made in heavenWindows 8 and the cloud a match made in heaven
Windows 8 and the cloud a match made in heaven
 
Dot net Online Training | .Net Training and Placement online
Dot net Online Training | .Net Training and Placement onlineDot net Online Training | .Net Training and Placement online
Dot net Online Training | .Net Training and Placement online
 
Windows 8 App Developer Day
Windows 8 App Developer DayWindows 8 App Developer Day
Windows 8 App Developer Day
 
Porting tometro
Porting tometroPorting tometro
Porting tometro
 
Eco system apps
Eco system appsEco system apps
Eco system apps
 
.Net + novas tecnologias + win8
.Net + novas tecnologias + win8.Net + novas tecnologias + win8
.Net + novas tecnologias + win8
 
Building apps with common code for windows 8 and windows phone 8 (WP8)
Building apps with common code for windows 8 and windows phone 8 (WP8)Building apps with common code for windows 8 and windows phone 8 (WP8)
Building apps with common code for windows 8 and windows phone 8 (WP8)
 
Microsoft .Net Technology
Microsoft .Net TechnologyMicrosoft .Net Technology
Microsoft .Net Technology
 
Windows 8 & JavaScript
Windows 8 & JavaScriptWindows 8 & JavaScript
Windows 8 & JavaScript
 
Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]
 
Win8 architecture for developers
Win8 architecture for developersWin8 architecture for developers
Win8 architecture for developers
 
Keynote Rockford Lhotka on the Microsoft Development Platftorm
Keynote   Rockford Lhotka on the Microsoft Development PlatftormKeynote   Rockford Lhotka on the Microsoft Development Platftorm
Keynote Rockford Lhotka on the Microsoft Development Platftorm
 

Recently uploaded

Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
Pravash Chandra Das
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
dbms calicut university B. sc Cs 4th sem.pdf
dbms  calicut university B. sc Cs 4th sem.pdfdbms  calicut university B. sc Cs 4th sem.pdf
dbms calicut university B. sc Cs 4th sem.pdf
Shinana2
 

Recently uploaded (20)

Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
dbms calicut university B. sc Cs 4th sem.pdf
dbms  calicut university B. sc Cs 4th sem.pdfdbms  calicut university B. sc Cs 4th sem.pdf
dbms calicut university B. sc Cs 4th sem.pdf
 

A Developer's View of Windows 8

  • 1. A Developer's View of Windows 8 Andrei Marukovich andrei.marukovich@lunarfrog.com @taggedfrog
  • 2. Agenda • Developing for Classic Desktop • Introduction to Metro UI • Building Metro applications 2
  • 4. Windows 8 platform HTML / C# / VB JS C / C++ or SL Metro-style APIs CLR Internet Win32 Explorer Windows Kernel Services 4
  • 5. .NET 4.5 Framework • Pre-installed in Windows 8 • Windows XP is not supported • Use 4.0 runtime (same as 3.5 use 2.0 RT) 5
  • 6. Asynchronous development • New data structures • New async APIs • New keywords in C# and VB • async • await 6
  • 8. If it runs on a Windows 7, it'll run on Windows 8 PC 8
  • 10. App suspension • Inactive apps are suspended by the OS: • Apps remain in memory • No CPU, Disk or Network consumed • All threads are suspended 10
  • 11. App lifecycle states Not started Running Suspending Suspended 11
  • 13. Windows 8 platform HTML / C# / VB JS Languages C / C++ or SL WinRT APIs CLR Internet Communication Graphics/Media Devices Win32 Explorer Application Model Windows Kernel Services 13
  • 14. WinRT • Object-oriented Win32 replacement • Native, written in C++ • Based on COM • .NET-like metadata • Any language can be used to extend it • Async everywhere (50ms rule) 14
  • 15. Windows 8 platform HTML / CSS DirectX XAML HTML / C# / VB JS C / C++ JavaScript C# / VB or C / C++ IE 10 Engine CLR SL WinRT APIs CLR Internet Communication Graphics/Media Devices Win32 Explorer Application Model Windows Kernel Services 15
  • 16. .NET Metro profile • Subset of Client Profile • No Remoting • No System.Data • No System.Web • No private reflection, no Emit • Some APIs replaced with async versions • Some .NET classes moved to WinRT 16
  • 17. XAML for Metro • New variation of XAML, close to Silverlight • Standard controls • Button, TextBox, ComboBox, CheckBox, etc. • New controls • ProgressRing • FlipView • GridView • ListView 17
  • 18. Demo • Image Browser • Scans Pictures library and shows all the keywords • Allows to select a keyword • Shows all the images for the keyword • Snapping • Search integration • FilePicker integration 18
  • 20. App packaging • .appx file format (zip) Files / Assets • Compiled app and resources • App Manifest AppXManifest.xml • BlockMap BlockMap • Digital signature Signature .appx package 20
  • 21. Installation • Declarative approach • Everything installed in one folder • Installation is on per-user basis • Installation for first user • Registration for the next • No custom actions • Automatic updates 21
  • 22. How to start • Main start point: http://dev.windows.com/ • Samples • Metro style app reference and APIs • Forums • Windows 8 Developer Preview with developer tools (x64) • Installation on a VM • VirtualBox 4.1.2+ • VMware Workstation 8.0+ • Hyper-V 22
  • 23. Links • BUILD conference videos • http://channel9.msdn.com/Events/BUILD/BUILD2011 • 8 Traits of Great Metro Style Apps (Jensen Harris) • Building Windows 8 blog • http://blogs.msdn.com/b/b8/ 23