2012 mct summit presentation final

  • 294 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
294
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Less training with web monkeys and designers who already know HTMLDesign process with blend actually worksDevelopment is easier and iterativeTesting can be easily done with dependency injection modulesDeployment is dead simple – Windows StoreMaintenace – just HTML/JS

Transcript

  • 1. Deep Dive into WinJS Dmitri Artamonov dmitria@bluemetal.com @dartamonMCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 2. Introductions • Your name • Web, client or other? • What’s drawing you towards WinJS? MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 3. Agenda • Introductions • Under the hood • Place in the universe • Patterns and practices • Integration with enterprise systems • Managing WinJS development MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 4. MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 5. Under the hood • Language projections • Connected to same WinRT components • Hardware-accelerated JS technology from IE • Will WinJS evolve away? • Windows Phone 8 MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 6. MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 7. Where does it fit? • Rapid Development • Reuse web monkeys • Better view surface on top of C# logic • Large existing ecosystem for developers • Cheaper UI design process MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 8. MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 9. Other Libraries • jQuery • Graphing and Charting • Knockout.js • You can even create apps without WinJS MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 10. Patterns - Promises • Async pattern • function – then – done • Still a single thread! • Careful accessing resources not yet returned MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 11. Patterns – MVVM… • No encapsulation of actions • Bloated VMs • Implementation – one context per view • No two-way bindings in WinJS • Bindings in WinJS require knowledge of View MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 12. MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 13. MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 14. MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 15. Patterns - MVC • Standard web pattern for ~17 years • Controllers for user input • AM/DM conversion with namespaces and classes • Classes and namespaces are observable • Multiple contexts – regions… MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 16. Demo - MVCMCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 17. Patterns - Regions • Data contexts defined for individual DOM elements • data-win-bind and data-win-bindsource • Declarative and programmatic ways MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 18. Patterns – Modules and DI • Information hiding done via modules • Anonymous self-executing function with parameters • Code inside module is private • Parameters allow dependency injection and testing • Data exposed via namespaces and classes MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 19. Patterns – .winmd components • C# good at logic and model manipulation • Use it, expose data via component to WinJS • Access it as normal namespace/class • Take advantage of performance of C++/C# MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 20. Patterns - Dynamic code loading • Deploy once, keep updating • Forbidden by security for the Windows Store • Uses execUnsafeLocalFunction • Alternatives – iframe, Fragments API MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 21. Practices – Blend design process • Blend with WinJS • No broken module references or .targets files • True handoff from designer to developer MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 22. Demo – Blend with JavascriptMCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 23. Integration with Enterprise Systems • File Picker API - fluid file system • Roaming API – unified experience • Share Contract – enterprise workflows • Tiles – enterprise dashboards • Windows Push Notification Services for communication through tile updates MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 24. Demo – Executive DashboardMCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 25. Enterprise Store (unofficial) • Private store for the enterprise • Enterprise machines can deploy from fixed set of apps • Enforce security policies • Restores controlled enterprise environment MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 26. MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 27. Managing WinJS - Costs • Training • Design – Blend! • Development • Testing • Deployment • Maintenance MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 28. Managing WinJS (cont’d) • What happens to legacy C# apps? • How to migrate legacy web applications to Windows 8? • Writing cross-platform apps MCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 29. A Big Thanks to our Sponsors Platinum Sponsor Gold SponsorsMCT Summit North America | October, 17th – October 20th, 2012 | Redmond
  • 30. Questions? • WinJS Samples: http://code.msdn.microsoft.com/windowsapps/ Windows-8-Modern-Style-App-Samples • BlueMetal Blog: http://blog.bluemetal.com • dmitria@bluemetal.com • @dartamon MCT Summit North America | October, 17th – October 20th, 2012 | Redmond