semana de interop: projeto mono
DESCRIPTION
Semana de Interop - O projeto Mono : Aplicações .NET para sistemas Não WindowsTRANSCRIPT
![Page 1: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/1.jpg)
Projeto Mono: Aplicações .NET para Sistemas não windowsAlessandro de Oliveira BinharaMsc em Projetos ComplexosProjeto Mono Brasil
18/01/2010
![Page 2: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/2.jpg)
Agenda
Projeto MonoHistórico, Motivações, Rodmap, Features, CompatibilidadeEstrutura, Ferramentas, Modelo de Desenvolvimento mono
Builds, Testes, Contribuições
Portando AplicativosOrientações para porte de aplicativosAplicações no Linux , no Mac , no IPhoneAplicativos , Cases de Sucesso
Demonstração e CasesWindowsForms, GtkSharp, C# Shell, Empresas usuárias
![Page 3: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/3.jpg)
3
Nascimento do Mono
− Criado por Miguel de Icaza em 2001− Mono é uma implementação OpenSource do .NET
Permite a execução e desenvolvimento de software .Net em ambiente Não Windows.
− Criou o Gnome e a empresa Ximian para dar suporte ao gnome.
Miguel recebeu este ano o título da Microsoft de MVP C#
− Evolution- cliente de email− 17 desenvolvedores, 2 anos e meio, muito caro− Um problema do linux era ter boas ferramentas− Necessidade da criação de uma comunidade
![Page 4: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/4.jpg)
4
Motivações
![Page 5: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/5.jpg)
5
Microsoft lança o .NET
● Microsoft Lança a plataroma .Net
– Coloca o C# como um padrão
– O Core do .Net é colocado como padrão
– Padrões ECMA 334 , ECMA 335
● Plataforma Microsoft .Net
– Mult-linguagem
– Coletor de Lixo
![Page 6: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/6.jpg)
6
Multi-Linguagem .NET
![Page 7: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/7.jpg)
7
Estado AtualMono 2.6Lançado dia 15/12/2009 − MonoDevelop 2.2
− Mudou a licença para LGPL e MIT. Melhorias na interface, suporte Asp.NET MVC, Moonligth Suporte, suporte Windows e MACOSX, novos refactoring , suporte Iphone,
− WCF client e servidor, um subset exposto pelo by Silverlight 2.0.
− LLVM support, to improve performance on server/computational loads.
− LINQ para SQL usando o DbLinq.− Novo debuger integrado com o MonoDevelop e com o OSX.− csharp shell agora suporta auto-completion− 3.5 API agora está mais completa− MoonLigth 2.0 -> WEBCAST AMANHÃ !!!!− Esta versão esta integrando Microsoft's open sourced
− ASP.NET MVC, ASP.NET AJAX and Microsoft's Dynamic Language Runtime.
![Page 8: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/8.jpg)
8
Suporte C# 3.0
−mcs: compilador para rutime 1.1.
−gmcs: compilador para runtime the 2.0 runtime.
−smcs: compiledor para rutime 2.1para compilar aplicações Moonlight.
−dmcs: iniciado com Mono 2.6 para C# 4.0
Características já suportadas:
anonymous methods , iterators,partial classes , Generics , Nullable Types, friend assemblies , static
classes, property accessor accessibility, fixed buffers, external assembly alias,
namespace alias qualifier , inline warning control ,
Extension Methods, LINQ syntax, Expression trees,
Automatic properties, Lambda expressions,
Anonymous types.
![Page 9: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/9.jpg)
9
APIs
![Page 10: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/10.jpg)
10
Suporte ao Java
O IKVM é uma VM JAVA escrita em C# que possibilita executar byte code Java no Mono além de um conjunto de ferramentas para:
conversão bytecode (java) -> IL (mono)
e IL (mono)-> bytecode (java)
✔http://www.ikvm.net
![Page 11: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/11.jpg)
11
IronPython e IronRuby
− .NET é uma excelente plataforma para linguagens dinâmicas.
− Atualmente o IronPython IronRuby são financiado pela Microsoft e licenciados sob uma Lincensa de Software Livre.
− Serão integrados a próxima versão do Visual Studios.
− Já é possível Baixar e instala-los
− WEBCAST SEXTA!!!
![Page 12: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/12.jpg)
12
RoadMap
Mono 2.8− Remove support for .NET 1.1 Framework− Moonlight 3 Preview− MonoDevelop 2.4− Compacting GC− C# Compiler, Full C# 4.0 support − LINQ to SQL Beta
Mono 3.0 − C# Compiler− .NET 3.5+ compatibility
http://mono-project.com/Roadmap
![Page 13: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/13.jpg)
13
Runtime Mono
− É a máquina virtual do Mono
− O runtime do Mono está pronto e tem possibilidade de executar programas através de:
− um compilador JIT (mono), com e sem otimizações
− um interpretador (mint)− Atualmente estão trabalhando na implementação de um gerenciador de memória mais eficiente
− Os programas podem ainda ser precompilados com um Ahead-of-Time Compiler (aot)
![Page 14: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/14.jpg)
14
Plataformas Supported Architectures Runtime Operating system
s390, s390x (32 and 64 bits)
JIT Linux
SPARC (32) JIT Solaris, Linux
PowerPC JIT Linux, Mac OSX, Wii, PlayStation 3
x86 JIT Linux, FreeBSD, OpenBSD, NetBSD, Microsoft Windows, Solaris, OS X
x86-64: AMD64 and EM64T (64 bit)
JIT Linux, Solaris
IA64 Itanium2 (64 bit) JIT Linux
ARM: little and big endian JIT Linux (both old and new ABI), iPhone
Alpha JIT Linux
MIPS JIT Linux
HPPA JIT Linux
![Page 15: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/15.jpg)
Desenvolvimento do Mono
15
![Page 16: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/16.jpg)
Início do Mono
− Uso das ferramentas da microsoft− Como criar um compilador Csharp sem um
compilador.− Primeira versão do mcs foi escrita no Visual
Studio. − Inicialmente
− 5 engenheiros, Foco em aplicações desktop
− Toda a infra-estrutura do mono é escrita em C#
![Page 17: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/17.jpg)
17
Desenvolvedores
Rafael Teixeira, Alexandre Marcondes, Everaldo Canuto, Rodrigo Bambo, Francisco Figueredo,
MONO BRASIL
![Page 18: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/18.jpg)
Compilador C# escrito em C#Primeiro bootstrap em 2001, 10.000 linhas em 17sHoje tem 82.000 linhas, compila em 2.2s1.6x mais lento que o csc
Compilador C# - mcs
MCSMono C#CompilerEscrito em
C#
RunTimeMONO
Escrito em C++
Bibliotecas de
Classe C#Escrito em
C#
EXECUTAEXECUTA
USAUSA
USA
COMPILA /USACOMPILA
![Page 19: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/19.jpg)
19
BuildFarm
http://wrench.mono-project.com/builds
![Page 20: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/20.jpg)
20
BuildFarmConsulta da implementação do framework em
comparação ao MS.NET
http://wrench.mono-project.com/builds
![Page 21: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/21.jpg)
21
Mono TestSuite
http://mono-project.com/Test_Suite
![Page 22: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/22.jpg)
22
Licenciamento do Mono
− MPL, GPL, LGPL, MIT, BSD
http://www.ohloh.net/p/mono/
![Page 23: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/23.jpg)
23
Linhas de Código− Mais de 6 milhões de linhas
Curiosidade : • Miguel de Icaza alterou 1.6Milhões de linhas de
código • Mais de 900mil linhas de código C#• Representa uma atuação em quase 20% do código
![Page 24: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/24.jpg)
24
Linhas de Código
![Page 25: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/25.jpg)
25
Documentação
− Site intenacional :− www.mono-project.com
− MonkeyGuide :− http://mono-project.com/Monkeyguide
− Mono APIs : − http://www.go-mono.com/docs/
− Esforço de tradução do Mono Brasil
![Page 26: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/26.jpg)
26
Suporte - ListasMono-announce-list, mono-aspnet-list, mono-list, mono-devel-list, mono-gc-list, mono-patches, mono-docs-list, mono-bugs, mono-winforms-list, gtk-sharp-list, mono-vb, mono-addins , monodevelop-list, monodevelop-devel-list, mono-osx, monotouch, cocoa-sharp, mono-cecil , gendarme, mono-olive, moonlight-list,
monoxna, tao-list, tf4mono group, mono-packagers-list
http://mono-project.com/Mailing_Listshttp://www.go-mono.org/forums/
Padrões ECMA 334 , ECMA 335
![Page 27: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/27.jpg)
27
Suporte - Escritório do Mono− Média 100 pessoas online , 24 horas por dia− Irc.gnome.org − Mais de 50 canais
![Page 28: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/28.jpg)
28
MonoBrasil
− Comunidade Brasileira de Desenvolvedores Mono− Site : www.monobrasil.org− Projeto Finep MonoBasic
![Page 29: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/29.jpg)
29
Contribuindo
Bibliotecas de classe− Fazer alterações , escrever Teste− Criação Patch, ou commit no repósitorio− Documentação− Teste em várias plataformas]
Como começar− Baixe o fonte, compile , instale e use − Linux ou Windows + VisualStudio− Cadastrar-se nas listas− Participar do IRC− Reporte bugs − Mande seus patchs
![Page 30: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/30.jpg)
30
BUGS
http://mono-project.com/Bugs
![Page 31: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/31.jpg)
Portando aplicativos
31
![Page 32: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/32.jpg)
Crie no VS e rode no Linux
− Compatibilidade Binária− Monte o disco do linux e copie seus
binários no linux− Compartilhe no windows e acesso no
linux− Testando
− Uso de máquinas virtuas: Ex: Virtual PC− Donwload das VM e LiveCD no site do
mono
![Page 33: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/33.jpg)
33
Sistema de arquivos− Cuidado com os caminhos− Cuidado com letras Maiúsculas e minúsculas
Busca manual de Separadoresint index = exePath.LastIndexOf("\\"); exeDir = exePath.Substring(0, index); exeFile = exePath.Substring(index+1);
Código mais portávelexeDir = Path.GetDirectoryName (exePath); exeFile = Path.GetFileName (exePath);
![Page 34: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/34.jpg)
34
Variáveis de Ambiente
− Variáveis de ambiente o o PATH no Windows usa “;” o linux e outros sistemas unix usam “:”
− Você pode usar System.IO.Path.PathSeparator para separa o path nas variáveis de ambiente
Console.WriteLine ( "Subdiretorios encontrados no PATH :“ ); string path_env = Environment.GetEnvironmentVariable ( "PATH“ ); string[] path_dirs = path_env.Split (Path.PathSeparator); foreach (string pathdir in path_dirs)
Console.WriteLine(pathdir);
![Page 35: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/35.jpg)
35
Caminhos absolutos
− Não use caminhos absolutos, eles não vão funcionar em outros sistemas.
− Use algum mecanismo como um arquivo de configurção para localizar seus arquivos e caminhos
![Page 36: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/36.jpg)
36
P/Invoque
− Chamadas a DLLs nativas a API Windows não irão funcionar em outros sistemas, pois a API não está la.
− Caso você dependa de bibliotecas em C, você deverá substituir por equivalentes no ambiente Linux.
− Sua aplicação deverá identificar o sistema que está rodando e chavear entre as bibliotecas.
![Page 37: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/37.jpg)
37
MOMA
![Page 38: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/38.jpg)
38
Banco de Dados
- Mono faz acesso ao SQLServer , não existe necessidade de mudar de banco para rodar sua aplicação no linux.
- Mono Disponibiliza os dataproviders para os bancos : MySQL, Postgresql, Oracle, DB2, SyBase
- É possivel usar os dataproviders do mono no .NET com VS para acessar os bancos livres.
![Page 39: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/39.jpg)
39
Não é Suportado no Mono
− Sem suporte a Enterprise Services− Sem suporte a cross-process trasaction
− Mono so suporta trasações locais
− Não tem suporte a COM− Com não existe em Sistema UNIX− Existe um projeto para suportar isso http://www.mono-
project.com/COM_Interop
![Page 40: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/40.jpg)
40
Interface Gráfica− Windows.Forms
− Inicialmente foi usando o Projeto WINE − Atualmente o Mono esta suportando
windows.Forms 1 e 2− http://www.mono-project.com/WinForms− Status do Windows.Forms: − Sem suporte a windows.forms rodando em múltiplos
threads. Todos os formulários devem ser criados no mesmo thread.
− Temas windows suportados apartir do mono 2.2− Suporte de transparência no linux através do composite− Todo código Windows.Forms é em C# gerenciado− Windows.Forms é suportado no Mac apartir da versão 1.9
− ‘
![Page 41: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/41.jpg)
41
Interfaces Gráficas
− Pode ser usados outros tool kits graficos para outras plataformas − http://www.mono-project.com/Gui_Toolkits− GTK# -> Ambientes Linux , BSD e Windows
− COCA# -> MacOSX
− QT# -> Linux
− Qyoto − http://techbase.kde.org/Development/Languages/Qyoto− Bind do QT
− wxNet − http://wxnet.sourceforge.net/
![Page 42: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/42.jpg)
42
Ferramentas
− Mono Develop− Importa solutions do Visual Studio− Versões Windows, Linux e MAC− Suporte para GTK# , Iphone, MacOX− Debug integrado, controle de versão− Bando de Dados, Sistema de Testes, − www.monodevelop.com
− Prj2make− Converte uma solução do Visual Studio em script para o
make, gerando os make files.
![Page 43: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/43.jpg)
43
Mono Tools− Verifique a compatibilidade do
seu aplicativo com o Mono Migration Analaizer diretamente do Visual Studio
− Teste no Windos, Teste no Linux− Debug remoto no Linux− Empacote para linux− Crie uma Distro customizada para
seu aplicativo com o Suse Studio
![Page 44: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/44.jpg)
44
Asp.NET
− Mono Suporte Asp.NET 1 e 2− Suporta Asp.NET MVC− Pode-se rodar aplicativos Web com :
− XSP, Mod_Mod , FastCGI− Suporta WebServices− Suporta Ajax.NET − WEBCAST QUINTA!!!!
Exemplowww.monobrasil.org
![Page 45: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/45.jpg)
45
IPhoneVersão comercial do mono para IPHONE C# and .NET on the iPhone .NET Bindings to Native APIs Distribute on the Apple App Store Enterprise deployable MonoDevelop Integration XCode Integration− http://monotouch.net/− http://monotouch.net/Tutorials
http://www.youtube.com/watch?v=M0VoyhKFmWghttp://monotouch.info/MonoTouch/Videoshttp://monotouch.net/http://www.codesnack.com/storage/screencasts/
![Page 46: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/46.jpg)
46
Mono Touch
![Page 47: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/47.jpg)
Demonstrações e Cases
47
![Page 48: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/48.jpg)
HELLO WORD!!!$ cat alomundo-cs.cs alomundo-vb.vb alomundo-boo.boo
class AloMundo { public static void Main(string[] args){ System.Console.WriteLine("Alô mundo!!! em C#"); }}Module AloMundo Public Sub Main(args as string()) System.Console.WriteLine("Alô mundo!!! em MonoBASIC") End SubEnd Module
print "Alô mundo!!! em Boo"
$ mcs /codepage:utf8 alomundo-cs.cs
$ mbas alomundo-vb.vb
$ booc alomundo-boo.boo
$ mono alomundo-cs.exeAlô mundo!!! em C#
$ mono alomundo-vb.exeAlô mundo!!! em MonoBASIC
$ mono alomundo-boo.exeAlô mundo!!! em Boo
A linguagem Boo foi desenvolvida pelo Rodrigo 'Bamboo' Oliveira, para o ambiente CLI (Mono/.NET).
É similar ao Python mas com tipagem estática, o que lhe permite interagir mais facilmente com as outras linguagens CLI.
Ver http://boo.codehaus.org/
![Page 49: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/49.jpg)
49
DEMOS
−F-spot−Tomboy−MonoDevelop
![Page 50: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/50.jpg)
C# Shell
− Shell Interativo como python e ruby− Suporte a code completion− Suporte a GTK#
![Page 51: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/51.jpg)
51
C# Shell− Exemplo com Linq
![Page 52: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/52.jpg)
52
Games
MONO.SIMD CasesSencondLive mudou do LSL para Mono- 50x a 300x mais rápidoUnit3d-Usa C#, Boo, unityScritp-WEBCAST QUARTA!!!!
![Page 53: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/53.jpg)
53
Case Brasileiro - DARUMA−Apartir de Março de 2006 a Daruma passou a surportar o uso de suas impressoras em ambiente Mono com Linux.−Foram realizados treinamentos da equipe desenvolvedora no Brasil, e foram feitas melhorias internas na estrutura dos device drives linux das impressoras para ficarem 100% compatível com Mono.
![Page 54: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/54.jpg)
54
CASES DekiWiki (http://wiki.mindtouch.com) is an advanced WYSIWYG Wiki system
powered by Mono. SplendidCRM (http://www.splendidcrm.com) Cross platform, CRM system. Plasma (http://pnunit.codicesoftware.com/opproducts.aspx) Source Code Management
system from Codice Software. Chrome Compiler (http://chromesville.com/language/): a commercial Pascal compiler with
many features to take advantage of .NET 2.0 (including generics and many new language features inspired by C# 2.0).
Electronic Arts' Sims3 (http://thesims3.ea.com/). Unity3D (http://unity3d.com). Unity is is a 3D game editor with powerful cross-
platform capabilities. Medsphere OpenVista (http://www.medsphere.com) a cross-platform, real-time, point-of-
care, patient-centric information resource for clinicians. Vault (http://www.sourcegear.com/vault/index.html), from SourceGear
(http://www.sourcegear.com/), relies on Mono to run on Unix systems. Virtuoso Universal Server (http://virtuoso.openlinksw.com/), from OpenLink Software
(http://www.openlinksw.com/), is a cross-platform hosting environment for Mono/.NET/C#.
Völcker used Mono (http://www.novell.com/success/volcker.html), .NET and C# to re-code its Active Entry (http://www.activeentry.com/) software to run on Linux.
Winfessor SoapBox Framework Mono Edition (http://www.winfessor.com/portal/DesktopDefault.aspx?tabid=57) enables developers to build .NET-based IM solutions that run on any Mono-supported platform
* GMOVIL (http://www.aspl.es/gmovil/us/index.html) is a complete tool to manage common processes for Vodaphone sales points. It includes a Gtk# (shown here) and SWF GUI (Technical details (http://www.aspl.es/fact/index.php?id=39)).
![Page 55: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/55.jpg)
CASE INTERNACIONAL
− Maior migração já feita para Linux− Software ActiveEntry - Software para
provisão e gerenciamento usando pelo governo Alemão. (Munich)− Foram migrados todos os servidores da cidade de − Munich para linux e portado as aplicações para Mono− http://www.novell.com/success/volcker.html
− "Mono is now a critical part of our cross-platform development," said Matthias Bauer, head of development for Völcker Informatik AG. "Using Mono was the only way for us to leverage our existing software and give our customers what they need on Linux."
![Page 56: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/56.jpg)
56
CASE INTERNACIONAL
− Tempo de desenvolvimento 9 meses− Mono com C#− A aplicação passou de 7 milhões de linhas para 2
milhões de linhas de código.− Foram instalados 350 novos servidores linux− Com a novas versao do ActiveEntry com Mono− Os servidores linux provêm provêm toda a
administração da cidade Munich, gerenciando mais de 40.000PCs
− São 150.000 usuários do sistema
![Page 58: Semana de Interop: Projeto Mono](https://reader034.vdocuments.net/reader034/viewer/2022051817/549005acb479598e6a8b4f8d/html5/thumbnails/58.jpg)
© 2009 Microsoft Corporation. All rights reserved. Microsoft, MSDN, the MSDN logo, and [list other trademarks referenced] are trademarks of the Microsoft group of companies. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond
to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.