LusoRobótica - Robótica em Português

Software => Python => Tópico iniciado por: DanBar em 07 de Fevereiro de 2010, 23:51

Título: Python
Enviado por: DanBar em 07 de Fevereiro de 2010, 23:51
Bem pessoal eu estou muito "agarrado" ao velhinho Visual Basic 6 e decidi que estava na hora de mudar.

C sei um pouco (agora mais por causa do arduino), mas necessitava de fazer umas aplicações novas e decidi começar pelo novo Python.

Como não sei nada de python gostaria que me aconselhassem de uma bom IDE e já agora de algumas dicas tipo Python para totós.

Como estou muito habituado ao IDE do vb6 acho que necessito mesmo de um IDE para o python.

Alguém me pode ajudar. ::) 
Título: Re: Python
Enviado por: Fifas em 08 de Fevereiro de 2010, 10:24
Tu que até dominas o vb6, porque não continuas com o vb2008? :P Eu sei que o 6 é bem melhor, mas ao menos actualizas um pouco. :)

Penso que não há nenhum IDE do tipo do vb para python, mas deixa os experts virem aqui dizer isso :D
Título: Re: Python
Enviado por: DanBar em 08 de Fevereiro de 2010, 10:27
Porque não quero ficar dependente do windows. Quero poder fazer programas para windows, linux, nokia s60, iphone, etc.

Com o python é possivel até instalar o python como sistema operativo num arduino Mega  ;)
Título: Re: Python
Enviado por: Fifas em 08 de Fevereiro de 2010, 10:45
nisso tens razao :)

sendo assim, para todas essas plataformas, penso que só tens python e java :P tambem gostava de aprender uma destas linguagens :)
Título: Re: Python
Enviado por: tr3s em 08 de Fevereiro de 2010, 10:48
iCar agarra-te ao Python!
Se puderes experimenta o IronPython! Eu trabalho com Python e digo-te por experiência própria que é das linguagens mais brutais que já conheci!
Também uso/usei muito Vb6 portanto sei o que sentes! :P

Em relação ao editor, notepad++ e a função dir do python!
Título: Re: Python
Enviado por: DanBar em 08 de Fevereiro de 2010, 10:54
Ok vou experimentar. Mas esse IDE compila para windows e linux ?
Título: Re: Python
Enviado por: tr3s em 08 de Fevereiro de 2010, 10:59
Tens python para todos os Sistemas praticamente, uma vez instalado é só executares o ficheiro .py!
.py  é a extensão dos ficheiros de python, os ficheiros que têm o código. Quando programas em python podes esquecer se estás em Windows, Mac OS ou Linux, o código corre igual em todos!

A consola de Python até te deixa fazer os teus programas em tempo real, isto é, consegues programar na própria consola. É só introduzir o código linha a linha :D dar enter!

Já o IronPython é só para Windows, mas é muito mais poderoso!
Título: Re: Python
Enviado por: metRo_ em 08 de Fevereiro de 2010, 11:04
Eu ainda comecei a programar em java mas não gostei muito e dava muitos problemas quando mudava de SO e a nível de performance também não é dos melhores, o que agora comecei a ver foi Qt e estou a gostar bastante, corre em todos os SO's que referis-te e só tens que compilar para cada um.

O Python tem que se compilar para cada SO?

EDIT: O Qt tem a desvantagem de não se poder usar em projectos comerciais de forma gratuita. E eu sei que o Qt não é uma linguagem antes que comecem ai a mandar vir :P (Qt=Cross-platform application and UI framework) a linguagem usada é C/C++.
Título: Re: Python
Enviado por: senso em 08 de Fevereiro de 2010, 11:47
Eu realmente ando com uma certa vontade de aprender python, recomendam instalar o ironpython para começar a programar em windows?
E já agora, recomendam alguma literatura util?
Título: Re: Python
Enviado por: tr3s em 08 de Fevereiro de 2010, 11:55
O Python não precisa de ser compilado para cada plataforma, como já disse, pega-se no ficheiro .py, que é o txt com o código em que se muda a extensão para .py e corre-se na consola python.

O IronPyhon tem todas as vantagens da plataforma .Net!
Contudo para começar recomendo o Python normal.
Recomendo ainda o livro "Dive Into Python" de Mark Pilgrim, este livro está disponível gratuitamente na página do autor e custa entre 30 a 40 euros nas lojas.
Título: Re: Python
Enviado por: metRo_ em 08 de Fevereiro de 2010, 13:47
Mas então o python tem que correr em cima de uma maquina virtual como o java?
Título: Re: Python
Enviado por: Fifas em 08 de Fevereiro de 2010, 13:56
o python corre se tiveres o python instalado....:P isto em windows, porque o linux nao precisa de nada disso (penso eu) :D e até podes usar o notepad para programar :P
Título: Re: Python
Enviado por: DanBar em 08 de Fevereiro de 2010, 14:58
No windows pode-se criar um exe:

http://www.py2exe.org (http://www.py2exe.org)

