• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

PaLobo

Python vs C#

14 mensagens neste tópico

Antes demais, perdoem-me se já existe algo semelhante a este thread, mas a minha pesquisa rápida não revelou nada do que gostaria de abordar.

Este thread é o seguimento deste http://www.portugal-a-programar.pt/index.php?showtopic=2938 que se desviou um pouco.

Gostaria (preciso) de criar uma aplicação estilo windows forms. Neste momento sou um quadro em branco tendo em conta que apenas tenho uns conhecimentos rudimentares de C. A ideia inicial seria C#, mas dado que normalmente trabalho em linux, precisava de uma IDE para C# que desse em linux. Foi então que sugeriram antes Python.

Pelo que tenho estado a ver, posso criar a aplicação com um UI bastante apelativo utilizando o wxWidgets ou algo semelhante. Mas por outro lado, já li que python é mais lento que C#. Há tb a vantagem de que .NET posso utilizar várias linguagens e trabalharem todas bem umas com as outras. Dessa forma, poderia ter o melhor de todos mundos...

Gostaria de saber a vossa opinião.

Obrigado a todos,

P.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Há por aí noticias de que já há Python em .NET...

Mas o .NET em Linux ainda anda atrasado...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Há por aí noticias de que já há Python em .NET...

Mas o .NET em Linux ainda anda atrasado...

Sim, é o IronPython. http://www.ironpython.com/

Já agora: http://www.jython.org

Eu comecei por aprender C# e depois mudei-me para Python e digo-te que é muito mais interessante, mas tudo depende do que queres fazer... se me perguntares se o C# é mais rápido que o Python, secalhar até é, e para grandes projectos com muitas forms, talvez seja mais apropriado para ti... agora tudo depende do que queres fazer.

Eu quis aprender Python porque tem uma sintaxe muito limpa, é fácil de entender, open source, funciona em todas as plataformas, tem um interpretador que te ajuda imenso. Além disso tem suporte para muitas coisas, como scripting, web applications (Django), jogos (PyGame), GUI's (wxPython) entre muitas outras coisas. Além disso tens muitas fontes de informação e tutoriais sobre a linguagem.

Uma das desvantagens do C# é o utilizador ter de sacar o .NET Framework.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Quanto ao meu projecto inicial, será algo para controlo e gestão de stocks. (Sei que existem imensos disponíveis, mas quero fazer à medida). Como tal, terá muitos forms... Ficha de artigo, local no armazem, fornecedor... etc. Parece-me que este software (http://www.tinyerp.org/) foi feito em python e pelo que me parece, é muito porreiro. Agradável à vista e funcional. Também existe BOO, e dado que a sua sintax é muito semelhante à do python, e corre em .NET e mono, teria portabilidade.

Estou francamente indeciso. Quanto ao grau de dificuldade de aprendizagem... com qual das duas poderei ficar mais produtivo em menos tempo? (Tendo em aonta que tenho que ler ainda muito sobre OOP e só depois aprender C# ou pthon).

Fico a aguardar o vosso excelente feedback.

P.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Claro que ficas produtivo muito mais rapidamente em Python. Sim, também conheço Boo (só muito ao leve, só perdi 10min no site, mas achei interessante), mas ainda não está estável.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Viva! PaLobo

Não sou especialista mas tb ja passei pelo que tu estás a passar e talvez posso te ajudar.

Vou tentar fazer um comparativo entre as duas linguagens:

--1º  Portabilidade: Tanto Python como C# ambas funcionam em varias plataformas.

--2º  Facilidade: Python é mais fácil. exemplo: as variaveis são auto-tipadas, não e necessário {} ou ; é só identar o código e já está....

--3º  Rápidez: Python é interpretado, C# é Compilado mas precisa da framework, dependendo do tipo de programa o C# perde.

--4º  Python no linux é nativo, para instalar no windows o ficheiro é pequeno e não consome recursos da máquina como o .net

--5º  Python pode ser compilado para windows com py2exe e não precisa instalar o python2.4 no windows.

--6º  Python tem um parente proximo o BOO que é muito fixe e poderoso funciona com Mono e Mono é multiplataform

--7º  C# em Mono é mutiplataforma, C# em .Net Não.

--8º  Python é mais fácil que pascal.

Essa são apenas umas das diferenças que me lembro, assim que me lembrar de mais alguma eu digo.

Resumindo: aprende Python depois logo vê.... :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Lembrei de outra coisa, voce pode fazer a interface do teu programa com o GLADE e codificar com Python. Um bom exemplo de como funciona é o programa Nicotine (clone do soulseek escrito em python para linux). Eu tenho no ubuntu e funciona lindamente e apanha as skins do gnome.

vou lhe dar um links sobre python e glade fixes:

http://www.linuxjournal.com/article/7421

http://www.pythonbrasil.com.br/moin.cgi/PythonBrasil

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pela minha experiência, volto a referir que se é para correr em várias plataformas, aconselho o Java ou Python.

O C# não aconselho fora do Windows e também nunca encontrei reais mais valias no facto do .Net suportar várias linguagens.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas pessoal. É como muito prazer que digo que já iniciei a minha aprendizagem em python. Já comecei a ler excelentes ebook s como o byte of python e beginning python. Em breve vou passar para wxpython (glade). Estou a trabalhar num mini projecto juntamente com o triton e com quem mais queira. De momento está a progredir muito lentamente, mas dados estarmos todos ainda a aprender é natural...

Assim que tivermos dados suficientes, iremos fazer um tutorial ou um wiki. Logo se vê...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Confirma-se, tenho andado a aprender muita coisa também e estou a adorar Python.  ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Existe um tópico no fórum sobre o projecto: Proposta de projecto Python.

Por agora está parado, pois o PaLobo teve de aprender PHP temporariamente para fazer um trabalho, mas logo que ele despache o trabalho, vamos voltar ao projecto.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu pyton só vi de alto, mas programa em Java, C e tou a aprender C#, penso que se o objectivo é aplicações multiplataforma java é a solução até porke pele ke andei a ler a proxima versar o java 1.6 vai ser 58% vais rapido do que a actual e a questao da velocidade era sem duvida a manxa negra no java. Aquanto a C# tou a gostar bastante, é muito simples, pelo menos para quem sabe java ou C, e pelo que testei até agora é bastante leve é verdade que é recomendado apenas para win, mas actualmente ja se pode programar para outras plataformas em C#.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Existe um tópico no fórum sobre o projecto: Proposta de projecto Python.

Por agora está parado, pois o PaLobo teve de aprender PHP temporariamente para fazer um trabalho, mas logo que ele despache o trabalho, vamos voltar ao projecto.

CONFIRMADO!!!

Se tudo correr bem, no fim deste mês já devo ter o projecto concluído e depois voltamos ao ataque a todo o vapor!!!

Até lá, quem tiver mais sugestões ou ideias para o projecto... é só dizer. :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora