Uma estrutura .NET de código aberto permitirá a compatibilidade de programas internos do Windows?

2

Como provavelmente pelo menos algumas pessoas sabem, a Microsoft tornou o framework open source da aplicação .NET.

Isso significa que será possível executar mais programas do Windows no Linux e, de alguma forma, acelerar o vinho integrando APIs diretamente? Ou é mais apenas um sistema de desenvolvimento que não será possível integrar nativamente para rodar tão bem quanto os programas escritos para usar o bash?

Eu usei o wine e descobri que, mesmo nas distribuições onde ele é nativamente instalado, ele acaba rodando devagar, mesmo para os programas mais básicos, e com discos virtuais e isso acaba sendo uma dor para usar. Será possível integrar as APIs em um nível núcleo / kernel, talvez alterar algumas coisas de modo que as barras sejam representadas de maneira diferente, e lançar uma versão do Windows relatada e deixá-las executar como seriam nativamente? Se alguém achar que isso será possível apenas quando os porcos voarem por conta própria, por favor, diga-me que isso nunca funcionará, mas gostaria de saber especificamente por que funcionaria ou não, e não apenas uma palavra.

    
por sbergeron 26.11.2014 / 20:53

1 resposta

4

O que o vinho tem a ver com isso? Vamos ignorar isso por um momento.

A Microsoft está abrindo o código das principais partes do .NET, além de tornar o ASP.NET mais aberto do que já era. Sozinhas, essas duas partes permitirão que você faça aplicativos de linha de comando e sites ASP.NET. Se você tem aplicações existentes como essa, eventualmente será possível criar alvos Linux (se necessário) e executá-los nativamente no Ubuntu.

Dito isto, há toda uma frota de componentes .NET necessários para fazer algo como uma aplicação GUI. No Windows, os desenvolvedores usam coisas como o Windows Presentation Foundation para desenhar coisas na tela. No Mono, podemos usar coisas como GTK # e Qt #. Se você deseja um aplicativo de plataforma cruzada, precisa de um kit de ferramentas de plataforma cruzada.

Essa é uma maneira muito longa de dizer que não muito vai mudar inicialmente. Os desenvolvedores poderiam usar o Mono antes se quisessem aplicativos de plataforma cruzada e ainda pudessem. No futuro, talvez seja mais fácil colocar os kits de ferramentas do Mono em um projeto de VS.NET, ou o MS substituirá o WPF por um kit de ferramentas de plataforma cruzada.

De volta ao vinho. Um aplicativo .NET em execução no Wine ainda precisará de algo para fornecer bibliotecas de apresentação e (se forem bibliotecas nativas do Windows) elas precisarão continuar por meio do Wine, para que o ambiente correto seja fornecido para elas . O vinho ainda é o elo entre a aplicação e o hardware (bem hardware virtual através do Linux) que o .NET ocupa. Não consigo ver esse arranjo mudando tão cedo.

    
por Oli 26.11.2014 / 23:02