logo
Contato | Sobre...        
rebarba rebarba

Rodrigo Strauss :: Blog


Meu caso com o Python, parte 1

Acredito que vocês têm percebido que, além de tudo que eu falo, faço e escrevo usando C++, eu tenho falado bastante sobre Python. Além de falar eu tenho estudado muito Python de um ano pra cá, e em alguns projetos tenho usado mais Python do que C++. Como isso foi uma mudança grande para mim, acho que essa experiência pode ser aproveitada por mais pessoas.

Acredito que a maioria dos programadores usam scripts para automatizar tarefas repetitivas. Para algumas tarefas, talvez teria sido melhor fazer um programa completo e compilado, mas foi mais simples migrar um .BAT para um .VBS (ou usar shell script de uma vez...) e ficar remendando ele resolver o problema. Até que você encontra um grande problema: quando seu script começa a ficar maior e mais complexo, você acaba batendo toda hora nos limites das linguagens (foi isso que me fez pular do VB6 para o C++). Tendo esse problema algumas vezes, e lendo sobre todo o hype em cima das ditas linguagens dinâmicas, resolvi estudar se haviam realmente linguagens de script com mais poder de fogo.

Depois de uma pequena procura cheguei a conclusão que haviam dois candidatos: Python e Ruby. Estudando a linguagem pura e simplesmente, achei o Ruby melhor. Comecei a estudar Ruby enquanto lia mais sobre Python. Mas uma coisa muito importante me fez decidir pelo Python: suporte, literatura e bibliotecas. Apesar do Ruby estar crescendo devido ao Ruby On Rails (e ao ótimo marketing do seu criador), o Python já era usado pelo Google, NASA, e por muita gente no Source Forge. Então, por razões mais mercadológicas que puristas, escolhi o Python.

A melhor forma de se estudar uma linguagem é determinar um projeto e trabalhar nele. Essa história de ficar lendo tutorial e fazendo exercícios simples não é lá de muita valia. Foi então que eu decidi migram um script VBScript que eu usava para compilar meus projetos Visual C++ para Python. Esse script encontrava o número de revisão do Subversion, mudava o arquivo de resource para colocar a revisão no FILEVERSION e compilava o projeto. Resultado: 120 linhas de código VBS se transformaram em 20 linhas de código Python. E o código ficou mais claro e mais eficiente. Percebi que fiz uma boa escolha, e isso me animou a migrar outros scripts para Python e a passar o dia com o console Python aberto para automatizar tarefas simples.

continua...


Em 20/02/2007 12:30, por Rodrigo Strauss


  
 
 
Comentários
Claudio Torcato | website | em 22/02/2007 | #
Olá, Rodrigo,

Caminho em direção contrária: sou programador Python e agora ando estudando C++. Não quero largar Python, por ser bastante satisfatória para mim, numa boa parte dos casos. Minha curiosidade é jogos e nada melhor que a comunicadade C++ para investigar. Sei que algumas empresas de jogos usam Python como linguagem de scripting e isso é bastante animador.

Sua explanação de como chegou até Python foi muito boa, e parece ser o caso mais comum: escolher uma linguagem para escrever scripts.

Parabéns pelo conteúdo de seu blog.
Rodrigo Strauss | website | em 22/02/2007 | #
Sim, para jogos, C++ é a mesmo a melhor linguagem que existe, sem dúvida. E Python está começando a virar padrão de script para jogos, junto com a linguagem Lua.
owlman | em 22/02/2007 | #
Mudando de assunto vc q tah nesse projeto omniobjects, jah conhece ACE/TAO?
http://www.cs.wustl.edu/~schmidt/ACE.html
Naum eh COM/DCOM, mas eh CORBA e me parece uma grande implementação de tecnologia de comunicação em C++.
Soh naum serve de nada se o seu interesse estiver realmente em aprimoramendo/interop/compatibilidade com o COM/DCOM atual :-s.
Rodrigo Strauss | website | em 23/02/2007 | #
Conheço o ACE. Mas um dos requisitos do projeto é manter compatibilidade com COM/DCOM...
Rogerio Leoncio Marcos | website | em 26/02/2007 | #
oi rodrigo tudo bém, meu nome é rogerio estou fazendo curso de webdesigner no senac, estava pela net procurando saber como faço para aprender linguagem de programação, quando encontrei seu site e achei muito interessante e animador, digo animador
porque esses dias comentei com meu "ó" professor de web sobre limguagem de programação qual seria a melhor para se aprender
e comentei sobre a python; ele me disse que eu poderia esquecer que essa linguagem seria um fracasso para mim procurar limguagens mais comerciais, e me aconselhou a c# cheguei a desanimar sobre a python, mas depois que vi seu artigo voutei a me animar , gosto de informatica sou apaixonado por computação grafica e quero estudar programação,

