Presentation is loading. Please wait.

Presentation is loading. Please wait.

Igor Ralić igrali.com Open source u razvoju Windows Phone aplikacija.

Similar presentations


Presentation on theme: "Igor Ralić igrali.com Open source u razvoju Windows Phone aplikacija."— Presentation transcript:

1 Igor Ralić igrali.com dizzy.hr @igrali Open source u razvoju Windows Phone aplikacija

2 Inspirirani ljudima. Ugasite mobitele. Hvala.

3

4

5

6 PROS CONS Support Free as in “free coffee” Often free as in “free speech” Fix it yourself Extend it yourself Support Not up to par with commercial controls Sometimes Confusing licenses Most of the time http://choosealicense.com/

7

8 FRE E

9 Inspirirani ljudima. unflwd.m e + demos

10 Inspirirani ljudima. TASK REQUIREMENT PROBLEM IDEA OPEN SOURCE SOLUTION

11 Inspirirani ljudima. Maintainable Testable Easily designed Well structured MVVM pattern

12 View DataContext, Converters, Animations In some cases – code behind is OK ViewModel Properties, Commands Databinding Presentation logic Model INotifyPropertyChanged XAML platforms Multiplatform MVVM http://msdn.microsoft.com/en-us/library/gg405484%28v=pandp.40%29.aspx

13 Visual element Window, Page, UserControl, DataTemplate DataContext Customizable data binding behavior Value converters, validation rules Animations, transitions May define logic in code-behind In some cases View

14 ViewModel Presentation logic Properties, commands Data binding INotifyPropertyChanged ObservableCollection No direct reference to view Logical states represented visually Value converters

15 Model Client side model INotifyPropertyChanged Data validation, IDataErrorInfo Non-visual No dependency on views or viewmodels Used with services & repositories Providing data access and caching

16 MVVM No frameworks needed, but… ViewModelBase ICommand implementation RelayCommand Design mode Messenger implementation DI (constructor injection) https://mvvmlight.codeplex.com/

17 MVVM Light Lightweight & the simplest Nuget MIT license Laurent Bugnion Accelerated MVVM development! Many alternatives Simple MVVM Toolkit, Caliburn.Micro, Catel.MVVM … https://mvvmlight.codeplex.com/

18 Inspirirani ljudima. DEMO MVVM Light

19 Inspirirani ljudima. Use Windows Phone APIs as services in MVVM Cimbalino toolkit

20 Many components Nuget MIT License Pedro Lamas Cimbalino.Phone.Toolkit Background Camera Controls DeviceInfo Location MediaLibrary PhoneDialer UserInfo +Random services, behaviors, extensions http://cimbalino.org/

21 Cimbalino – location services

22 Inspirirani ljudima. Use binding with ApplicationBar Cimbalino toolkit

23 Bindable ApplicationBar… Not a DependencyObject Localization Events -> VM Commands ApplicationBarBehavior ApplicationBarBehaviorIconButton ApplicationBarMenuItem http://cimbalino.org/

24 … and a bindable MultiApplicationBar http://cimbalino.org/

25 Inspirirani ljudima. DEMO Cimbalino toolkit

26 Inspirirani ljudima. More UI controls Windows Phone toolkit Coding4Fun toolkit

27 Basic Windows Phone controls set Often not enough! PhoneApplicationPage, PhoneApplicationFrame Grid, StackPanel, Border, Canvas, ContentControl, Pivot, Panorama, VirtualizingStackPanel, ScrollViewer TextBlock, TextBox, PasswordBox Button, HyperlinkButton CheckBox, RadioButton, Slider ListBox, LongListSelector Image, Map, MediaElement WebBrowser ProgressBar, Popup Building your own Expensive, tough, time-consuming

28 Windows Phone Toolkit WP Developer Platform Team Nuget Ms-PL license UI Controls Transitions Effects Extensions http://phone.codeplex.com/

29

30

31 Coding4Fun Clint Rutkas and Coding4Fun team Nuget Ms-PL license AudioControlNetworkStorage http://coding4fun.codeplex.com/

32

33 C4F ToastPrompt

34 Inspirirani ljudima. DEMO Windows Phone & Coding4Fun Toolkits

35 Inspirirani ljudima. Reorder items in a listReorderListBox

36 Reorder items in a list Propagate change to inner (Observable) collection Very simple! Nuget Ms-PL license http://reorderlistbox.codeplex.com/

37 ReorderListBox

38 Inspirirani ljudima. Override global theme Light or dark WP Theme Manager

39 Avoid messed up colors Nuget Apache 2.0 license Customizes Foreground, background, contrast/chrome/etc. colors and brushes System tray (when navigation finishes) Appbar (if created immediately) Does not customize MessageBox https://github.com/jeffwilcox/wp-thememanager

40 Inspirirani ljudima. DEMO ReorderListBox & WP Theme Manager

41 Inspirirani ljudima. Work with imagesWriteableBitmapEx

42 Extensions for WriteableBitmap Windows Phone, Silverlight, WPF, WinRT Nuget Ms-PL license Features Transformation (crop, resize, flip, rotate…) Shapes (ellipse, polyline, quad, rectangle and triangle...) Blitting (many different blend modes…) Conversions (from and to byte[]...) http://writeablebitmapex.codeplex.com/

43 Inspirirani ljudima. Cache dataQ42.WinRT

44 Windows Phone and WinRT MIT License DataLoader Easy Loading/Finished/Error binding DataCache Input cache key and API call ImageExtensions.CacheUri https://github.com/Q42/Q42.WinRT

45 Inspirirani ljudima. DEMO Q42.WinRT

46 Inspirirani ljudima. Show data in charts Visual representation of data ModernUI Charts

47 ModernUI charts Not available on Nuget (Silverlight dll) Ms-PL license ColumnChart PieChart BarChart Doughnut Chart Radial Gauge Chart http://modernuicharts.codeplex.com/

48 ModernUI Charts code sample

49

50

51 Inspirirani ljudima. Remind user to rate appRate My App

52 By Nokia Custom license Nuget Alternative ReviewBugger https://github.com/nokia-developer/rate-my-app

53

54 Inspirirani ljudima. DEMO Rate My App

55 And many, many others… Facebook C# SDK LINQ to Twitter Json.NET HTML Agility Pack AgFx MvvmCross SLAR Toolkit GART ExifLib Farseer Physics Engine ZXing.Net AdRotator...

56 Using open source in Windows Phone development is like playing with LEGO. Just connect the pieces and go wherever your imagination takes you… github.com/igrali igrali.co m

57 Inspirirani ljudima. Pitanja i odgovori.

58

59


Download ppt "Igor Ralić igrali.com Open source u razvoju Windows Phone aplikacija."

Similar presentations


Ads by Google