22
SAPO Codebits 13 Novembro 2008 Andreia Gaita Mono e C# no desktop Open Source .NET

Mono Codebits

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Mono Codebits

SAPO Codebits13 Novembro 2008

Andreia Gaita

Mono e C# no desktopOpen Source .NET

Page 2: Mono Codebits

www.mono-project.com 2

O que é o Mono?

Implementação open source dos standards ECMA 334 (C#) e ECMA 335 (CLR)Conjunto de bibliotecas de suporte

Page 3: Mono Codebits

www.mono-project.com 3

As peças

Mono Runtime

Microsoft Compatibility Libraries Mono Libraries

ASP.NET

ADO.NET

Windows.Forms

Java Compatibility

Managed D-Bus

Evolution#

Gnome#

Novell.LDAP

Rendezvous: mDNS

GTK#

Apache Mono

WebKit#

MySQL/Postgress/ZipLib

Compilers and Tools

Page 4: Mono Codebits

www.mono-project.com 4

Motivações

Aumento de produtividade−Uma plataforma moderna

−Uma linguagem de alto nível, genérica e flexível

−Um ambiente managed

Simplificação−Suporta muitas linguagens

−Reutilização de APIs

O Mono é agora a plataforma de escolha para algumas das mais inovadoras aplicações no

desktop.

Page 5: Mono Codebits

www.mono-project.com 5

Vantagens

Portabilidade−Sistemas OperativosFamília UNIX: Linux, OSX, Solaris, BSDs...Família Windows: NT, 2000, XP

−Arquitecturasx86, PowerPC, Amd64, Sparc, s390, IA64, ARM, Alpha, MIPSSuporte 64 bit

Desenvolvimento constante−Mais de 300 contribuidores

−Comunidade aberta

−34 programadores a tempo inteiro

Page 6: Mono Codebits

www.mono-project.com 6

Licenças abertas

O núcleo (runtime, VM, JIT) é LGPL−É mesmo Software Aberto: modificações têm que ser partilhadas

Algumas ferramentas e aplicações chave são GPL−GAPI

−MonoDevelop

O resto é MIT X11−Compilador

−Class libraries

Page 7: Mono Codebits

www.mono-project.com 7

O Mono hoje

Mono 2.0−.NET 2.0 completoC# 2.0 (nullable types, generics)ASP.NET 2.0ADO.NET 2.0Windows.Forms 2.0

−C# 3.0 LINQ e LINQ to XML

−Compilador VB.NET (com generics)

−Verificador IL

−Debugger (linha de comandos)

Page 8: Mono Codebits

www.mono-project.com 8

O Mono amanhã

Novo JIT linear

ASP.NET 3.5

MonoDevelop 2.0 com GUI debugging

Remote debugging

Silverlight 2.0

Novo GC generacional

Page 9: Mono Codebits

www.mono-project.com 9

Projectos paralelos

Monodevelop−IDE em C#

Mono debugger

Integração Java através do IKVM

Olive (.NET 3.0)

O

Gtk#

MoMA

Page 10: Mono Codebits

www.mono-project.com 10

Mono & Mobile

Suporta vários dispositivos baseados em LinuxArquitectura ARM é a mais comumJIT optimizado para ARM

Page 11: Mono Codebits

www.mono-project.com 11

Moonlight

Implementação oficial do Silverlight para LinuxSilverlight 1.0 é uma tecnologia para a Web−Browser plugin com acesso ao DOM

−API simples

−Motor gráfico, suporte para vídeo

O Silverlight 1.1 acrescenta:−Acesso mais completo ao runtime .NET

−Através do DLR, permite scripting com Javascript, Ruby, Python...

−... e qualquer outra linguagem suportada pelo .NET!

Com o Mono, é possível correr aplicações Silverlight no desktop

Page 12: Mono Codebits

www.mono-project.com 12

Moonlight

Page 13: Mono Codebits

www.mono-project.com 13

Bindings

WebKitGTK+Managed D-Busgnome-desktopZeroconfCairoOpenGLGIMPTaglibe muito mais...

Page 14: Mono Codebits

www.mono-project.com 14

Aplicações

Page 15: Mono Codebits

www.mono-project.com 15

Tomboy

Aplicação para tomar notas, com suporte de pesquisa, WikiWords, correcção de texto, exportação, plugins...

Page 16: Mono Codebits

www.mono-project.com 16

F-Spot

Uma gestão simples e eficaz do seu catálogo pessoal de fotografias, com ferramentas de correcção e exportação directa

para os sites mais populares.

Page 17: Mono Codebits

www.mono-project.com 17

Banshee

Gestão de música, vídeos, podcasts, suporta internet radio, sincroniza para iPod, só não faz café.

Page 18: Mono Codebits

www.mono-project.com 18

Monsoon

Cliente de torrents em Gtk#, baseado na biblioteca MonoTorrent (também em C#)

Page 19: Mono Codebits

www.mono-project.com 19

Tasque

Um gestor de tarefas que suporta múltiplos backends, para partilhar tarefas com outras aplicações.

Page 20: Mono Codebits

www.mono-project.com 20

GNOME Do

Um poderoso controlo remoto para o desktop. Não só corre aplicações, como também permite enviar mensagens, pesquisar

no desktop e na net, enviar emails, tocar música...

Page 21: Mono Codebits

www.mono-project.com 21

Como descobrir mais...

Page 22: Mono Codebits

www.mono-project.com 22

Por onde anda a comunidade

Site−www.mono-project.com

IRC−irc.gnome.org - #mono, #monodev, #moonlight

Mailing Lists−www.go-mono.com/forums

−www.mono-project.com/Mailing_Lists

Blogs−http://www.go-mono.com/monologue

YAY PONIES!!