Aplicações comerciais :: Desktop (PySide) ou web-based (intranet)?

272 views
Skip to first unread message

Alessandro Cunha Fernandes

unread,
Apr 12, 2016, 7:08:33 PM4/12/16
to Python Brasil, mim
Pessoal,

Sou novo no Python, minha experiência é com desenvolvimento de aplicações comerciais em Delphi para pequenos negócios.

Quero passar a desenvolver produtos em Python e estou no seguinte impasse: 

Desenvolver aplicações desktop (usando o PySide, por exemplo) ou aplicações web para rodar em uma intranet nos clientes?

Quero ter algo independente de plataforma que rode em windows, linux ou OS X. Estou tendendo para a opção web, mas tenho dúvidas. 

Alguém com experiência nesse tipo de aplicação? Minha principal dúvida é quanto a distribuição do software e a segurança de meus fontes.

Qualquer comentário será bem vindo.

Obrigado.

Alessandro



Andre Fonseca

unread,
Apr 12, 2016, 7:21:37 PM4/12/16
to python...@googlegroups.com, mim
Alessandro,

A sua resposta não dá para ser algo muito direto. De início posso te responder, dizendo que o mundo caminha mais para sistemas distribuídos - web e aplicativos. Caso fosse fazer algo, seguiria na linha de desenvolver um backend em formato de API, e construir diversos clientes para esse api, como por exemplo um app android, ios e uma portal web.

Muito pouca gente hoje faz download de um arquivo para rodar em seus desktops. As pessoas preferem acessar o site no desktop e um app nos seus celulares. 

Bem, isso é a minha visão. Cada negócio e problema tem seu contexto e naturezas próprias.


--
Att
Andre Fonseca

Fernando Freitas Alves

unread,
Apr 12, 2016, 7:24:04 PM4/12/16
to python...@googlegroups.com

Fala aí cara, tudo bem?

Eu trabalhei desenvolvendo software pra desktop com python por um ano e meio (com qt/pyside tb) e muito  mais tempo com web.

Primeiro, aplicativo desktop com python não é fácil, principalmente se for multiplataforma. Apesar disso o dropbox conseguiu e a única diferença entre as plataformas é a interface que eles usaram.

Web é mais flexível, mas se seu cliente precisa ter uma intranet pra rodar, você pode estar limitando o seu target.

Depende muito do que você quer fazer.

Eu escrevi alguns textos sobre aplicações desktop com python, talvez seja do seu interesse: http://fernandofreitasalves.com/distribuir-programas-em-python-para-desktops-windows/

Conta um pouco mais sobre o que você quer fazer porque isso é muito caso a caso

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Fellipe Henrique

unread,
Apr 12, 2016, 8:05:19 PM4/12/16
to Python Brasil
Boa noite,

Eu venho do Delphi, trabalhei com ele por mais de 12 anos. E lhe digo o seguinte.. Se seu publico alvo for Windows e Desktop, não saia dele. Python, C++ ou qualquer outra coisa sempre vai ser mais  "complicado" que o Delphi.

Mas, respondendo sua pergunta: Vá para Web! Como o amigo acima disse, o mundo hoje é praticamente Web e Apps Mobile.. Desktop ainda tem seu valor, e ainda terá seus sistemas, mas vai acabar sendo um nicho... como por exemplo, acesso a impressoras fiscais e afins..  Eu decidi sair do Delphi faz mais de 4 anos, por diversos motivos que não vem ao caso relatar, e resolvi ir para Web.. por um único motivo.. o que eu fazia, consigo fazer com um custo menor, com suporte menor, tudo via Web.. e se o cliente não quiser usar via Cloud, eu instalo um servidor na Rede dele, e ele usa via "intranet" e pronto, resolvido...



T.·.F.·.A.·.     S+F
Fellipe Henrique P. Soares

e-mail: > echo "lkrrovknFmsgor4ius" | perl -pe \ 's/(.)/chr(ord($1)-2*3)/ge'
Twitter: @fh_bash

