Linguagens de programação de código gerenciado no Linux

0

Existe um ambiente de programação de código gerenciado semelhante ao .NET no Linux? Eu já ouvi falar de Mono , mas eu não vejo isso sendo usado extensivamente - mesmo agora Python pode ser visto usado na maioria dos sites abertos. projetos de origem.

Editar:

Por código gerenciado eu quis dizer uma linguagem orientada a objetos pura (Java não é). O que eu encontrei é o framework QT , que suporta quase tudo o que eu sei, até aplicações web usando widgets chamados WT Eu acho que encontrei o que eu precisava; tem tudo.

    
por Arvind Singh 18.10.2011 / 11:15

3 respostas

2

Depende de como você entende o termo "código gerenciado" . Como a Wikipédia o descreve , este é geralmente um conceito da Microsoft, portanto nenhuma outra plataforma poderia ser contada.

Caso contrário, se você quer dizer geralmente que linguagens que compilam para um código intermediário que precisa de uma Máquina Virtual ou um intérprete para ser executado, então a maioria dessas linguagens pode ser usada plataforma cruzada. Se é isso que você quer, existe uma série de opções: formulário Java , através de Ruby on Rails até lua e também.

    
por 18.10.2011 / 12:08
1

Depende do que você quer. Se você quer trabalhar com o .Net, o Mono é sua melhor aposta. É um clone do .Net que cobre muito do conjunto de recursos desse ambiente. As pessoas constroem sistemas de produção.

O suporte a Java no Linux é muito maduro e o Java no Linux é uma plataforma importante. Entre o Redhat, a Apache Foundation, o Eclipse e vários outros, o suporte a ferramentas de código aberto para Java é bastante strong. O Linux também é uma plataforma de nível 1 para players java comerciais, como Oracle e IBM.

O sistema de idioma e tipo de Java e a JVM são bastante semelhantes ao C # e ao .Net, embora as bibliotecas padrão sejam diferentes. Muitas terceiras bibliotecas de um sistema possuem clones do outro, como o Hibernate e o NHibernate.

Você verá que o suporte a Java no Linux é muito maior que o Mono, portanto, se você quiser desenvolver esse tipo de ambiente no Linux, talvez seja melhor usar o Java. Tendo usado Java e .Net em maior ou menor grau, não acho que seria tão difícil ir de uma plataforma para outra, embora ASP.Net e J2EE tenham diferenças idiomáticas que provavelmente afetarão sua abordagem ao aplicativo. design.

Existe uma VM de software livre chamada Parrot, mas ela não tem muito de um ecossistema em torno dela, da mesma maneira que Java ou .Net.

A maioria das linguagens de código aberto, como o Python, oferece implementações de interpretador nativo ou de compilador JIT, mas elas tendem a ser específicas do idioma. Há também versões de Python, Ruby e várias outras linguagens direcionadas a VMs de terceiros, como o CLR ou JVM. Por exemplo, estão disponíveis implementações de Python de terceiros que visam tanto o CLR (IronPython) quanto a JVM (Jython).

Algumas linguagens como Boo ou Groovy são projetadas especificamente para suportar uma VM específica com recursos de design, como sistemas de tipos criados para essa VM.

    
por 18.10.2011 / 13:02
1

Assumindo que você quer dizer o que o rozcietrzewiacz descreve, por que o desejo de ter algo que roda em uma VM? 'C' (especialmente se você estiver usando o automake) é quase totalmente portátil em diferentes ambientes POSIX, e mesmo sem o automake será facilmente portável em diferentes distribuições / arquiteturas Linux. No entanto, você pode ter problemas com overflows e derivação de ponteiro nulo (não que os sistemas de código-p sejam imunes a este último). Perl, PHP, Python e Ruby também são portáveis (mesmo para sistemas não POSIX). Sim, elas são interpretadas (ou pelo menos não pré-compiladas), mas o IME não é tão strong quanto algumas pessoas (a menos que você seja o Google ou o Facebook)

    
por 18.10.2011 / 13:18