SlideShare a Scribd company logo
http://netponto.org

Windows 8.1 with HTML5/JS
Alexandre Marreiros

44ª Reunião Presencial @ LISBOA
DateTime.Parse(“18-01-2014", new CultureInfo("pt-PT"));

hashtag #netponto
About / Contact
Alexandre Marreiros
Who
–
–
–
–
–
–

CTO @ Innovagency
Software Dev/Arch as Independent
Technical Trainer and Speaker as Independent
Technical Writer
UX Consultant
Lecturer@ EDIT

Contact
– amarreiros@gmail.com
– @alexmarreiros
– Digitalmindignition.com
Agenda
– Windows 8.1 Platform / API
– Windows 8.1 Tech view HTML 5 vs XAML
– Windows 8.1 And Windows Phone 8
– Windows 8.1 Tech view HTML
Windows 8.1 Store Apps
Windows 8.1 APIS
Windows 8.1 APIS

http://msdn.microsoft.com/en-us/library/windows/apps/bg182410.aspx
Windows 8.1 Store Apps Platform
Windows 8.1 & Windows Phone 8

http://www.bubblews.com/news/1730683-microsoft-to-combine-their-windows-8-and-windows-phone-app-stores
Windows 8.1 & Windows Phone 8

MSDN Magazine
Windows 8.1 & Windows Phone 8
Windows 8.1 & Windows Phone 8
Sharing technique

Separate UI and app logic using the Model-ViewViewModel pattern
Share functionality using Portable Class Libraries
Share code with Add as Link

Share using Windows Runtime Components

Sharing XAML UI

Conditional compilation with preprocessor directives

When to use

This guidance is applicable to many app types, but particularly to apps that have a XAML UI.
Separation allows you to write the app logic and to concentrate on user experience design
separately. An added benefit is that your app logic is more likely to be common for your app on
both platforms, and therefore is a great candidate for code sharing using the rest of the
techniques described here. Model-View-ViewModel (MVVM) is a great way to achieve this
separation.
Windows Phone 8 and Windows 8 share the same .NET Framework engine. In a XAML app, most
of your app logic will be written in managed code. If you are using the MVVM design pattern, you
have the potential to share your viewmodel and potentially your model. Note that Portable Class
Libraries are a .NET Framework concept and don’t support C++.
Use this technique for code that is non-portable and therefore can’t be implemented in a
Portable Class Library. For example, Windows Phone 8 and Windows 8 can use the common
Windows Runtime API surface to harness the power of each platform for networking, proximity,
in-app purchase, and many other features. Portable Class Libraries don’t support Windows
Runtime API. Instead, you can abstract this non-portable code, which is common to both
platforms, into a class that can be shared using Add as Link in Visual Studio. In C++ projects files
are added to projects as linked files by default.
In addition to consuming the common Windows Runtime API available on both platforms, you
can write your own Windows Runtime Component to make your functionality available in all
supported languages. This can be written in C++ and consumed by C# or VB. This is a very useful
technique for language interoperability or for when you want to write compute-intensive code in
C++ and use it in all languages.
The UI in Windows Phone 8 and Windows 8 is written in XAML. However, the XAML
implementations are not portable between the platforms. But you can isolate some of your
custom basic UI building blocks into UserControls and share those classes as linked files that will
be compiled for each platform. This technique is limited and should be used only for simple,
reusable parts of your UI. The core of your UI should be built and tailored separately for each
platform.
If you have functionality that’s implemented differently for Windows Phone 8 and Windows 8,
you can use conditional compilation to compile the code suitably for each platform. You can’t use
conditional compilation in a Portable Class Library.
Windows 8.1 & Windows Phone 8
Windows 8.1 & Windows Phone 8
Windows Phone 8

View technologies

Windows 8.1
Windows 8.1 & Windows Phone 8

WP 8 APP

W 8 APP based on
HTML 5
Windows 8.1 & Windows Phone 8
Windows 8.1 & Windows Phone 8

But today we will not talk about responsive or cross device development or pattern’s, just want that you
keep in mind that there are diferences and even if we want a ap for wp and windowa we can still use HTML
5 in Windows. Becouse even using xaml we may not have/want a total app reuse.
Windows 8.1 With HTML
“It also means that you’ll be able to leverage existing investments in JavaScript libraries and CSS
template repositories: writing a native app doesn’t force you to switch frameworks or engage in
expensive porting work. That said, it is also possible to use multiple languages to write an app,
leveraging the dynamic nature of JavaScript for app logic while leveraging languages like C# and
C++ for more computationally intensive tasks”

Kraig Brockschmidt
Windows 8.1 With HTML
- Reuse already tested front end code ( Forms, animations);
- Explore CSS, HTML & JS flexibility
- Reuse KB from the past

- Adoption in app development of Professionals with a estetical, UX and
ergonomic sense
Windows 8.1 With HTML
Other platforms that run HTML and JavaScript
native:
• FirefoxOS
• WebOS
Windows 8.1 With HTML
Windows8.1 html5 dev paradigm discussion netponto
Windows8.1 html5 dev paradigm discussion netponto
Windows8.1 html5 dev paradigm discussion netponto
Windows 8.1 With HTML
Popular features of CSS 3 are well supported in Windows 8.1
Windows 8.1 With HTML
Popular features of HTML 5 are well supported in Windows 8.1
Windows 8.1 With HTML

Windows
Windows 8.1 With HTML
HTML 5 based Windows
Store Apps Container
Windows 8.1 With HTML
WINJS is a collection of toolkits to make building Windows Store apps fast and
easy

Windows 8 app

Windows 8.1 app

WinJS 1.0

WinJS 2.0
Windows 8.1 With HTML
WinJS controls declaration
<div id="calendar" data-win-control="WinJS.UI.DatePicker"></div>

 Declarative Way
WinJS controls are divs with
atributtes that are processed
when the processall method
runs.

In the HTML File
<div id="calendarDiv" ></div>
In th JS file
var calendarDiv = document.getElementById("calendar");
var calendarctrl = new WinJS.UI.DatePicker(calendarDiv);

 Imperative Way
Windows 8.1 With HTML
We can use any javascript framework once she
run on Internet Explorer 11
Windows 8.1 With HTML
Tools
Windows 8.1 With HTML
Visual Studio offers a set of template to make easy to start a project
Windows 8.1 With HTML
Visual Studio project struture
WINRT library instaciated directly by
the app
Windows 8.1 With HTML
CSS Libraries for the Windows store
app
Windows Store App Images

JavaScript
Windows 8.1 With HTML
App certify
App Manifest
Windows 8.1 With HTML
WinJS 2.0 what’s new

Improved Controls

Infrastructure

• List view

• Scheduler

• App bar

• Dispose model
• Async debugging

New Controls

Building Blocks

• Hub

• Binding template

• Navigation bar

• Repeater

• Search box

• Item Container

• Back button
Windows 8.1 With HTML
Windows 8.1 With HTML
Windows 8.1 With HTML
Windows 8.1 With HTML
Windows 8.1 With HTML
Windows 8.1 With HTML

Conider the declaration of a list
Windows 8.1 With HTML

Define the list Template
Windows 8.1 With HTML
Windows 8.1 With HTML
• ListView Changes
• Hub Control

• WebView Control
Are 3 controls that worth also a view let’s see this 3 in
action
Windows 8.1 With HTML
Windows 8.1 With HTML

Prior to Windows 8.1 you only had Iframes as a way to embeb external sites
Full reference about WebView http://blogs.windows.com/windows/b/appbuilder/archive/2013/07/17/what-snew-in-webview-in-windows-8-1.aspx
Windows 8.1 With HTML
Windows 8.1 With HTML
Windows 8.1 With HTML
Recomended

Article for the ones starting to debug Windows 8 .1 HTMl store APPs with visual Studio 2013

http://msdn.microsoft.com/en-us/library/windows/apps/hh441474(v=vs.120).aspx
Windows 8.1 With HTML
Windows 8.1 With HTML
Beware
Windows 8.1 With HTML
Beware
Recap
References
- Programming Windows Store Apps With HTML, CSS and Javascript Second Edition, Microsoft Press
- Windows 8.1 Controls - Windows Store Apps with HTML5 Refresh (http://www.youtube.com/watch?v=Drkh8Pb2li4)
- HTML Controls for Windows Store APPS (http://msdn.microsoft.com/en-us/library/windows/apps/bg182879.aspx)
- API changes for Windows 8.1 (http://msdn.microsoft.com/en-us/library/windows/apps/dn263112.aspx)
- Windows Dsev Center (http://msdn.microsoft.com/en-US/windows/apps/br211386)
- Windows 8.1 Store apps starter pack with canonical samples (http://code.msdn.microsoft.com/windowsapps/Windows-8Modern-Style-App-Samples)
- Building Windows Store 8.1 apps using HTML, CSS and JavaScript @Channel 9
(http://channel9.msdn.com/Events/TechDays/TechDays-13-Basel/Building-Windows-Store-8-1-apps-using-HTML-CSS-andJavaScript)
Onlne Live event : Windows 8.1 Developer Training: Geek Edition @ Microsoft Academy
(http://www.microsoftvirtualacademy.com/liveevents/windows-8-1-developer-training-geek-edition#?fbid=E0I-ctThA1I)
Contacts
– amarreiros@gmail.com
– @alexmarreiros
– Digitalmindignition.com

http://www.sprintfeed.com/2011/10/introducing-its-your-turn/

Questions
Próximas reuniões presenciais
23/11/2013 – Novembro (Lisboa)
30/11/2013 – Novembro (Porto)
14/12/2013 – Dezembro (Lisboa)
18/01/2014 – Janeiro (Lisboa)

Reserva estes dias na agenda! :)
Patrocinadores “GOLD”

Twitter: @PTMicrosoft http://www.microsoft.com/portugal
Patrocinadores “GOLD”

Twitter: @nokia

http://www.nokia.com
Patrocinadores “Silver”
Patrocinadores “Bronze”
Próximas reuniões presenciais
18/01/2014 – Janeiro (Lisboa)
01/02/2014 – Hackathon! (Lisboa)
22/02/2014 – Fevereiro (Lisboa)
22/03/2014 – Março (Lisboa)
12/04/2014 – SQL Saturday! (Lisboa)
19/04/2014 – Abril (Lisboa)

Reserva estes dias na agenda! :)

More Related Content

What's hot (20)

PPT
Introduction to vb.net
Saad Wazir
 
PPTX
Html 5
AJINKYA N
 
PPTX
Sharbani bhattacharya Visual Basic
Sharbani Bhattacharya
 
PPTX
Vb.net ide
Faisal Aziz
 
PPTX
Introduction to UWP - Universal Windows Platform Application Development
Lohith Goudagere Nagaraj
 
DOCX
Asp notes
hello232
 
PPT
Introduction to Magento - KNOWARTH
KNOWARTH Technologies
 
PPT
Vc++ 3
Raman Rv
 
PPTX
Universal windows platform - Application development done right
Christos Matskas
 
PDF
C# p1
Renas Rekany
 
PPTX
Understanding IDEs
sunmitraeducation
 
PDF
Introduction to universal windows platform(uwp) app development
Thilina Wijerathne
 
PPTX
Presentation[1]
Palash Debnath
 
PPTX
Web development tool
Deep Bhavsar
 
PPTX
Visual basic 6
mohamedsaad24
 
KEY
Joomla 3 - An overview
Andrew Eddie
 
PPTX
Windows 8
Sunil Kotthakota
 
PPTX
Asp.net
vijilakshmi51
 
PDF
Vbasic
Gowri Shankar
 
Introduction to vb.net
Saad Wazir
 
Html 5
AJINKYA N
 
Sharbani bhattacharya Visual Basic
Sharbani Bhattacharya
 
Vb.net ide
Faisal Aziz
 
Introduction to UWP - Universal Windows Platform Application Development
Lohith Goudagere Nagaraj
 
Asp notes
hello232
 
Introduction to Magento - KNOWARTH
KNOWARTH Technologies
 
Vc++ 3
Raman Rv
 
Universal windows platform - Application development done right
Christos Matskas
 
Understanding IDEs
sunmitraeducation
 
Introduction to universal windows platform(uwp) app development
Thilina Wijerathne
 
Presentation[1]
Palash Debnath
 
Web development tool
Deep Bhavsar
 
Visual basic 6
mohamedsaad24
 
Joomla 3 - An overview
Andrew Eddie
 
Windows 8
Sunil Kotthakota
 
Asp.net
vijilakshmi51
 

Viewers also liked (20)

PDF
Big & machine learning
Daniel Devera
 
PDF
We are Pixelmatters: Creating a culture of excellence
EDIT. - Disruptive Digital Education
 
PDF
"Estratégia para “Responsive UX”"- #7 Industry Sessions by EDIT. / UX & Resp...
EDIT. - Disruptive Digital Education
 
PDF
Compreender UX & Responsive Design - #8 Industry Sessions by EDIT. | UX & Res...
EDIT. - Disruptive Digital Education
 
PDF
Responsive Assets: Flower Power use case - #7 Industry Sessions by EDIT. | UX...
EDIT. - Disruptive Digital Education
 
PPTX
Pragmatic Responsive web design systems - #7 Industry Sessions by EDIT. | UX...
EDIT. - Disruptive Digital Education
 
PDF
Moche vs Meo Sudoeste - Talkfest'15
EDIT. - Disruptive Digital Education
 
PDF
Listening on the Social Web: How To Make Sense of all the Noise
EDIT. - Disruptive Digital Education
 
PPTX
Jws masterclass progressive web apps
Alexandre Marreiros
 
PDF
UX Origens - #12 Industry Sessions by EDIT. | UX & Responsive Design
EDIT. - Disruptive Digital Education
 
PDF
Industry Sessios by EDIT. - Talk #2 - Andreia Santos
EDIT. - Disruptive Digital Education
 
PDF
UX Inclusivo: Criar experiências acessíveis a todos - #12 Industry Sessions b...
EDIT. - Disruptive Digital Education
 
PDF
O poder do Storytelling: da prototipagem à experiência final - #8 Industry Se...
EDIT. - Disruptive Digital Education
 
PDF
E-commerce and Marketing Challenges for New Emerging Economies - #11 Industry...
EDIT. - Disruptive Digital Education
 
PDF
Industry Sessios by EDIT. - Talk #1 - João Vitória e Filipa Sarmento
EDIT. - Disruptive Digital Education
 
PDF
Bad UX Kills People - #12 Industry Sessions by EDIT. | UX & Responsive Design
EDIT. - Disruptive Digital Education
 
PPT
2008 Benefit St RISD Fair
John Maeda
 
PDF
Industry Sessios by EDIT. - Talk #2 - Diogo Silva & Roberto Cortez
EDIT. - Disruptive Digital Education
 
PDF
O segredo para um Marketing Digital eficaz - #11 Industry Sessions by EDIT. |...
EDIT. - Disruptive Digital Education
 
Big & machine learning
Daniel Devera
 
We are Pixelmatters: Creating a culture of excellence
EDIT. - Disruptive Digital Education
 
"Estratégia para “Responsive UX”"- #7 Industry Sessions by EDIT. / UX & Resp...
EDIT. - Disruptive Digital Education
 
Compreender UX & Responsive Design - #8 Industry Sessions by EDIT. | UX & Res...
EDIT. - Disruptive Digital Education
 
Responsive Assets: Flower Power use case - #7 Industry Sessions by EDIT. | UX...
EDIT. - Disruptive Digital Education
 
Pragmatic Responsive web design systems - #7 Industry Sessions by EDIT. | UX...
EDIT. - Disruptive Digital Education
 
Moche vs Meo Sudoeste - Talkfest'15
EDIT. - Disruptive Digital Education
 
Listening on the Social Web: How To Make Sense of all the Noise
EDIT. - Disruptive Digital Education
 
Jws masterclass progressive web apps
Alexandre Marreiros
 
UX Origens - #12 Industry Sessions by EDIT. | UX & Responsive Design
EDIT. - Disruptive Digital Education
 
Industry Sessios by EDIT. - Talk #2 - Andreia Santos
EDIT. - Disruptive Digital Education
 
UX Inclusivo: Criar experiências acessíveis a todos - #12 Industry Sessions b...
EDIT. - Disruptive Digital Education
 
O poder do Storytelling: da prototipagem à experiência final - #8 Industry Se...
EDIT. - Disruptive Digital Education
 
E-commerce and Marketing Challenges for New Emerging Economies - #11 Industry...
EDIT. - Disruptive Digital Education
 
Industry Sessios by EDIT. - Talk #1 - João Vitória e Filipa Sarmento
EDIT. - Disruptive Digital Education
 
Bad UX Kills People - #12 Industry Sessions by EDIT. | UX & Responsive Design
EDIT. - Disruptive Digital Education
 
2008 Benefit St RISD Fair
John Maeda
 
Industry Sessios by EDIT. - Talk #2 - Diogo Silva & Roberto Cortez
EDIT. - Disruptive Digital Education
 
O segredo para um Marketing Digital eficaz - #11 Industry Sessions by EDIT. |...
EDIT. - Disruptive Digital Education
 
Ad

Similar to Windows8.1 html5 dev paradigm discussion netponto (20)

PDF
Windows 8 app template feedback
Steren Giannini
 
PPTX
Become a Windows 8 and Windows Phone App Developer at TechDays
Microsoft Developer Network (MSDN) - Belgium and Luxembourg
 
PPT
Busy Developer's Guide to Windows 8 HTML/JavaScript Apps
JAX London
 
PPTX
New voice, new tone, new IA: Writing for the modern developer
Keith Boyd
 
PPTX
Windows Store Apps using HTML and JavaScript: Become a Windows App Store deve...
Sacha Bruttin
 
PDF
Use html5 to build what you want, where you want it
Kevin DeRudder
 
PPTX
Eric grover strategies for sharing code with windows 8 and windows phone 8 ...
Eric Grover
 
PDF
Marlabs - MarlaBuzz November
Marlabs
 
PDF
Windows Store App Development C And Xaml 1st Edition Pete Brown
weihuaokane
 
PPTX
Developing for Windows 8 based devices
Aneeb_Khawar
 
PPTX
Windows store app development V1
Foyzul Karim
 
PPTX
Windows Phone 8 App Development
DalpatTapaniya
 
PDF
A Complete guide of Windows 8 with its application
alva christi
 
PDF
Windows 8 product guide developer english
Hoangminh Nguyen
 
PDF
Windows 8: Touchable, Portable and Compatible
Intergen
 
PDF
Develop an app for Windows 8 using HTML5
Soumow Dollon
 
PPTX
Presentation - Windows app development - I - Mr. Chandan Gupta
MobileNepal
 
PDF
Mihai Tataran - Building Windows 8 Applications with HTML5 and JS
ITCamp
 
PPTX
Sharing code win8 wp8
matthidinger
 
PPTX
Windows phone 8 overview
codeblock
 
Windows 8 app template feedback
Steren Giannini
 
Become a Windows 8 and Windows Phone App Developer at TechDays
Microsoft Developer Network (MSDN) - Belgium and Luxembourg
 
Busy Developer's Guide to Windows 8 HTML/JavaScript Apps
JAX London
 
New voice, new tone, new IA: Writing for the modern developer
Keith Boyd
 
Windows Store Apps using HTML and JavaScript: Become a Windows App Store deve...
Sacha Bruttin
 
Use html5 to build what you want, where you want it
Kevin DeRudder
 
Eric grover strategies for sharing code with windows 8 and windows phone 8 ...
Eric Grover
 
Marlabs - MarlaBuzz November
Marlabs
 
Windows Store App Development C And Xaml 1st Edition Pete Brown
weihuaokane
 
Developing for Windows 8 based devices
Aneeb_Khawar
 
Windows store app development V1
Foyzul Karim
 
Windows Phone 8 App Development
DalpatTapaniya
 
A Complete guide of Windows 8 with its application
alva christi
 
Windows 8 product guide developer english
Hoangminh Nguyen
 
Windows 8: Touchable, Portable and Compatible
Intergen
 
Develop an app for Windows 8 using HTML5
Soumow Dollon
 
Presentation - Windows app development - I - Mr. Chandan Gupta
MobileNepal
 
Mihai Tataran - Building Windows 8 Applications with HTML5 and JS
ITCamp
 
Sharing code win8 wp8
matthidinger
 
Windows phone 8 overview
codeblock
 
Ad

More from Alexandre Marreiros (20)

PPTX
Agular fromthetrenches2netponto
Alexandre Marreiros
 
PPTX
Whats a Chat bot
Alexandre Marreiros
 
PPTX
Type of angular 2
Alexandre Marreiros
 
PPTX
Xamarin devdays 2017 - PT - connected apps
Alexandre Marreiros
 
PPTX
ASP.NEt MVC and Angular What a couple
Alexandre Marreiros
 
PPTX
Angular 2
Alexandre Marreiros
 
PPTX
Xamarin.forms
Alexandre Marreiros
 
PPTX
Quick View of Angular JS for High School
Alexandre Marreiros
 
PPTX
Pt xug xamarin pratices on big ui consumer apps
Alexandre Marreiros
 
PPTX
Get satrted angular js day 2
Alexandre Marreiros
 
PPTX
Get satrted angular js
Alexandre Marreiros
 
PPTX
Gab2015 azure search as a service
Alexandre Marreiros
 
PPTX
Pragmatic responsive web design industry session 7
Alexandre Marreiros
 
PPTX
Boot strapandresponsiveintro
Alexandre Marreiros
 
PPTX
WebSite development using WinJS
Alexandre Marreiros
 
PPTX
Universal Apps Development using HTML 5 and WINJS
Alexandre Marreiros
 
PPTX
GWAB Mobile Services
Alexandre Marreiros
 
PPTX
Html5ignition newweborder
Alexandre Marreiros
 
PPTX
Mobile first responsive industry sessions
Alexandre Marreiros
 
PPTX
Microsoft PT TechRefresh html win8.1
Alexandre Marreiros
 
Agular fromthetrenches2netponto
Alexandre Marreiros
 
Whats a Chat bot
Alexandre Marreiros
 
Type of angular 2
Alexandre Marreiros
 
Xamarin devdays 2017 - PT - connected apps
Alexandre Marreiros
 
ASP.NEt MVC and Angular What a couple
Alexandre Marreiros
 
Xamarin.forms
Alexandre Marreiros
 
Quick View of Angular JS for High School
Alexandre Marreiros
 
Pt xug xamarin pratices on big ui consumer apps
Alexandre Marreiros
 
Get satrted angular js day 2
Alexandre Marreiros
 
Get satrted angular js
Alexandre Marreiros
 
Gab2015 azure search as a service
Alexandre Marreiros
 
Pragmatic responsive web design industry session 7
Alexandre Marreiros
 
Boot strapandresponsiveintro
Alexandre Marreiros
 
WebSite development using WinJS
Alexandre Marreiros
 
Universal Apps Development using HTML 5 and WINJS
Alexandre Marreiros
 
GWAB Mobile Services
Alexandre Marreiros
 
Html5ignition newweborder
Alexandre Marreiros
 
Mobile first responsive industry sessions
Alexandre Marreiros
 
Microsoft PT TechRefresh html win8.1
Alexandre Marreiros
 

Recently uploaded (20)

PPTX
Designing_the_Future_AI_Driven_Product_Experiences_Across_Devices.pptx
presentifyai
 
PDF
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
Kit-Works Team Study_20250627_한달만에만든사내서비스키링(양다윗).pdf
Wonjun Hwang
 
PDF
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
Edge AI and Vision Alliance
 
PPTX
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
PPTX
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PPTX
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
PDF
The 2025 InfraRed Report - Redpoint Ventures
Razin Mustafiz
 
PDF
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 
Designing_the_Future_AI_Driven_Product_Experiences_Across_Devices.pptx
presentifyai
 
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
Kit-Works Team Study_20250627_한달만에만든사내서비스키링(양다윗).pdf
Wonjun Hwang
 
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
Edge AI and Vision Alliance
 
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
The 2025 InfraRed Report - Redpoint Ventures
Razin Mustafiz
 
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 

Windows8.1 html5 dev paradigm discussion netponto

  • 1. http://netponto.org Windows 8.1 with HTML5/JS Alexandre Marreiros 44ª Reunião Presencial @ LISBOA DateTime.Parse(“18-01-2014", new CultureInfo("pt-PT")); hashtag #netponto
  • 2. About / Contact Alexandre Marreiros Who – – – – – – CTO @ Innovagency Software Dev/Arch as Independent Technical Trainer and Speaker as Independent Technical Writer UX Consultant Lecturer@ EDIT Contact – [email protected] – @alexmarreiros – Digitalmindignition.com
  • 3. Agenda – Windows 8.1 Platform / API – Windows 8.1 Tech view HTML 5 vs XAML – Windows 8.1 And Windows Phone 8 – Windows 8.1 Tech view HTML
  • 7. Windows 8.1 Store Apps Platform
  • 8. Windows 8.1 & Windows Phone 8 http://www.bubblews.com/news/1730683-microsoft-to-combine-their-windows-8-and-windows-phone-app-stores
  • 9. Windows 8.1 & Windows Phone 8 MSDN Magazine
  • 10. Windows 8.1 & Windows Phone 8
  • 11. Windows 8.1 & Windows Phone 8 Sharing technique Separate UI and app logic using the Model-ViewViewModel pattern Share functionality using Portable Class Libraries Share code with Add as Link Share using Windows Runtime Components Sharing XAML UI Conditional compilation with preprocessor directives When to use This guidance is applicable to many app types, but particularly to apps that have a XAML UI. Separation allows you to write the app logic and to concentrate on user experience design separately. An added benefit is that your app logic is more likely to be common for your app on both platforms, and therefore is a great candidate for code sharing using the rest of the techniques described here. Model-View-ViewModel (MVVM) is a great way to achieve this separation. Windows Phone 8 and Windows 8 share the same .NET Framework engine. In a XAML app, most of your app logic will be written in managed code. If you are using the MVVM design pattern, you have the potential to share your viewmodel and potentially your model. Note that Portable Class Libraries are a .NET Framework concept and don’t support C++. Use this technique for code that is non-portable and therefore can’t be implemented in a Portable Class Library. For example, Windows Phone 8 and Windows 8 can use the common Windows Runtime API surface to harness the power of each platform for networking, proximity, in-app purchase, and many other features. Portable Class Libraries don’t support Windows Runtime API. Instead, you can abstract this non-portable code, which is common to both platforms, into a class that can be shared using Add as Link in Visual Studio. In C++ projects files are added to projects as linked files by default. In addition to consuming the common Windows Runtime API available on both platforms, you can write your own Windows Runtime Component to make your functionality available in all supported languages. This can be written in C++ and consumed by C# or VB. This is a very useful technique for language interoperability or for when you want to write compute-intensive code in C++ and use it in all languages. The UI in Windows Phone 8 and Windows 8 is written in XAML. However, the XAML implementations are not portable between the platforms. But you can isolate some of your custom basic UI building blocks into UserControls and share those classes as linked files that will be compiled for each platform. This technique is limited and should be used only for simple, reusable parts of your UI. The core of your UI should be built and tailored separately for each platform. If you have functionality that’s implemented differently for Windows Phone 8 and Windows 8, you can use conditional compilation to compile the code suitably for each platform. You can’t use conditional compilation in a Portable Class Library.
  • 12. Windows 8.1 & Windows Phone 8
  • 13. Windows 8.1 & Windows Phone 8 Windows Phone 8 View technologies Windows 8.1
  • 14. Windows 8.1 & Windows Phone 8 WP 8 APP W 8 APP based on HTML 5
  • 15. Windows 8.1 & Windows Phone 8
  • 16. Windows 8.1 & Windows Phone 8 But today we will not talk about responsive or cross device development or pattern’s, just want that you keep in mind that there are diferences and even if we want a ap for wp and windowa we can still use HTML 5 in Windows. Becouse even using xaml we may not have/want a total app reuse.
  • 17. Windows 8.1 With HTML “It also means that you’ll be able to leverage existing investments in JavaScript libraries and CSS template repositories: writing a native app doesn’t force you to switch frameworks or engage in expensive porting work. That said, it is also possible to use multiple languages to write an app, leveraging the dynamic nature of JavaScript for app logic while leveraging languages like C# and C++ for more computationally intensive tasks” Kraig Brockschmidt
  • 18. Windows 8.1 With HTML - Reuse already tested front end code ( Forms, animations); - Explore CSS, HTML & JS flexibility - Reuse KB from the past - Adoption in app development of Professionals with a estetical, UX and ergonomic sense
  • 19. Windows 8.1 With HTML Other platforms that run HTML and JavaScript native: • FirefoxOS • WebOS
  • 24. Windows 8.1 With HTML Popular features of CSS 3 are well supported in Windows 8.1
  • 25. Windows 8.1 With HTML Popular features of HTML 5 are well supported in Windows 8.1
  • 26. Windows 8.1 With HTML Windows
  • 27. Windows 8.1 With HTML HTML 5 based Windows Store Apps Container
  • 28. Windows 8.1 With HTML WINJS is a collection of toolkits to make building Windows Store apps fast and easy Windows 8 app Windows 8.1 app WinJS 1.0 WinJS 2.0
  • 29. Windows 8.1 With HTML WinJS controls declaration <div id="calendar" data-win-control="WinJS.UI.DatePicker"></div>  Declarative Way WinJS controls are divs with atributtes that are processed when the processall method runs. In the HTML File <div id="calendarDiv" ></div> In th JS file var calendarDiv = document.getElementById("calendar"); var calendarctrl = new WinJS.UI.DatePicker(calendarDiv);  Imperative Way
  • 30. Windows 8.1 With HTML We can use any javascript framework once she run on Internet Explorer 11
  • 31. Windows 8.1 With HTML Tools
  • 32. Windows 8.1 With HTML Visual Studio offers a set of template to make easy to start a project
  • 33. Windows 8.1 With HTML Visual Studio project struture WINRT library instaciated directly by the app
  • 34. Windows 8.1 With HTML CSS Libraries for the Windows store app Windows Store App Images JavaScript
  • 35. Windows 8.1 With HTML App certify App Manifest
  • 36. Windows 8.1 With HTML WinJS 2.0 what’s new Improved Controls Infrastructure • List view • Scheduler • App bar • Dispose model • Async debugging New Controls Building Blocks • Hub • Binding template • Navigation bar • Repeater • Search box • Item Container • Back button
  • 42. Windows 8.1 With HTML Conider the declaration of a list
  • 43. Windows 8.1 With HTML Define the list Template
  • 45. Windows 8.1 With HTML • ListView Changes • Hub Control • WebView Control Are 3 controls that worth also a view let’s see this 3 in action
  • 47. Windows 8.1 With HTML Prior to Windows 8.1 you only had Iframes as a way to embeb external sites Full reference about WebView http://blogs.windows.com/windows/b/appbuilder/archive/2013/07/17/what-snew-in-webview-in-windows-8-1.aspx
  • 50. Windows 8.1 With HTML Recomended Article for the ones starting to debug Windows 8 .1 HTMl store APPs with visual Studio 2013 http://msdn.microsoft.com/en-us/library/windows/apps/hh441474(v=vs.120).aspx
  • 52. Windows 8.1 With HTML Beware
  • 53. Windows 8.1 With HTML Beware
  • 54. Recap
  • 55. References - Programming Windows Store Apps With HTML, CSS and Javascript Second Edition, Microsoft Press - Windows 8.1 Controls - Windows Store Apps with HTML5 Refresh (http://www.youtube.com/watch?v=Drkh8Pb2li4) - HTML Controls for Windows Store APPS (http://msdn.microsoft.com/en-us/library/windows/apps/bg182879.aspx) - API changes for Windows 8.1 (http://msdn.microsoft.com/en-us/library/windows/apps/dn263112.aspx) - Windows Dsev Center (http://msdn.microsoft.com/en-US/windows/apps/br211386) - Windows 8.1 Store apps starter pack with canonical samples (http://code.msdn.microsoft.com/windowsapps/Windows-8Modern-Style-App-Samples) - Building Windows Store 8.1 apps using HTML, CSS and JavaScript @Channel 9 (http://channel9.msdn.com/Events/TechDays/TechDays-13-Basel/Building-Windows-Store-8-1-apps-using-HTML-CSS-andJavaScript) Onlne Live event : Windows 8.1 Developer Training: Geek Edition @ Microsoft Academy (http://www.microsoftvirtualacademy.com/liveevents/windows-8-1-developer-training-geek-edition#?fbid=E0I-ctThA1I)
  • 56. Contacts – [email protected] – @alexmarreiros – Digitalmindignition.com http://www.sprintfeed.com/2011/10/introducing-its-your-turn/ Questions
  • 57. Próximas reuniões presenciais 23/11/2013 – Novembro (Lisboa) 30/11/2013 – Novembro (Porto) 14/12/2013 – Dezembro (Lisboa) 18/01/2014 – Janeiro (Lisboa) Reserva estes dias na agenda! :)
  • 58. Patrocinadores “GOLD” Twitter: @PTMicrosoft http://www.microsoft.com/portugal
  • 62. Próximas reuniões presenciais 18/01/2014 – Janeiro (Lisboa) 01/02/2014 – Hackathon! (Lisboa) 22/02/2014 – Fevereiro (Lisboa) 22/03/2014 – Março (Lisboa) 12/04/2014 – SQL Saturday! (Lisboa) 19/04/2014 – Abril (Lisboa) Reserva estes dias na agenda! :)

Editor's Notes

  • #38: Explain: APP BAR NAV BARBackButton HUB controlListViewControlRepeaterWebview in thepastweonlyhaveiframe (independentnavigationstacklike a browser runing in theapp sport a stringsourcegood to readbadwebservices)