Especificidades do Python em relação ao Ubuntu

Especificidades do Python em relação ao Ubuntu

Fiquei me perguntando quais experiências você tem e pode compartilhar em relação ao uso do Python em um ambiente Ubuntu. Eu trabalhei um pouco com o Ubuntu, mas há algo especial que pode ser feito com código Python ou bibliotecas que podem ser usadas e que não podem ser usadas no Windows?

Publiquei partes do que aprendi e usei ao longo do tempo em meu trabalho em Python no Ubuntu, mas não tenho certeza se preciso de orientação no sentido de melhores práticas, etc. ou experiência que você poderia compartilhar seria ótimo! Minhas sinopses de código existentes estão emhttp://www.pythonsnippet.com/snippets

Desde já, obrigado!

Responder1

É o computador que decide o que pode e o que não pode ser feito. No mesmo hardware, tudo o que é possível num sistema operativo é possível no outro, a menos que haja obstáculos artificiais. Na verdade, é isso que os sistemas operacionais existem para garantir. Contanto que você tenha o Python instalado no Windows, ele pode fazer qualquer coisa que o Python pode fazer no GNU+Linux. Para quase todos os aplicativos, você usará bibliotecas e essas bibliotecas podem ser programadas em outras linguagens, como C, para maior eficiência.

Existem duas diferenças principais entre o Windows e o Ubuntu: 1) O Ubuntu possui suporte integrado para desenvolvimento em muitos idiomas. Por isso, tudo foi pensado para ser acessível em qualquer idioma. Um bom exemplo é o Unity, onde tudo é feito em DBus, o que significa que você pode usar qualquer linguagem para controlar o ambiente sem ter bibliotecas especiais, mas isso facilita ainda mais. No Windows, você terá que instalar todos os requisitos manualmente antes de poder usar o aplicativo, mas ele funciona da mesma forma.

2) Ubuntu é um software livre. Isso significa que ninguém tem incentivo para dizer que uma biblioteca só deve ser usada no Ubuntu. Pelo contrário. Quanto mais desenvolvedores usam uma biblioteca, mais valiosa ela se torna. O Windows é muito diferente. Não é apenas um sistema operacional proprietário, de propriedade de uma única entidade, mas as ferramentas de desenvolvimento também são proprietárias e vendidas por essa entidade. Isso significa que eles têm bilhões de incentivos para garantir que os desenvolvedores escrevam aplicativos usando bibliotecas que não podem, ou não podem ser facilmente, usadas em outros sistemas operacionais. A Microsoft mostrou alguma disposição para mudar, mas ainda tem um longo caminho a percorrer antes de poder descansar sobre os louros.

Em resumo, se você desenvolver no Ubuntu, seu aplicativo funcionará em qualquer desktop. Você terá que fornecer um instalador se for usado no Windows, mas existem programas para automatizar essas tarefas. Se seus aplicativos dependem da interação direta do sistema, talvez seja necessário ajustar um pouco seu código, mas isso não é grande coisa. Isso vai melhorar com o tempo. Por exemplo, já vimos serviços de indicadores para Windows, o que faz com que seu AppIndicator escrito para Ubuntu apareça automaticamente como um ícone da bandeja do Windows sem nenhum esforço do desenvolvedor. Deveríamos ter uma solução genérica para isso. Se o seu aplicativo depende do DBus para comunicação entre processos, isso também funcionará, pois o DBus já foi portado para o Windows. Queremos um serviço DesktopCouch, etc. Essas não são coisas tecnicamente difíceis de fazer, elas apenas precisam ser feitas, e serão.

Na verdade, eu diria que mesmo que, como desenvolvedor, seu alvo principal seja o Windows, você ainda deve desenvolver esse software no Ubuntu. Não só é um ambiente muito confortável com todas as ferramentas que você precisa e uma comunidade forte para apoiá-lo, mas também garante que você, como desenvolvedor, sempre tenha a liberdade de expandir seu público a qualquer momento, com o mínimo esforço . Eu particularmente, e fortemente, recomendo usar Python com GTK3.

Uau, estou sem fôlego. :)

Responder2

Eu não vi nada feito no lado do Windows que não pudesse ser feito no lado do Linux no que diz respeito ao python. Pode haver algum problema com os componentes do código compilado e a API C nativa. Fora isso, na minha experiência, é praticamente a mesma coisa.

informação relacionada