Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #59 da revista programar. Faz já o download aqui!

Astuto

Conselho: linguagem para iniciar

Mensagens Recomendadas

Astuto    0
Astuto

Boas,

Estou com ideias de começar a programar então surge a dúvida em que linguagem começar sem que haja um objectivo/aplicação a criar.

Neste momento estou entre Python ou C mas gostava da vossa opinião.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pwseo    223
pwseo

@Astuto,

Depende muito do que pretendes fazer como primeira aplicação. Python e C são duas linguagens muito diferentes com ênfases em elementos da programação também eles muito distintos. Se o teu objectivo é prototipagem rápida de aplicações sem perder muito tempo com detalhes de baixo nível como a gestão de memória e/ou performance, e se pretendes ter ao teu dispor várias ferramentas que te permitem escrever código sem teres que implementar muitas estruturas de dados / algoritmos manualmente, então Python é a escolha mais acertada.

Regra geral, nunca podes errar começando com Python.

C, por outro lado, já implica um desejo de conhecer melhor a máquina, como a memória funciona, e paciência para implementar muita coisa à mão que antes até poderia parecer trivial.

  • Voto 1

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pwseo    223
pwseo

Como disse, depende do que pretendes, mas caso não saibas bem o que pretendes, Python é uma opção muito segura (a mais segura), por diversos motivos: é uma linguagem de fácil compreensão, funciona nas plataformas mais utilizadas e traz imensos módulos consigo que te facilitam bastante o desenvolvimento de aplicações.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Knitter    101
Knitter

Há inúmeros tópicos sobre o mesmo assunto espalhados pelo fórum :)

Cada um vai dar-te uma resposta diferente, tipicamente mais próxima daquilo que gosta de fazer ou com o qual tem experiência. Pessoalmente acho que depende tanto da linguagem do de ti mesmo. C é uma linguagem que, pelas características, te pode expor a mais áreas e coisas mais complexas, Python por outro lado é mais simples de usar e esconde muito do que é importante para um programador, isto inicialmente, no fundo as duas são boas para ensinar a programar.

Já leccionei módulos introdutórios para iniciar a programação em C, em Java e em PHP; das três, aquela onde vi os alunos a aprenderem mais depressa a "montar" um pequeno programa foi em Java, mas principalmente porque ao ensinar abstraí muito do que era necessário saber e forneci vários módulos de coisas já feitas e, muito importante, forneci parte de código para que pudessem "ver" aplicações com interface gráfica (janelas, botões, etc); Em C fazer uma aplicação com do mesmo tipo exige saber mais e é difícil para iniciantes, ou usar uma ferramenta de desenho mais complexa, sendo também mais difícil para iniciantes.

No entanto, aprender o básico é igual em qualquer das duas linguagens que indicas, até porque se estás a iniciar há coisas em C que não deves ver e há coisa em Python que só deves usar quando perceberes como funcionam. Por exemplo, acho que só deves usar listas se já souberes o básico de programação (estruturar programas, entender bem diferença entre código e execução, funções, básico de recursividade, ciclos bem percebidos, básico de funcionamento de memória); em Python podes usar listas logo de início sem saberes nada de como é suposto essa estrutura funcionar, a função que te deixa usar uma lista ligada é de acesso trivial, em C tens de implementar tu as listas ou ir buscar uma biblioteca (neste  caso é também tão simples como em Python, só tem o passo de instalar a biblioteca).

Depende de ti, se te consegues manter motivado para gastar várias semanas (meses?) a fazer aplicações em linha de comandos, se consegues perceber a parte importante e lidar com mensagens de erro obscuras (algumas exigem saberes exactamente o que se passa, o que não é fácil para iniciantes); por outro lado se pretendes fazer um pequeno jogo, uma aplicação gráfica, e ir aprendendo daí, tendo o cuidado de ir aprofundando os conhecimentos, então Python é uma opção melhor. Se estás a aprender sozinho ou não tens a certeza se gostas de programação, sugeria Python; se tiveres alguém que te possa apoiar C oferece uma boa base.

Quando tenho possibilidade de escolher como vou leccionar níveis introdutórios uso uma abordagem mista: começo com C (código, compilação, runtime, funções, recursividade, gestão básica de memória, acesso a ficheiros de texto e implementação de listas), depois com isso como base passamos para Java (e Slick2D, um pouco antigo mas serve), e avançamos no resto com desenvolvimento de jogos; Se tiver de explicar acesso a bases de dados, aplicações de gestão, cliente/servidor, tipicamente prefiro o PHP.

Mais confuso? :)

Editado por Knitter
typos.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo    1151
HappyHippyHippo
1 hour ago, Knitter said:

se tiveres alguém que te possa apoiar C oferece uma boa base.

O que não faltam são pessoas a apioar no fórum ;)


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação 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

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.