Douglas Camata

unread,
Apr 13, 2016, 1:36:56 AM4/13/16
to python...@googlegroups.com
Alessandro, tudo depende do modelo de negócio que você irá escolher:

1. Vender o software: nesse caso, o código é do cliente, então não há muito o que discutir.

2. Vender o software como serviço: nesse caso você pode manter tudo num servidor seu na nuvem, ou colocar o servidor no local do cliente devidamente configurado com um usuário e senha que o cliente não tenha acesso e o HD/partição do Linux criptografado. Enfim, existem diversas maneiras de proteger o seu código mesmo o computador estando em um local público ou que não esteja sob o seu controle. 

Lembrando que com Python, ou qualquer outra linguagem interpretada, seu código nunca estará 100% "seguro" se alguém tiver acesso ao servidor. Sempre vai existir algum tipo de ferramenta capaz de permitir o indivíduo ver de certa maneira o que seu código faz.


Douglas Oliveira Camata
Software Developer

Connect with me: Linkedin | Github Blog 
Skype: douglas_camata

Emerson Henning

unread,
Apr 13, 2016, 8:05:59 AM4/13/16
to python...@googlegroups.com
Se utilizar a abordagem que o André disse, pode até criar um cliente para desktop também...

Clayton A. Alves

unread,
Apr 13, 2016, 8:39:52 AM4/13/16
to Python Brasil, alcfer...@yahoo.com
Existe também a possibilidade de uma aplicação híbrida (web/desktop) onde a interface pode ser web mas se comportando como uma aplicação desktop.

Vários projetos já utilizam esta abordagem: editor atom, interface para windows do github, entre outros que não me lembro agora.

Um projeto que facilita a implementação deste tipo de aplicação é o Electron.

Existe também o projeto CEF Python, que basicamente é o browser Chrome com capacidade de executar código python.

E por último existe também o Appcelerator que permite criar aplicações Nativas ou Mobile usando tecnologias web.

---

Message has been deleted

Alessandro Cunha Fernandes

unread,
Apr 13, 2016, 12:06:49 PM4/13/16
to Python Brasil, alcfer...@yahoo.com
Muito obrigado a todos os colegas que responderam ao meu post. Os vários pontos levantados vão me ajudar a refletir melhor sobre essa questão.

Assim que me decidir sobre o caminho a seguir voltarei com mais detalhes para aprofundarmos o assunto.

Um abraço,

Alessandro

Rafael Neri

unread,
Apr 13, 2016, 12:31:51 PM4/13/16
to Python Brasil, alcfer...@yahoo.com
Eu escolhei a combinação Python3+QT5+Webkit. Você roda a sua aplicação web como se fosse um app desktop.

Edson Lopes

unread,
Apr 13, 2016, 12:36:49 PM4/13/16
to python...@googlegroups.com
Olá , estou no inicio e to adorando,,,,,,,,,;;;;;

Livre de vírus. www.avast.com.

Rayan Sóstenes

unread,
Apr 13, 2016, 1:51:35 PM4/13/16
to python...@googlegroups.com
Nunca usei python para desktop, mas estou trabalhando em um player de video 
para um sistema de segurança que está sendo desenvolvido com node-webkit.
A performance é decente e a interface ficou muito melhor do que seu eu tivesse tentado fazer em QT.

O que eu faria se fosse você seria, usar á ideia do Andre Fonseca e desenvolver o backend em uma API, que pode rodar na nuvem ou na intranet do cliente. E a partir dai desenvolver clientes para essa API.

* Cliente desktop (usando nwjs ou electron)
* Cliente Android/iOS (Nativo ou Híbrido)
* Cliente Web

Fazendo dessa forma você não engessa seu projeto e o faz ser acessível à partir das mais variadas plataformas. 
--
*Rayan Sóstenes Alves Gama da Motta*
*Analista de Sistemas*
*Graduando em Eng. de Controle e Automação*
*Cel: (62) 8248-4091*

Reply all
Reply to author
Forward
0 new messages