Top Banner
Sami .NET kóði fyrir Windows, Linux og Mac OsX Guðmundur Jón Halldórsson http://www.gudmundurjon.net Five Degrees
31

UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Nov 10, 2014

Download

Technology

How to run the same .NET code for Windows, Linux, and OsX
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Sami .NET kóði fyrir Windows, Linux og Mac

OsX

Guðmundur Jón Halldórssonhttp://www.gudmundurjon.net

Five Degrees

Page 2: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

“There are two types of speakers: those that are nervous and those that are liars”

Mark Twain

Page 3: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono project – hvað er það?

• C# (async, LINQ, dynamic, ...)• F#• Java• Scala• Boo• Nemerle• Visual Basic .NET

• Python• JavaScript• Oberon• PHP• Object Pascal• LUA• Cobra(meira)

Mono styður flest mál sem hægt er að compile-a á IL

Gudmundur Halldorsson
Page 4: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Hvar keyrir Mono project – hvað er það?An open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft.NET... Af því að við viljum nota .Net á Linux

• Mono Runtime• Mono IL Contrast (gasnview, ilcontrast, gui-compare, mperfmon, gsharp)• Mono Documentation• MonoDeveloper (C, C++, C#, Vala, Boo, Java, Nemerle, Ilasm, ASP.NET, Mono/GNU

Debugger)

Page 5: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Á hverju keyrir Mono

• Linux• OS X• BSD• iPhone• Android

• PlayStation 3• Wii• Xbox 360• Microsoft Windows• x86, x64, ARM, s390, PowerPC,

SPARC, IA64

Page 6: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Er allt hægt með Mono

• Mono styður allt til og með .NET 4.0• NEMA WPF, WF og hluta úr WCF

• Prófa að keyra Mono Migration Analyzer

Page 7: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX
Page 8: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Hvað er í Mono pakkanum

BASE CLASS LIBRARY

ASP.NETADO.NETCore

LINQ DLR WCF

MONO CLASS LIBRARY

Mono Addins Mono Cecil

Mono Unix

MONO RUNTIME

JIT AOT(Ahead of time compilation)

C# F# VB Java JS Boo PHP Lua

Page 9: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono - .Net

.NET 1.1C# 1.0Core Libraries 1.1: mscorelib, System, System.XmlASP.NET 1.1ADO.NET 1.1Winforms/System.Drawing 1.1System.TransactionsSystem.ManagementSystem.EnterpriseServices

Page 10: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono - .Net

.NET 2.0C# 2.0 (generics)Core Libraries 2.0: mscorelib, System, System.XmlASP.NET 2.0 (ekki vefpartar)ADO.NET 2.0Winforms/System.Drawing 2.0

Page 11: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono - .Net

.NET 3.0WCF (Silverlight 2.0 subset)WPF (Ekki ráðgert)WWF (Verður útfært síðar)

Page 12: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono - .Net

.NET 3.5C# 3.0System.CoreLINQASP.Net 3.5ASP.Net MVCLINQ to SQL

Page 13: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono - .Net

.NET 4.0C# 4.0ASP.Net 4.0, ASP.Net MVC 1, MVC 2 and MVC3System.NumericsManaged Extensibily Framework (MEF)Dynamic Language RuntimeClient side OData, EntityFramework, Parallel Framework, PLINQCodeContractsServer-side OData

Page 14: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono - .Net

.NET 4.5C# 5.0 - async supportAsync Base Class Library UpgradeMVC4 – (að hluta, ekki async)ASP.NET 4.5 Async Pipeline

Page 15: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Viðmótsforritun með Mono

• Winforms• Gtk# (GTK+ og GNOME)• Qyoto• WX.Net• MonoCurses• MonoMac• iOS• Android(og fleiri ...)

• Moonlight (Silverlight)

Page 16: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Gagnagrunnar og Mono

• SQLite• PostgreSQL• MySQL• Sysbase• Oracle• SQL Server

Page 17: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono C# Shell

Page 18: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX
Page 19: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono desktop

Banshee F-Spot Pinta2 Unity3d

Page 20: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

MONO Developer

Page 21: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono Debug

Page 22: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

MONO forritun

Page 23: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

MONO forritun - vefur

Page 24: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

MONO forritun - vefþjónustur

Page 25: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Mono Framtíðin

• Núverandi útgáfa er 3.2.4• Það verður fullur stuðningur við .NET 4.0 (Nema WPF)

Xamarin sér um Mono.Android og Mono.iOs

Page 26: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX
Page 27: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Stýrikerfisnotkun

Page 28: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX
Page 29: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Android vs. iOS vs. Windows Phone

Page 30: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Xamarin Studio

Page 31: UTMessan 2014 - Same .NET code for Windows, Linux, and OsX

Áður en þú ferð - spurningar

#Twitter@gudmundurjon

#LinkedInhttp://www.linkedin.com/in/gudmundurjon

#Bloggiðhttp://www.gudmundurjon.net