Thiago Cruz Soares
Senior Software Engineer
thiago.soares@gft.com
DESIGN – DEVELOP - INTEGRATE TEST MONITOR
LEARN
Shared C# codebase • 100% native API access • High performance
iOS C# UI Windows C# UIAndroid C# UI
Shared C# Mobile C# Server
Linux/Mono
CoreCLRAzure
Shared C# Client/Server
Shared C# codebase • 100% native API access • High performance
Shared C# Mobile
Shared C# Client/Server
C# Server
Abordagem tradicional
Xamarin
Com Xamarin.Forms:
Mais código compartilhado
iOS C# UI Windows C# UIAndroid C# UI
Shared C# Backend
Shared UI Code
Shared C# Backend
Xamarin - 100% de códigos nativos para
iOS, Android e Windows
iOS, Android & Windows Apps com C#
iOS, Android and
Windows
Cross-platform C#
Acelerando o
desenvolvimento com
código compartilhado
Azure Mobile
Services component
Windows, iOS e Android apps
com
Visual Studio
C# e .NET para mobile suporte generics, lambdas,
anonymous methods, delegates, async-await e
Portable Class Libraries
Microsoft.Phone Microsoft.Networking Windows.Storage Windows.Foundation Microsoft.Devices
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
MapKit UIKit iBeacon CoreGraphics CoreMotion
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
Text-to-speech ActionBar Printing Framework Renderscript NFC
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
C# Is Awesome
See the Difference – Attributed Strings
C# com XamarinObjective-C
C# com XamarinObjective-C
C# com XamarinJava
C# & Async com Xamarin
iOS, Android, Windows, Windows Phone, Mac
2.5+ Bilhões de devices!
Obrigado
Thiago Cruz Soares
Senior Software Engineer
thiago.soares@gft.com
TDC2016SP - Cross-Platform Development with C#
TDC2016SP - Cross-Platform Development with C#

TDC2016SP - Cross-Platform Development with C#

Editor's Notes

  • #11 Talk Track:
  • #15 Statically typed so you avoid a pitfall of errors that afflict other languages. Use LINQ in your Xamarin projects to query, filter and select data from in-memory arrays, or from databases such as SQLite. Parsing XML is easy Setting up event handling is a breeze Intellisense, lambdas, etc. are all awesome.
  • #16 Here is an example of creating an attributed string. Take advantage of C# features and set properties easily
  • #17 Here we are looking for the PacketSizeUpperBound, 1 line of code
  • #18 Here we can see how easy it is just to do a += for an event and not have to implement a bunch of listeners every time. Easy to read, string.Format, using args, etc. In fact we can make this call Async/Await by just adding async to the delegate!
  • #21 Take advantage of everything great about C# and now write code that can be shared across all platforms iOS Android, Mac Windows (WPF, Store, Phone, ASP.NET, etc)