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

Slides:



Advertisements
Similar presentations
Module 1: Creating an Application by Using Windows Presentation Foundation Overview of WPF Creating a Simple WPF Application Handling Events and Commands.
Advertisements

Expression Blend 4 – deep dive
Understanding the MVVM pattern
Developing HTML5 Application using MVVM pattern Pekka Ylenius.
USING THE MODEL-VIEW- VIEWMODEL PATTERN Laurent Bugnion Director, User Experience Integration IdentityMine
Data Binding in GUI Application Development Patrick O’Brien.
Lessons learned from developing a Windows 8 Metro application in C# Frode Nilsen Nilsen Labs Ticki.
An Introduction to the Model-View-ViewModel Pattern Srsly? Another MV* Pattern? Srsly? Another MV* Pattern?
Dinko Jakovljević Microsoft Student Partner | BambooLab
Essentials of Developing Windows Phone Apps Chinthaka Dissanayake Tech Lead Exilesoft.
An Introduction To Silverlight Gergely Orosz
Laurent Bugnion Senior User Experience Integrator IdentityMine
A Good UX How To Make It Happen EAE 4023, UNITE 2010 Tuesday, 9:15 am May 25 th 2010 Niels Gebauer Director Client Tools Consultancy
Ronnie Saurenmann Principal Architect Microsoft Switzerland.
Getting Started with Windows Phone 7.0 Development Creating a Silverlight Application Sergey Barskiy
An introduction to. Introductions  I’m Rob Fonseca-Ensor  A Solution Architect at Infusion  I run the Canary Wharf.NET User Group  I blog at
Real world Windows Phone development Igor
Building Silverlight Applications Using the MVVM pattern An Introduction by Peter Messenger Senior Developer – Qmastor
BESUG Keynote  Gill Cleeren Microsoft Regional Director Benelux MVP ASP.NET Software architect Ordina  Blog:  Mail:
Development of mobile applications using PhoneGap and HTML 5
© 2014 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg.
Hot Tuna CROSS PLATFORM DEVELOPMENT WITH.NET, XAMARIN AND MVVMCROSS.
READING, WRITING, BINDING, VALIDATING AND VISUALISING YOUR DATA Business value with Silverlight.
.NET Database Technologies: Introduction to WPF and Entity Framework DataBinding.
Web programmeringSilverlight NOEA / PQC 2007 Silverlight From: Gill Cleeren blog.n-technologies.be.
Target: dependency property Source: any public property CLR and WPF properties Target: dependency property Source: any public property CLR and WPF properties.
Introduction to Mobile Programming. Slide 2 Overview Fundamentally, it all works the same way You get the SDK for the device (Droid, Windows, Apple) You.
1 Intro XAML Attribute syntax & property syntax Panels Reusable resources Controls Data binding Steen Jensen, spring 2014.
An Introduction to Silverlight Matt Harrington Developer Evangelist, Microsoft October 20, 2011.
Ronnie Saurenmann Principal Architect Microsoft Switzerland blogs.msdn.com/swiss_dpe_team.
Getting Started with Caliburn.Micro and Windows Phone 7 Gary Ewan Park Twitter: Blog:
LAYOUT CONTROLS. XAML Overview XAML : eXtensible Application Markup Language pronounced (ZAMEL) is a markup language used to design user interfaces XML-based.
Windows Phone MVVM and Unit Testing Step by Step Andy Wigley Windows Phone Development MVP, Mobile Software Consultant APPA Mundi Ltd WPH208.
Windows Presentation Foundation Maximilian Knor Developer Evangelist Developer and Plattform Group Microsoft Österreich
New Features Overview. Agenda Silverlight - Intro Silverlight 3 New Features Overview with Demos, Demos and Demos… RIA Services Overview Demos, Demos,
Nikhil Kothari Software Architect Microsoft Corporation Session Code: WUX312.
Windows 10 UWP MVVM In Depth
© Copyright SELA software & Education Labs Ltd Baruch Hirsch St.Bnei Brak Israel
1 Catching up on Rich Clients (round 1) Mike Ormond, Mike Taulty Developer & Platform Group Microsoft Ltd
Friday, March 8 Creating real Custom Controls Kelvin van Geene 12:15.
Windows Phone Materi 4. Control Layout & Grouping Border Canvas ContentControl Grid Panorama Pivot StackPanel VirtualizingStackPanel ScrollViewer.
V 1.0 Programming III. XAML Data Binding I.. V 1.0ÓE-NIK, 2014 XAML namespaces Namespaces define the allowed tags and attributes The one without the prefix.
Model View ViewModel Architecture. MVVM Architecture components.
Windows 8 apps and the MVVM pattern SILVERLIGHTSHOW.NET WEBINARS SERIES GILL CLEEREN, October 16 th
Programming with MVVM Miguel A. Castro Architect -
© Copyright SELA software & Education Labs Ltd Baruch Hirsch St.Bnei Brak Israel
/DEV/TM #1 Building Cross-Platform Apps with Xamarin and MvvmCross Flavius-Radu DEMIAN.
THE SOURCE OF 4 TH & MAYOR: CODE, HACKS, TRICKS Jeff Wilcox Senior Software Development Engineer Microsoft SESSION CODE: WPH308 (c) 2011 Microsoft. All.
The cutting edge event for ITPros and Devs December 7-8, 2013 Athens, Greece Fix it once use it everywhere Elias Markelis MCT, Windows Phone Enthusiast.
Data Binding, Binding Properties Doncho Minkov Telerik School Academy Technical Trainer
Adam Schultz MVVM and WPF. MVVM Model, View, ViewModel A software architecture designed to separate out User Interface design, Business Logic, and Data.
Introduction to Silverlight Development Pavel Yosifovich CTO, Matrix Global; Senior Instructor, Hi-Tech College
In Windows 8 Store Applications
Real world Windows Phone development
Universal Windows Platform XAML Custom Controls start to finish
MVVM Made Simple with Prism
Ben Riga 02 | Basics of View Models Ben Riga
Build Windows 10 UWP MVVM Apps with Prism
It’s a Knockout! MVVM Style Web Development
Miguel A. Castro Architect IDesign
WPF AKEEL AHMED.
Introduction to the MVVM Pattern
An introduction to MVVM using WPF NISCHAL S
XAML Deep Dive for Windows & Windows Phone Apps Jump Start
04 | UI Presentation & XAML
What’s new for Windows 8 Devs Part 2
XAML Deep Dive for Windows & Windows Phone Apps Jump Start
Bringing existing managed code into Metro style apps
Data/Code driven UI using WPF part 2
An Introduction to the Model-View-ViewModel Pattern
Presentation transcript:

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

