Windows 8 Store Applications: Clash of HTML5 and XAML
Doncho Minkov Technical Trainer http://minkov.it Telerik Software Academy http://academy.telerik.com Table of Contents
HTML5 and XAML History and features
Windows Store Applications Platform targeted or multiplatform About me
Doncho Minkov Technical Trainer @ Telerik Software Academy Experience in web technologies Organizer of HTML5 and JavaScript courses in the Software Academy A fan of WPF and XAML, lately of Windows 8
Web site and blog: http://minkov.it
Twitter: @donchominkov Telerik Software Academy
Telerik Software Academy is an initiative of Telerik Corp. Free trainings for software development Five main tracks Web, Mobile and Desktop Software Development Software Quality Assurance School Academy AlgoAcademy Kids Academy What is HTML 5? In a few words HTML 5
HTML5 is The next version of HTML Started 2004, finished… near future A ready feature set from 2012 A set of CSS and JavaScript APIs
HTML5 is actually just a marketing name HTML5 means extended HTML, CSS and JavaScript HTML5
HTML5 includes, but not limits to: Canvas API for creating 2d drawing dynamically with JavaScript A OpenGL-based technology (WebGL) for developing dynamic 3d drawing Multimedia support for timed media playback Both audio and video Parallel programing using dedicated WebWorkers And many many more HTML5 Since HTML5 is a web standard, it is currently the only technology running multi-platform All kinds of applications can be developed with HTML5: Web apps, using a tiny server layer Mobile applications Using PhoneGap for iOS, Android and BlackBerry Native for WindowsPhone and Mozilla OS Windows Store Applications HTML5 in Windows? HTML5 in Windows?
Why did Microsoft allowed a development of native apps with HTML5? HTML5 is the popular guy, everybody wants to hang out with the popular HTML5 has a really large community HTML5 is a pretty good platform for developing applications WinJS WinJS development platform for creating Windows Store Applications Uses Model-View-ViewModel as architectural design pattern Support for 99% of the HTML5 features First class JavaScript support Access to all device hardware like GPS and Camera Yet WinJS is a new thing It is not yet a mature XAML XAML
XAML stands for eXtensible Application Markup Language
Developed by Microsoft for building the UI of desktop applications
XAML is very similar to HTML, yet it is was much more powerful UI platform
XAML gets parts inside the core of Windows 7 and Windows 8 It is the more native way of creating Windows applications History of XAML Introduced in 2006 with .NET 3.0 Windows Presentation Foundation (WPF) WPF is "the new way" to create desktop apps Silverlight is introduced in 2007 Under the name WPF/E - WPF Everywhere Lately used in WindowsPhone 7 Away from Web, thanks to HTML5 Windows Runtime (WinRT) introduced in 2011 Used for Windows 8 Store apps What XAML offers?
XAML is a mature platform Grown with 5 versions of WPF and 5 versions of Silverlight XAML introduces a pretty good data-binding Multiplied by a new property system (dependency and attached properties) A very clear separation of concerns through the Model-View-ViewModel design pattern Resolution independent graphics XAML vs. HTML5 XAML or HTML5
Here comes the philosophical question: HTML5 or XAML?
As with many thing in software development, the answer is "It depends" Both XAML and HTML5 have pros and cons Platform Dependency
WinJS is HTML5 It is platform independent Formally said, a few changed lines of CSS and we have an application portable for PhoneGap
XAML is Windows tech Available only on Windows, not portable to other OS Community
Both HTML5 and XAML have quite large communities HTML5 gained its popularity through web, but still this community can be used for WinJS XAML has MSDN and big enough community to find pretty much everything you need Preferences
All in all with WinJS and with XAML can be done pretty much the same things Now it comes to preferences Do you like Web or XAML?
WinJS is created that every web front-end developer can build an app That way the WinJS community Which one to learn and master?
XAML has a high learning curve And XAML is a closed platform and is specific XAML can be used only in Windows
HTML5 on the other hand is the language of the Web It is platform independent and be used everywhere Bottom Line
If you have experience with WPF/Silverlight Use XAML for Windows 8 store development
If your expertise is focused on the Web Use HTML5 and WinJS
If you don’t have knowledge of either I prefer WinJS JavaScript will stick many years to come Mastering WinJS will give you experience to develop applications for other platforms Windows 8 Store Applications: Clash of HTML5 and XAML
курсове и уроци по програмиране, уеб дизайн – безплатно BG Coder - онлайн състезателна система - online judge курсове и уроци по програмиране – Телерик академия форум програмиране, форум уеб дизайн уроци по програмиране и уеб дизайн за ученици ASP.NET курс - уеб програмиране, бази данни, C#, .NET, ASP.NET програмиране за деца – безплатни курсове и уроци ASP.NET MVC курс – HTML, SQL, C#, .NET, ASP.NET MVC безплатен SEO курс - оптимизация за търсачки алго академия – състезателно програмиране, състезания курсове и уроци по програмиране, книги – безплатно от Наков курс мобилни приложения с iPhone, Android, WP7, PhoneGap уроци по уеб дизайн, HTML, CSS, JavaScript, Photoshop Дончо Минков - сайт за програмиране free C# book, безплатна книга C#, книга Java, книга C# безплатен курс "Качествен програмен код" Николай Костов - блог за програмиране безплатен курс "Разработка на софтуер в cloud среда" C# курс, програмиране, безплатно Free Trainings @ Telerik Academy
Web Design and UI Technologies @ Telerik Academy
html5course.telerik.com
Telerik Software Academy
academy.telerik.com
Telerik Academy @ Facebook
facebook.com/TelerikAcademy
Telerik Software Academy Forums
forums.academy.telerik.com