1 / 23

- Cristian Prieto

Who am I?. I'm a cross platform developer from a tropical and beautiful placeWas a Linux guy for long time in the pastOpen Source contributorSenior Software Developer for ReadifyPolyglot developer, Microsoft .Net fan, ASP.NET MVPMulti-cat guy, husband, blogger, gamer, those kind of thingshttp

tex
Download Presentation

- Cristian Prieto

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    2. Who am I? I’m a cross platform developer from a tropical and beautiful place Was a Linux guy for long time in the past Open Source contributor Senior Software Developer for Readify Polyglot developer, Microsoft .Net fan, ASP.NET MVP Multi-cat guy, husband, blogger, gamer, those kind of things… http://www.cprieto.com or @cprieto

    3. Agenda What’s mono anyway? What can mono give me? Can I port my application to Mono? Tips, highlights, some advices about porting my apps to mono Questions…

    4. Assumptions You know what code is You know what .Net is You are already a .Net developer You know there’s life beyond Windows You are curious about monkeys… You know a mono is a primate

    5. What’s mono anyway? Tip: this is not a biology class…

    6. Ok, What’s not Mono… Because sometimes myths are just myths…

    7. What it is not… Mono is NOT a Linux [only] port to .Net Mono is NOT attached to Microsoft [directly] Mono is NOT just a compiler or interpreter Mono is NOT a .Net copy Mono is NOT dead

    8. Mono is more than a monkey… MonoTouch MonoMac MonoDroid MonoDevelop IDE Mac and Windows Git and Svn support Many mono libraries Cecil, Zeroconf, webkit#, etc. LLVM compiler New Garbage Collector Sharpen Moonlight 4 C# Compiler as a Service Mono in games Mono in Servers

    9. Just a simple demo… Is it a bird? Is it a plane? No it’s a Compiler Service!

    10. What’s supported in Mono? Ok, you got me…

    11. Microsoft .Net libraries C# 4.0, 3.0, 2.0 ASP.NET System.Core Core libraries MEF DLR (ipy, irb) Code Contracts (partially) LINQ, LINQ to SQL ADO.NET NuGet OrchardCMS F# VB XNA (MonoXNA) WCF (partially) OData (client side)

    12. What’s not supported Windows Presentation Foundation System.Management Windows P/Invoke System.EnterpriseServices Cross process transactions COM WF (WF 4.0 will be implemented)

    13. Porting your application Crossing the river…

    14. Stylizer by Skybound

    15. PlasticSCM by Codice

    16. Unity3D by UNITY

    17. Core and basics Mono is CIL compatible with Microsoft implementation What about data access? You cannot use EF yet But you can use NHibernate! Ok, you can use Mindscape’s Lightspeed too… VistaDB, MySQL, PostgreSQL, Firebird, SQLServer, SQLite Do I have some other usefull libraries to use? Bitsharp, Mono.Addins, MonoTorrent, GitSharp, Mono.Zeroconf, many others! You can use MonoDevelop IDE ?

    18. Pay attention to details… Paths are not the same… Interop is not your friend… COM is not your mate… Did you really need that API? What about cross platform libraries? MoMA is your ally!!!

    19. What about my user interface? I mean, I need to show something…

    20. Plenty of UI options… Winforms Your old “good” friend? Gtk# Qyoto WX.Net MonoCurses MonoMac* iOS/Android

    21. Simple Guidelines Design your code to be presentation agnostic Independent Business Logic Presentation Layer Just follow the advise of your pattern loving buddies Model, View, Controller (MVC) Model, View, Presenter (MVP) Model, View, ViewModel (MVVM)

    23. What about web apps? ASP.NET Webforms ASP.NET MVC1, MVC2 Portions of ASP.NET MVC3 Monorail, FubuMVC, OpenRasta OrchardCMS NuGet Moonlight 4 Magical things… like Manos de Mono! (no cross platform… yet!)

    24. Questions? Come on! Don’t be so shy!

More Related