Presentation is loading. Please wait.

Presentation is loading. Please wait.

Vladimir Milev New Venture Software Sharing Code between WPF and Universal Apps.

Similar presentations


Presentation on theme: "Vladimir Milev New Venture Software Sharing Code between WPF and Universal Apps."— Presentation transcript:

1

2 Vladimir Milev New Venture Software Sharing Code between WPF and Universal Apps

3

4 Founder and CSA at www.newventuresoftware.com www.newventuresoftware.com Spent 9 years at Telerik, most of them on XAML Twitter: @vmilev Blog: http://www.newventuresoftware.com/blog/author/vladimir- milev/ http://www.newventuresoftware.com/blog/author/vladimir- milev/ 4 th time speaker at NTK Speaker at other conferences i.e. DevReach, How.Camp and others. Vladimir Milev

5

6

7 Identifying our use case and needs Code Sharing techniques PRISM and Unity Navigation Sharing XAML Discussion / Q&A Agenda

8

9 Universal Apps / UWP Platform Convergence Investment in the future? Code Reuse Look and feel unification

10 It is “THE Platform” for Desktop development Visual Studio, AutoCAD, Expression Blend, GitHub It’s longevity is secure Pretty much the only choice for new LOB apps Support for Windows 7 (and Vista) - huge market share at 60%+.NET Apps in Windows Store WPF

11 XAML Based WPF as extension to UWP Common business logic Support for widest range of MS platforms Support for Windows 7 and earlier The case for WPF + Universal Apps

12

13 File Includes (Add as link option or Same folder approach) Shared Projects Portable Class library When to use each? Strategies for sharing code

14 Did that for XAML controls at Telerik Somewhat archaic way of doing things The predecessor of Shared Projects Not recommended to be done on a large scale Still suitable for exception cases File includes (add as link option)

15 Shared Projects

16 Two types – classic and (universal apps) Targets the least common denominator APIs Much more simplified development model It is er… well… portable It scales well to large systems requiring multiple solutions, involving third parties or multiple programming languages Difficult to access platform specific APIs: Requires DI, IoC containers, and lots of interfaces. Portable Class Libraries

17 Line of Business Application Basics: MVVM Pattern: Views, ViewModels Navigation Commanding We will explore our approach to each Introducing MyApp

18 Creating the project structure Installing the Share Project Manager Extension Adding a Desktop (WPF) Project Configuring folder structure (DEMO) Initial Project Setup

19

20 Why PRISM? Consider also Caliburn.Micro, MVVM Light Subset of PRISM: PRISM MVVM ViewModel and BindableBase AutoWireViewModel IView interface Implementing cross-platform PRISM

21

22 Navigation INavigationService interface

23 No counterpart in WPF Regions and RegionManager (with MEF) Frame control and it’s NavigationService Reimplementing the INavigationService in WPF Introducing the Unity IoC Container. Introducing Commanding. Navigation

24

25 XAML Preprocessing

26 Share the XAML file Fix the WPF Version Create an RegExp preprocessor Insert some MSBuild Magic Adding a custom template control sample XAML Preprocessing

27

28 Identifying our use case and needs Code Sharing techniques PRISM and Unity Navigation Sharing XAML Discussion / Q&A Recap

29


Download ppt "Vladimir Milev New Venture Software Sharing Code between WPF and Universal Apps."

Similar presentations


Ads by Google