Visual Studio Summit 2014 - Portable Class Library
-
Upload
thiago-lunardi -
Category
Technology
-
view
81 -
download
1
Transcript of Visual Studio Summit 2014 - Portable Class Library
![Page 1: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/1.jpg)
Visual Studio Summit 2014
Thiago Lunardi, Analista de Desenvolvimento
Desenvolvendo para Windows Phone 8 e
Windows 8 com Portable Class Libraries
ucast!
MTAC, MCSD, MCTS, MCP, Scrum Developer
![Page 2: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/2.jpg)
Visual Studio Summit 2014
Desenvolvedor Junior Cross-Platform
Desenvolvedor Pleno Windows Phone e Store
Desenvolvedor Senior ASP.NET
Desenvolvedor Master ASP 3.0
Thiago Lunardi
![Page 3: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/3.jpg)
Visual Studio Summit 2014
A mãe da inovação
Necessidade
![Page 4: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/4.jpg)
Visual Studio Summit 2014
NecessidadeA mãe da inovação
![Page 5: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/5.jpg)
Visual Studio Summit 2014
NecessidadeA mãe da inovação
2 Plataformas
3 Aplicações
6 PROJETO$
![Page 6: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/6.jpg)
Visual Studio Summit 2014
Necessidade
• Repetição de códigos entre projetos = Repetição da mesma tarefa
• Se bug na APP Windows Phone → Bug na APP Windows Store =
Repetição da mesma correção;
A mãe da inovação
• Atraso no desenvolvimento de outras features;
• Aumento proporcional do custo de desenvolvimento:
– “Se HH for R$ X / hora → 2 x R$ X / hora”
– “Se horas de sono for Y horas → Irá dormir menos horas”
• Desenvolvedor fica desmotivado pela repetição, e não produção;
![Page 7: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/7.jpg)
Visual Studio Summit 2014
Assemblies portáveis
Portable Class Library
![Page 8: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/8.jpg)
Visual Studio Summit 2014
Portable Class Library
Portable
Class
Library
Agregando valores
![Page 9: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/9.jpg)
Visual Studio Summit 2014
Portable Class LibraryBenefícios, recursos e facilidades
• Agrega valor ao desenvolvimento multi-plataforma;
• Cria “portable assemblies” referenciáveis;
• Gera o mínimo de tipagem para:
– .NET Framework
– Silverlight
– .NET for Windows Store apps;
– Windows Phone
– Xbox
![Page 10: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/10.jpg)
Visual Studio Summit 2014
Portable Class LibrarySuporte de funcionalidades entre plataformas
![Page 11: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/11.jpg)
Visual Studio Summit 2014
Portable Class LibraryDetalhada documentação fornecida pelo MSDN
![Page 12: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/12.jpg)
Visual Studio Summit 2014
Portable Class LibraryTemplates de projetos
Templates de projetos PCL disponíveis a partir do Visual Studio 2010 Service Pack 1 + Extensão
![Page 13: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/13.jpg)
Visual Studio Summit 2014
Portable Class LibraryTemplates de projetos
“One Source
One Project
One Binary
Multiple Platforms!”
![Page 14: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/14.jpg)
Visual Studio Summit 2014
Portable Class Library Project
Demonstração
![Page 15: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/15.jpg)
Visual Studio Summit 2014
Portable Class Library + MVVMModel View ViewModel
Views (Platform-specific)
How to display information
Written in XAML
View Models (Portable)
What information to display
Flow of interaction
Models (Portable)
Data objects
Business logic
Etc.
![Page 16: Visual Studio Summit 2014 - Portable Class Library](https://reader030.fdocuments.in/reader030/viewer/2022032714/55abe0651a28ab3d488b4836/html5/thumbnails/16.jpg)
Visual Studio Summit 2014
Portable Class Library + MVVMReferencias para implementar PCL + MVVM
• System.Collections.ObjectModel
– ObservableCollection<T> class
– ReadOnlyObservableCollection<T> class
• System.Collections.Specialized
– INotifyCollectionChanged class
– NotifyCollectionChangedAction class
– NotifyCollectionChangedEventArgs class
– NotifyCollectionChangedEventHandler class
• System.ComponentModel
– DataErrorsChangedEventArgs class
– INotifyDataErrorInfo class
– INotifyPropertyChanged class
– System.Windows.Input.ICommand class
– All classes in the
System.ComponentModel.DataAnnotations
namespace