SlideShare uma empresa Scribd logo
1 de 25
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

Mais conteúdo relacionado

Mais procurados

Microsoft .Net Framework
Microsoft .Net FrameworkMicrosoft .Net Framework
Microsoft .Net FrameworkRohit 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 SDKMirco Vanini
 
C++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - OverviewC++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - OverviewMirco Vanini
 

Mais procurados (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
 

Destaque

Решения для агропромышленных предприятий
Решения для агропромышленных предприятийРешения для агропромышленных предприятий
Решения для агропромышленных предприятийsystemgroups
 
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 8Andrei Marukovich
 
Deceptive simplicity of async and await
Deceptive simplicity of async and awaitDeceptive simplicity of async and await
Deceptive simplicity of async and awaitAndrei 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 и мифы современного университетаПавел Барышников
 
Reactive Extensions for .NET
Reactive Extensions for .NETReactive Extensions for .NET
Reactive Extensions for .NETAndrei 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
 
Решения для металлургии
Решения для металлургииРешения для металлургии
Решения для металлургии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 HKconteura
 
Using NuGet libraries in your application
Using NuGet libraries in your applicationUsing NuGet libraries in your application
Using NuGet libraries in your applicationAndrei Marukovich
 
Open Source Libraries for.NET developers
Open Source Libraries for.NET developersOpen Source Libraries for.NET developers
Open Source Libraries for.NET developersAndrei Marukovich
 
Intro and History of Account Planning
Intro and History of Account PlanningIntro and History of Account Planning
Intro and History of Account PlanningCorrie Wilder
 

Destaque (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
 

Semelhante a A Developer's View of Windows 8

Windows 8 Development Stack
Windows 8 Development StackWindows 8 Development Stack
Windows 8 Development StackDev2
 
Win rt fundamentals
Win rt fundamentalsWin rt fundamentals
Win rt fundamentalsKevin Stumpf
 
Introduction to Metro Applications
Introduction to Metro ApplicationsIntroduction to Metro Applications
Introduction to Metro ApplicationsMichael Collins
 
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
 
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 8Khalil 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 heavenNoam 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 onlineGaruda Trainings
 
Windows 8 App Developer Day
Windows 8 App Developer DayWindows 8 App Developer Day
Windows 8 App Developer DayPatric Boscolo
 
Porting tometro
Porting tometroPorting tometro
Porting tometrodogra09
 
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
 
Windows 8 & JavaScript
Windows 8 & JavaScriptWindows 8 & JavaScript
Windows 8 & JavaScriptRobert 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 developersRobert 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 PlatftormCode Mastery
 

Semelhante a 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
 

Último

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 

Último (20)

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

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