Denne artikel stammer fra det trykte Computerworlds arkiv. Artiklen blev publiceret den CTO d. 2. september 2005.
Platforme
Ved hjælp af Mono bliver der i dag udviklet .Net-applikationer til Linux, og Windows-programmer porteres til Linux.
Hvad der for nogle år siden startede som en vision, ser ud til at blive realiseret i dag. .Net-applikationer kan eksekveres på Linux.
Tilbage i år 2000 overdrog Microsoft programmeringssproget C# og den underliggende infrastruktur til afvikling af .Net-programmer, Common Language Infrastructure (CLI), til standardiseringsorganisationen ECMA.
Hensigten var blandt andet at gøre .Net til en teknologi, der kan anvendes på tværs af platforme. Microsoft implementerede derfor C# , CLI samt en række .Net-værktøjer på FreeBSD og udgav kildekoden under sin
Shared Source-licens. Siden har Microsoft dog ikke gjort noget aktivt for at udbrede .Net på andre platforme end Windows.
Derimod har Mono-projektet siden 2001 arbejdet målrettet på at realisere ideen om .Net som en udviklingsplatform på forskellige operativsystemer. Mono-projektet blev startet af programmøren Miguel de Icaza, der blandt andet stod bag Gnome-desktoppen.
Da Miguel de Icazas firma Ximian i 2003 blev købt af Novell, blev der sat ekstra skub i udviklingen af Mono. I dag er der cirka 20-25 udviklere hos Novell, der arbejder som Mono-udviklere, og derudover er der en række frivillige udviklere. Ifølge Miguel de Icaza har i alt 300 udviklere adgang til det fælles kode-repository for Mono-projektet, og han skønner, at der i snit er cirka 60 aktive udviklere.
Ud over implementeringen af de to ECMA-standarder C# og CLI stiller Mono en række klassebiblioteker som ASP.NET, ADO.NET og Windows.Form til rådighed. Det gør Mono interessant for både .Net-udviklere og it-chefer, der ønsker at anvende Linux.
.Net-udviklerne får med Mono mulighed for at udvide deres potentielle marked med Linux-platformen, og it-cheferne kan anvende Mono til at portere eksisterende Windows-applikationer til Linux.
München har i deres Linux-projekt anvendet Mono til at køre .Net-applikationer på Linux. Det tyske konsulentfirma Völcker Informatik AG havde en række af sine såkaldte ActiveEntry-systemer installeret hos bystyret i München, da Müncen besluttede at udskifte Windows med Linux på bystyrets servere.
ActiveEntry-systemerne, der blandt andet består af help desk-applikationer, var alle Windows-applikationer.
Ved at omskrive applikationerne i C# kunne Völcker Informatik anvende den samme kilekode til at få systemerne til at køre på både Windows og Linux.
Også herhjemme er der fokus på anvendelsen af Mono som porteringsværktøj. Ringe og Ryslinge kommuner satser på, at det er muligt at flytte en række .Net-baserede klienter, som anvendes til KMD's fagsystemer, over til Linux ved hjælp af Mono.
Ifølge Miguel de Icaza kræver det en vis indsats at flytte applikationerne, da der kan være små forskelligheder mellem platformene. Det vil dog ofte kun være et spørgsmål om et par uger, der skal bruges på migreringsproblemer.
Til forskel fra München-projektets .Net-applikationer, som var serverbaserede, er Ringe og Ryslinge kommuners applikationer klientbaserede, hvilket gør dem afhængige af klassebiblioteket Windows.Forms, der håndterer den grafiske brugergrænseflade. Klassebiblioteket er planlagt til at komme med version 1.2 af Mono, der er endelig klar i løbet af september.
Windows.Forms kan dog anvendes allerede nu, og KMD kan trække på Mono-udviklernes hjælp til porteringen, ganske som Völcker Informatik gjorde, da de skulle portere deres applikationer.
Mono er dog ikke kun et spørgsmål om at portere fra Windows til Linux. Virksomheder, der udvikler ved hjælp af Mono, er begyndt at dukke op. Eksempelvis OpenLink Software, der har anvendt Mono til at udvikle sin Virtuoso Universal Server, der er en samling af database-, middleware- og webservices-teknologier.
Novell har også valgt at tage sin egen medicin og baserer udviklingen af en række strategiske produkter på Mono. Blandt andet er iFolder, som er Novells nye filsystem, baseret på Mono, ligesom Beagle, en desktop-søgeteknologi, er Mono-baseret.
Billedtekst:
målrettet Mono-projektet blev startet af programmøren Miguel
de Icaza, der blandt andet stod bag Gnome-desktoppen. Mono indeholder to softwarestakke. En, der gør Mono kompatibel med Windows .Net, og
en anden, der er specifik for Mono.