pelo menos é o que parece.
Título: Re: Python
Enviado por: msr em 08 de Fevereiro de 2010, 20:57
No linux (ubuntu) creio que o Python já vem instalado, assim como o MonoDevelop.

Mas então pergunto: o python corre onde a consola do python estiver instalada. Mas o mesmo nao acontece com Java e C#? Java corre onde estiver instalada a JVM e C# (plataforma .net) corre onde estiver instalado o Mono.

Há uns tempos experimentei o Qt mas, comparando com Visual C# pareceu-me muito mais confuso. A própria "filosofia" de programar é bastante diferente pelo que percebi.

Título: Re: Python
Enviado por: metRo_ em 08 de Fevereiro de 2010, 21:42
Não acho assim tão diferente, mas com o Visual C# não consegues fazer um programa e depois correr em S60, Windows, Linux e Mac.
Título: Re: Python
Enviado por: msr em 08 de Fevereiro de 2010, 22:45
Estou a falar mal. Queria dizer apenas Mono e não MonoDevelop (IDE). As bibliotecas do Mono é que têm que estar instaladas no SO, como é óbvio.

Fazendo código C# no monodevelop teoricamente (nunca experimentei) as aplicações também são cross-platform.

Citar
Mono runs on Linux, Microsoft Windows, Mac OS X, BSD, and Sun Solaris, Nintendo Wii, Sony PlayStation 3, Apple iPhone. It also runs on x86, x86-64, IA64, PowerPC, SPARC (32), ARM, Alpha, s390, s390x (32 and 64 bits) and more.

Alguem que já tenha usado python vs java vs c# (.net) vs c++/qt para fazer aplicações cross-platform que possa fazer uma breve conclusão da sua utilização? ;D
Título: Re: Python
Enviado por: tr3s em 10 de Fevereiro de 2010, 01:00
Não acho assim tão diferente, mas com o Visual C# não consegues fazer um programa e depois correr em S60, Windows, Linux e Mac.

Se um programa feito em C# não corre em S60, WINDOWS, Linux e Mac OS afinal onde corre?

Queres mesmo ter lá Windows no meio da lista?
O querias antes dizer que um programa feito em C# não é Cross-Platform (Software)?
Título: Re: Python
Enviado por: tr3s em 10 de Fevereiro de 2010, 01:18
Estou a falar mal. Queria dizer apenas Mono e não MonoDevelop (IDE). As bibliotecas do Mono é que têm que estar instaladas no SO, como é óbvio.

Fazendo código C# no monodevelop teoricamente (nunca experimentei) as aplicações também são cross-platform.

Citar
Mono runs on Linux, Microsoft Windows, Mac OS X, BSD, and Sun Solaris, Nintendo Wii, Sony PlayStation 3, Apple iPhone. It also runs on x86, x86-64, IA64, PowerPC, SPARC (32), ARM, Alpha, s390, s390x (32 and 64 bits) and more.

Alguem que já tenha usado python vs java vs c# (.net) vs c++/qt para fazer aplicações cross-platform que possa fazer uma breve conclusão da sua utilização? ;D

De todas essas linguages só nunca fiz nada em QT mas como é basicamente C++ não estou por fora!
Se procuras uma linguagem para fazer coisas rápidas e multi-plataforma usa Python (provem-me que não presta...).
C# é muito poderoso mas tem um limite, só corre em SOs da Microsoft tais como: Windows, Windows Mobile, Windows Ce, etc..
O Java... coitadinho, lento, precisa da sua PESADISSIMA VM, lento, pela complexidade venha antes o C#, já referi que é lento? E sinceramente, sabendo Java sabes C#, mais se tiveres a desenvolver para Windows assim que tocares em C# nunca mais o largas!

O Python tem outra coisa muito boa, há imensas extensions para permitir desenvolver aplicações BRUTAIS vou dar alguns exemplos:

DirectPython - Para usar DirectX com Python
PyGame - Fazer jogos com Python
PyLab - MatPlotLib ou PyGraph - Quem usa o MatLAb, imaginem fazerem as MESMAS coisas mas com o poder da linguagem Python!
TKinter - Para criar GUI em Python

e muito mais!

;)
Título: Re: Python
Enviado por: DanBar em 10 de Fevereiro de 2010, 01:22
Obrigado amigo, vou ter de arranjar tempo (não sei aonde) para começar com o Python.

A tua ajuda foi preciosa.  ;)
Título: Re: Python
Enviado por: microbyte em 11 de Fevereiro de 2010, 11:20
Só de referir uma outra extensão:
PySerial para comunicação usando uma porta de série.
Título: Re: Python
Enviado por: metRo_ em 11 de Fevereiro de 2010, 13:43
Não acho assim tão diferente, mas com o Visual C# não consegues fazer um programa e depois correr em S60, Windows, Linux e Mac.

Se um programa feito em C# não corre em S60, WINDOWS, Linux e Mac OS afinal onde corre?

Queres mesmo ter lá Windows no meio da lista?
O querias antes dizer que um programa feito em C# não é Cross-Platform (Software)?

O Windows veio a mais, mas sim queria dizer não é multiplataforma.