Cross-Platform .

NET:Mono and MySQL

Presented by, MySQL & O’Reilly Media, Inc.

•Joseph Hill •Product Manager for Mono, Novell •jhill@novell.com •Joe Audette •Founder, Source Tree Solutions, LLC •joe.audette@gmail.com

What is Mono?
Mono (mō•nō), n:
2.A complete and modern development platform for Linux 3.The necessary software to develop and run .NET client and server applications on Linux, Solaris, Mac OS X, Windows, and Unix 4.A thriving open source project with a growing community What Can You Do with Mono?

Migrate Microsoft .NET desktop and server applications to Linux without significant investment in rewriting code Target multiple platforms and increase addressable market Leverage existing expertise in computer languages for more efficient development

Multi-platform, Multi-language
C# Visual Basic Boo Java (IKVM) F# JavaScript IronPython IronRuby
Common Intermediate Language Code Generation: Just-In-Time or Ahead-of-Time

x8 6 SPARC

StrongARM

s390

PowerPC

Mono® 1.0 (7/04) .NET 3.0 / .NET 3.5 .NET 2.0 .NET 1.1
Server: ASP.NET Gtk# WinForms
Upgrades to stack. WCF WF WPF

Upgrades to stack.

C# 2.0 Generics

C# 3.0 LINQ

Mono® 1.2 (11/06) .NET 3.0 / .NET 3.5 .NET 2.0 .NET 1.1
Server: ASP.NET Gtk# WinForms
Upgrades to stack. WCF WF WPF

Upgrades to stack.

C# 2.0 Generics

C# 3.0 LINQ

Mono Today: Mono 1.9 – March 2008
 ASP.NET 1.1 & 2.0 Web Forms & Web Services Support for ASP.NET AJAX  ADO.NET 1.1 & 2.0 SQL Server, Oracle, PostgreSQL MySQL, Sybase, DB2, SQLite, etc  Win Forms 1.1 & 2.0  C# 1.0, 2.0, 3.0 LINQ  GTK#

Mono® 2.0 (Summer 08) .NET 3.0 / .NET 3.5 .NET 2.0 .NET 1.1
Server: ASP.NET Gtk# WinForms
Upgrades to stack. WCF WF WPF

Upgrades to stack.

C# 2.0 Generics

C# 3.0 LINQ

Mono® 3.0 (Olive) .NET 3.0 / .NET 3.5 .NET 2.0 .NET 1.1
Server: ASP.NET Gtk# WinForms
Upgrades to stack. WCF WF WPF

Upgrades to stack.

C# 2.0 Generics

C# 3.0 LINQ

Mono® Migration Analyzer (MoMA)
     Inspects CIL byte code Looks for uses, compares with implementation Missing methods “Todo” methods (flagged with an attribute) MoMA is the best place to start; full report of how easy your existing app will be to migrate

http://www.mono-project.com/Moma

mojoPortal – What Is It?
 Content Management/Web Site Framework  Project began with the idea of supporting MySql and Mono  Current Features – Blogs, Forums, Calendars, Maps, Image Gallery, Ecommerce, and more  Download it from www.mojoportal.com

mojoPortal Architecture

Cross Platform Development
 Visual Studio 2005/2008  MonoDevelop

Developing with MonoDevelop
 Free .NET IDE for Linux and Mac OS X Code completion Refactoring Class management Built-in help VS 2005 project support Gtk# designer support ASP.NET support C#/VB/Boo/C/C++ support Much More

Getting Mono
 Mono http://www.mono-project.com/Downloads  MoMA http://www.mono-project.com/MoMA  Moonlight http://www.mono-project.com/Moonlight http://go-mono.com/moonlight  Mono projects http://packages.opensuse-community.org/  mojoPortal http://www.mojoportal.com

Mono® Stacks
ASP.NET ASP.NET ASP.NET

MySQL Mozilla

MySQL/Postgress

Gtk#/Gnome Bonjour Identity Sqlite#

Evolution#

D-Bus#

Mozilla

Novell APIs: Novell iFolder iFolder, LDAP
GTK# Desktop: GTK# Gnome#

ADO.NET ADO.NET ADO.NET

Apache Mono OpenOffice

Apache Mono

Novell LDAP

Cecil

Windows.Forms Windows.Forms

Windows.Forms

Java Java Compatibility Compatibility Addins Mono Libraries

Rocks

Microsoft Compatibility Libraries

.NET Stack

Mono Stack
Virtual Machine: Multilanguage Mono Runtime
(Implementation of ECMA #335)

Platform Support
 32 bit:
x86 SPARC S390, IBM ARM family PowerPC

 Operating Systems:
Linux Solaris MacOS X Windows Nokia/Maemo

 64 bit:
x86-64 s390x, IBM Itanium

 Contributed ports:
Alpha, MIPS (not finished).

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.