parabéns pelo seu site!!!

muito obrigado
Rodrigo Strauss | website | em 27/02/2007 | #
Se você trabalha com web, dê uma olhada em Zope e Django.
Felipe Gomes da Silva | em 05/03/2007 | #
Olá Rodrigo !

Tive o privilégio de encontrar os seus artigos na grande rede, e gostaria de agradecê-lo por tão grande generosidade - ajudar pessoas a decidirem o seu futuro profissional. Sou um mero iniciante em programação, e confesso, diante do meu desânimo, o seu artigo "Como ser um programador" caiu como uma luva em minha personalidade, que é grandemente tendenciosa a desistir no meio do caminho. Muito obrigado! Desejo muito sucesso, e paz na tua profissão !!!

Felipe Gomes. 29 Anos.
Recife - PE
André Duarte | em 24/03/2007 | #
Primeiramente, parabéns pelo artigo.

Quero dizer que eu, assim como você, após vários anos de experiência com Delphi e C# também encontrei um caminho mais suave na linguagem Python.

Percebi logo de imediato que o Python não colocaria barreiras entre mim e o problema a ser resolvido. Isso sem falar no Django, um maravilhoso framework web feito em Python.

Abraços a todos.
filipe | em 29/09/2007 | #
olá ... estou chegando agora e gostei do site.
tb estou iniciando em python, e espero que minha viagem não seja muito traumática. sou prog em vb6 a anos, mais voltado para aplicações comerciais, mas estou gostando do que estou lendo sobre python, até agora não consegui achar nada depreciativo.
no que puder ajudar, estou a disposição ...

sucesso a todos ...
Gustavo Dantas | em 21/01/2009 | #
Rodrigo gostei do seu Blog e de todas as informações que encontrei aqui.

Para usar o computador utilizo um leitor de telas pois ainda muito pequeno fiquei cego.
Atualmente, utilizo um programa livre desenvolvido em python

Desde que tive meus primeiros contatos com o NVDA, tive a certesa de que em pouco tempo seria mundialmente conhecido, um ano se passou e olha hoje já está traduzido para mais de 20 idiomas , atualmente conta com apoio de algumas empresas dentre elas a própria microsoft
Amigos conheçam mais sobre o projeto acessando:

www.nvda-project.org

Precisamos ajudar nodesenvolvimento desse software, quanto mais acessível ficarem as aplicações mais pessoas cegas terão acesso a informática.
paro por aqi.

Abraços Gustavo Dantas
Vinicius Barbosa | em 27/02/2010 | #

Rodrigo?
o python é bom para desenvolver aplicações comerciais?
ja li muita! mas muita coisa mesmo... sobre python e
vi muito coisa desenvolvida em python! menos pacotes
para aplicações comerciais.....
inclusive codigos fontes para este tipo de aplicação
eu não achei nada!!! porque?
será que python não é para ser utilizado nesta função?
estou fazendo uns testes com os comandos no modo interativo
mas estou achando q falta alguma coisa para fazer as janelas em modo grafico..(como fazer isto?).
estou interessado em python porque trabalhei muito tempo com clipper e parei por algum tempo, e agora estou querendo voltar a programar e como achei o estilo dos comandos meio parecido com python (q inclusivee tem ate o modo interativo)por isto estou dando a preferencia a este...
será que estou completament enganado?

terei que procurar outra linguagem?
?
(obs: meu email é o da bol.com.br
e na frente no inicio antes do arroba tem vinicius_b_f)



Vinicius Barbosa | em 27/02/2010 | #
voce ainda esta usando o python?
ou ja partiu para outra escolha?
(obs: meu email é o da bol.com.br
e na frente no inicio antes do arroba tem vinicius_b_f)
Rodrigo Strauss | website | em 01/03/2010 | #
É possível usar Python para isso, mas não conheço ninguém que o faça. No Brasil é mais comum o pessoal usar VB, Delphi e C#.

Para interface gráfica com Python, procure sobre PyQt, PyGTK e WxWidgets.
rebarba rebarba
  ::::