Inspirirani ljudima. Ugasite mobitele. Hvala.

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

FRE E

Inspirirani ljudima. unflwd.m e + demos

Inspirirani ljudima. TASK REQUIREMENT PROBLEM IDEA OPEN SOURCE SOLUTION

Inspirirani ljudima. Maintainable Testable Easily designed Well structured MVVM pattern

View DataContext, Converters, Animations In some cases – code behind is OK ViewModel Properties, Commands Databinding Presentation logic Model INotifyPropertyChanged XAML platforms Multiplatform MVVM

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

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

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

MVVM No frameworks needed, but… ViewModelBase ICommand implementation RelayCommand Design mode Messenger implementation DI (constructor injection)

MVVM Light Lightweight & the simplest Nuget MIT license Laurent Bugnion Accelerated MVVM development! Many alternatives Simple MVVM Toolkit, Caliburn.Micro, Catel.MVVM …

Inspirirani ljudima. DEMO MVVM Light

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

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

Cimbalino – location services

Inspirirani ljudima. Use binding with ApplicationBar Cimbalino toolkit

Bindable ApplicationBar… Not a DependencyObject Localization Events -> VM Commands ApplicationBarBehavior ApplicationBarBehaviorIconButton ApplicationBarMenuItem

… and a bindable MultiApplicationBar

Inspirirani ljudima. DEMO Cimbalino toolkit

Inspirirani ljudima. More UI controls Windows Phone toolkit Coding4Fun toolkit

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

Windows Phone Toolkit WP Developer Platform Team Nuget Ms-PL license UI Controls Transitions Effects Extensions

Coding4Fun Clint Rutkas and Coding4Fun team Nuget Ms-PL license AudioControlNetworkStorage

C4F ToastPrompt

Inspirirani ljudima. DEMO Windows Phone & Coding4Fun Toolkits

Inspirirani ljudima. Reorder items in a listReorderListBox

Reorder items in a list Propagate change to inner (Observable) collection Very simple! Nuget Ms-PL license

ReorderListBox

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

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

Inspirirani ljudima. DEMO ReorderListBox & WP Theme Manager

Inspirirani ljudima. Work with imagesWriteableBitmapEx

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[]...)

Inspirirani ljudima. Cache dataQ42.WinRT

Windows Phone and WinRT MIT License DataLoader Easy Loading/Finished/Error binding DataCache Input cache key and API call ImageExtensions.CacheUri

Inspirirani ljudima. DEMO Q42.WinRT

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

ModernUI charts Not available on Nuget (Silverlight dll) Ms-PL license ColumnChart PieChart BarChart Doughnut Chart Radial Gauge Chart

ModernUI Charts code sample

Inspirirani ljudima. Remind user to rate appRate My App

By Nokia Custom license Nuget Alternative ReviewBugger

Inspirirani ljudima. DEMO Rate My App

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...

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

Inspirirani ljudima. Pitanja i odgovori.