Do que trata o artigo

Este artigo trata do Projeto Mono e da IDE MonoDevelop. O projeto Mono visa criar um runtime .NET que funcione em sistemas operacionais como o Linux e o MacOS X. Ao final deste artigo você será capaz de criar aplicações visuais no Windows e rodá-las normalmente no Linux e vice-versa.


Para que serve

O projeto Mono garante a interoperabilidade de aplicações criadas em .NET, habilitando-as para serem executadas sobre os sistemas operacionais Linux e MacOS X, garantindo assim a portabilidade de suas aplicações .NET para diferentes ambientes.


Em que situação o tema é útil

Especialmente quando existe a necessidade de se criar sistemas visando plataformas diferentes com o objetivo de aumentar as possibilidades de emprego de uma tecnologia em outros nichos de mercado.

Resumo do DevMan

O Projeto Mono é uma excelente possibilidade para habilitar softwares desenvolvidos para .NET nos ambientes Linux e MacOS X. Os executáveis criados no ambientes Windows podem ser executados em outros sistemas operacionais (que contenham a máquina virtual Mono) sem necessidade de recompilação. O desenvolvimento de soluções também pode ser feito no Linux através do IDE MonoDevelop.

Autores: Rodrigo Rocha, Marcelo Rocha e Arthur Lopes

Atualmente liderado pela Novell, o Mono é um projeto que visa criar runtimes e ferramentas compatíveis com a plataforma .NET, incluindo um compilador C#. O Mono está disponível nos sistemas operacionais Linux, BSD, UNIX, Mac OS X, Solaris e Windows. O Projeto teve início com Miguel de Icaza que, desde o início da divulgação da documentação do .NET, dedicou-se a escrever um compilador C#. Sua empresa, a Ximian (incorporada à Novell), desenvolveu também outros produtos open source como o Bonobo e o Red Carpet.

A versão 1.0 do Mono foi lançada em 30 de junho de 2004. No Brasil, o projeto é fortemente divulgado pelo Mono Brasil (confira o endereço na seção de links ao final do artigo), cujo principal objetivo é disponibilizar canais de informação e ser um repositório de conhecimentos sobre o projeto, principalmente em português.

Alguns entusiastas do Linux frequentemente repudiam o Mono, por entenderem que é um software ligado à Microsoft. Muitas vezes um simples anúncio de sistema portado para Linux através do Mono gera uma verdadeira “guerra de comentários” em fóruns especializados. Enquanto uns entendem que é uma forma de se permitir facilmente a criação e adaptação de projetos .NET para o Linux, outros pregam que é uma forma inconveniente de se atuar sobre o sistema de software livre mais conhecido do mundo. Para ajudá-lo a tomar posição nesta história escrevemos este artigo para você.

Já o MonoDevelop é um IDE free destinado ao desenvolvimento para .NET com linguagens como o C#, incluindo C/C++ e Visual Basic.NET. É um IDE multi-plataforma, sendo suportado em ambientes Windows, Linux e Mac OSX. Permite manter um único código para várias plataformas, suportando inclusive códigos gerados pelo Visual Studio. Suporta o desenvolvimento de aplicações tanto para Desktop quanto para Web. Possui recursos avançados de um editor, como code templates e code completion. Conta com um depurador integrado. Também funciona com integração a outras ferramentas que adicionam funcionalidades específicas, como controle de versão, testes unitários, deployment etc. Até o fechamento desta edição, a versão atual disponível para download é a 2.4.

Nota do DevMan

Os desenvolvedores dos projetos Mono e Moonlight (o “Silverlight do Mono”) tentam sempre acompanhar as versões mais recentes das tecnologias disponibilizadas pela Microsoft. Entretanto sempre existe uma “janela” de tempo entre as versões. Atualmente o Moonlight é compatível com a versão 2.0 do Silverlight. Quanto ao Mono, sua API está “em algum lugar entre o .NET 2.0 e .NET 4.0”, segundo o site do próprio projeto. Importante destacar que partes muito importantes do .NET como Linq e WCF já constam na lista de features da versão atual do Mono. Com relação ao futuro (versão 3.0) as perspectivas são ótimas: suporte total ao .NET 4.0, Windows Workflow 4 e uma nova geração de Garbage Collector.

...

Quer ler esse conteúdo completo? Tenha acesso completo