1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Discussão - qual a melhor forma de aprender a programar

Discussão em 'Programação' iniciada por Gurzi, 12 de Agosto de 2007. (Respostas: 23; Visualizações: 7619)

Estado do Tópico:
Fechado a novas mensagens.
  1. Gurzi

    Gurzi Power Member

    boas malta

    Considero-me um programador de nivél básico /médio , sei as coisas básicas, como ciclos, variaveis, arrays, blabla etc.

    A minha questão é , qual a melhor forma de ganhar experiência e aprender a progamar numa forma mais avançada ?

    Seguir livros capítulos a capitulos ? Inventar maravilhas para fazer ??

    digam da vossa justiça e experiência!
     
  2. xtr3me

    xtr3me Power Member

    Depois de teres noções básicas sobre os conceitos teóricos acho que o melhor é mesmo inventares pequenas coisas onde se apliquem esses conceitos.

    Se não te lembrares de nada, então aí arranja um livro qualquer que tenha "exercícios" práticos no fim de cada capítulo.
     
  3. loster

    loster I'm cool cuz I Fold

    Aprender todas as linguagens quanto puderes e inventar, inventar muitas aplicações, basei-te em algumas aplicações open-source.

    Se puderes compra um livro de uma linguagem em que tenhas experiencia.
     
    Última edição: 12 de Agosto de 2007
  4. HecKel

    HecKel The WORM

    E depois fica todo baralhado :D

    Para aprender, que se dedique a sério a uma linguagem de programação, quantidade não é qualidade.

    Sabendo dominar os conceitos, não é a sintaxe e a semântica que vão ser obstáculo.

    Dicas para aprender a programar? Praticar.

    Livros? Pede MUITAS sugestões, há livros que só servem para uma coisa, derrubar árvores e acumular pó. Um livro é um investimento, não compres à toa.

    A forma de praticar já varia consoante a orientação da linguagem, se é mais para a web, é fazeres aplicações web, podes começar por simples homepages (mas eu sei que isso já dominas bem), se forem orientadas para aplicações em desktop, inventa coisas que te sejam ÚTEIS, pelo menos o tempo não é perdido apenas para aprender.

    Fazer pequenos jogos (galo e afins) também é uma forma de aprenderes, vais-te divertindo conforme crias a aplicação, e sempre dá para ires sempre melhorando a mesma, novos níveis de dificuldade, IA, etc.

    Ou seja, tudo se resume a praticar.

    HecKel
     
  5. loster

    loster I'm cool cuz I Fold

    Por isso mesmo é que disse tantas quanto puder, não era para ele se aventurar por C, C#, C++, etc. :p .
     
  6. HecKel

    HecKel The WORM

    C, C#, C++ são excelentes recomendações para começar (C# não conheço bem)..., agora se ele se mete com 3 linguagens, acaba por não aprender nenhuma.

    Se quer aprender, que comece por uma linguagem decente, nada de VBs, Pascais e afins.

    HecKel
     
  7. loster

    loster I'm cool cuz I Fold

    Eu sei que são :p, e era por aí que gostava de ter começado a programar, mas lá tive que "gramar" com Pascal, sei que é bom para aprender o básico da programação (por exemplo os if's, to do's, and so on).

    Também aconselho JAVA, quem passa por C, C# e C++ também é boa aposta passar por esta.
     
  8. xtr3me

    xtr3me Power Member

    C++ é a pior linguagem para se começar. Ninguém deve passar a C++ sem saber C. É como aprender a andar de bicicleta numa bicicleta de ciclismo num dia de chuva.

    Na minha opinião claro.

    Para mim o ideal é Python para começar, ou então se se tiver a ideia de que se quer começar logo pelas linguagens mais "conhecidas" deverá ser C->Java->C++/C#

    Isto para mim claro.
     
  9. HecKel

    HecKel The WORM

    Por acaso não acho que C++ seja mau para começar, mas não falamos de qual é a melhor linguagem para começar, para isso já existem alguns tópicos iguais :D Apenas referi aqueles exemplos em contra-argumentação à sugestão de aprender várias linguagens.

    Sobre o tópico, sinceramente não acho que tenha muito mais a dizer, como tudo na vida, o que se quer é prática. Agora convém saber praticar ;)

    HecKel
     
  10. Rui_Carlos

    Rui_Carlos 1st Folding then Sex

    o Pascal não é decente? porquê?
    para projecto de grande dimensão, poderá não ser a linguagem mais indicada...

    --------------------------------------------------------------

    a melhor maneira de aprender a programar (ou pelo menos, de saber quais as falhas que ainda temos), é pegar em problemas reais, e aplicar aquilo que aprendemos ao ler livros, tutoriais, etc. e a fazer pequenos exercícios.

    é extremamente importante (pelo menos do meu ponto de vista) aprender os conceito da POO. dependendo da área, aprender Bases de Dados (e aprender BD não é só SQL!!!), UML, e outros conceitos mais abstractos da programação, também dá jeito.

    acima de tudo, o importante é adquirir uma metodologia de trabalho, que vamos melhorando de forma a evitar erros anteriormente cometidos e a optimizar o nosso desempenho. mas para isso, parece-me indispensável pegar em problemas minimamente reais.

    quanto às linguagens, cada vez mais aconselho o Java. apesar de ser adepto do C/C++, por todas as funcionalidade de baixo nível que disponibiliza, permitindo programas com níveis de desempenho muito bons, obriga-nos a perder tempo com coisas que o Java já faz sozinho. para além de em Java ser fácil de encontrar bibliotecas para tudo e mais alguma coisa e que funcionam em todo o lado.
     
  11. blueomega

    blueomega Power Member

    eu aconselho java tambem, tem muita simplicidade comparada a x++ e é puramente orientada a objectos. para um utilizador a aprender se sabe fazer em c++, faz em java e vice versa

    o que eu acho mais complicado em c++ é mesmo os apontadores, ha 2 anos que uso c++, mas ainda me fazem a cabeça em agua os mesmos, tenho que arranjar um tempo pra um brainstorm sobre o assunto

    e para quem quer começar a programar o meu conselho é TERMINAR SEMPRE O K SE INICIA, a fase final é a fase mas complicada, onde mais problemas aparecem, mas onde se tira realmente ensinamentos
     
  12. arkannis

    arkannis Power Member

    Eu comecei recentemente a aprender a sério qualquer coisita.

    Decidi começar por java. Há certas coisas relacionadas com a POO que me custam a entrar, mas de certo modo até gosto disso, dá mais pica :P
    Eu tenho vindo a seguir sempre o mesmo modelo a aprender, vou seguindo tutorials/livros, comecei pelo Java for Dummies, depois a meio achei que aquilo não era para mim, explicava demasiado o simples e o complexo omitia, então passei para os tutorials da Sun http://java.sun.com/docs/books/tutorial/ , mas tive alguma dificuldade em assimilar alguns conceitos da POO, então comprei um livro barato "Programação Orientada aos Objectos em JAVA 2" que me ajudou a compreender muita coisa. E agora vou aprendendo simultaneamente com o livro e com os tuts da Sun.
    Mas quando eu digo seguir livros, não é lê-los como se fosse um romance, normalmente, no fim de cada "matéria" invento sempre alguns programas funcionais para aplicar tudo o que aprendi até esse momento.

    Mas ás vezes falta ideias de coisas para fazer :/ , dava jeito assim algum site só com exercicios de várias dificuldades ou parecido heheh.
     
  13. Rui_Carlos

    Rui_Carlos 1st Folding then Sex

    offtopic
    o Java não é uma linguagem OO pura, pois tem tipos que não são objectos (int, float, char, ...).
     
  14. blueomega

    blueomega Power Member

    salvo erro, isso pode ser ultrapassado com wrapper classes e salvo erro a partir da versão 1.5 é tudo automatico, faz boxing e unboxing automaticamente, isto é conversão entre tipos primitivos e wrapper classes

    ja agora mais um offtopic, uma linguagem orientada a objectos so trata objectos, ha alguma que possa ser considerada puramente orientada a objectos?
     
  15. Rui_Carlos

    Rui_Carlos 1st Folding then Sex

    o que é certo é que podes ter coisas em Java que não são objectos. se uma linguagem tem tipos primitivos, normalmente não se considera uma linguagem OO pura.

    quanto a linguagens OO puras, o exemplo mais conhecido talvez seja o Ruby, mas, segundo a wikipedia, ainda tens o Smalltalk e o Eiffel (e certamente mais algumas).
     
    Última edição: 12 de Agosto de 2007
  16. estrafalhote

    estrafalhote Power Member

    boas..

    eu também secalhar encontro me em pé de igualdade contigo em programação, pois quando andava a tirar o meu curso aprendi a fazer umas coisitas engraçadas em C e mais tarde interessei me por VB.net e comecei a estudar um pouco aqui outro ali e aos poucos e poucos vou aprendendo.
    O que eu costumo fazer para treinar é ir aos livros de C e cadernos das aulas e ver os enunciados dos programas que faziamos nas aulas e tento adaptar para VB e quando tenho alguma duvida, procuro pela net até lá chegar.

    Agora não sei se é a melhor estratégia mas é apenas uma opinião para tentar ajudar-te
     
  17. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Dou-te razão nisso. Começar a aprender VB foi bom para fazer coisas bonitas a curto prazo, mas agora tentar perceber linguagens como C, tá quieto. Agora, só com persistência é que se percebe alguma coisa.

    No entanto, acho que Pascal até é uma boa linguagem para começar. Está no meio entre o C++ e o VB.

    E também concordo com o xtr3me - C antes de C++. Sim, eu cometi os erros todos :P comecei por VB e segui para C++. Resultado - é-me complicado distinguir funções C de C++.

    Para começar a programar... a minha opinião é a de que se devia começar por C ou Pascal, e NUNCA por Visual Basic. Se bem que mais tarde pode vir a dar jeito.

    Não aconselho a começar por OOPs nem Perl/Python, talvez porque os vejo a ambos mais ligados ao desenvolvimento para a web do que para EXEs. Pessoalmente, gosto muito de Perl, mas não começava por aí.
     
  18. souto

    souto To fold or to FOLD?

    Qualquer dia ainda me chamam o vendedor de livros, mas como um bom livro vale muito, cá vai:

    [​IMG]

    Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development - Craig Larman
    Ensina metodologias de engenharia de software, tais como reconhecimento e aplicação de padrões de desenvolvimento (GRASP e GoF), desenvolvimento modular e iterativo, planeamento de projectos, distribuição de trabalho num grupo, construção de frameworks, etc. Foi uma pedra basilar para mim. É aplicável a qualquer linguagem orientada a objectos, embora reconheça que não encontrasse dificuldade a adaptar as metodologias apresentadas a outros paradigmas, como os que Haskell ou C usa.
    Tem dois case-studies: Monopoly e um software para um POS (Point-Of-Sale, aquelas maquinetas que processam as compras num supermercado).
    Ensina a notação UML, embora o livro não seja sobre UML. Todo o UML é construido paralelamente durante a actividade de análise de requisitos, etc.
    Ensina técnicas de desevolvimento, tais como XP (Xtreme Programming) e Agile Modeling.

    Resumindo: dá uma excelente bagagem; recomendo para quem quer começar a programar a sério.

    PS: é bastante acessível. Bastante mesmo. Só requer conhecimentos mínimos de orientação a objectos (o livro usa exemplos em Java, embora seja aplicável a outras, tais como C# ou C++). Recomendo mesmo.
     
    Última edição: 15 de Agosto de 2007
  19. fnds

    fnds I quit My Job for Folding

    Longe disso, o Python é muito bom para "EXEs", alem de que é crossplataform, para mim o unico problema de começar em python é o facto de não teres de "tipar" e declarar variaveis, como no C. Uma das vantagem de começar em Python é os erros, não é preciso andar dois dias para corrigir um erro.

    (acho que desenterrei um tópico :P)
     
    Última edição: 9 de Maio de 2008
  20. firedrops

    firedrops Power Member

    posso falar um pouco do meu caso específico :)

    nunca tive formação em informático, sou caloiro de Medicina mas sempre tive um bichinho da programação. Já rodei várias linguagens e de longe a que mais me agradou foi Python. É simples, é versátil, é multi-plataforma. Penso que para aplicações não-críticas em performance é perfeita.
     
Estado do Tópico:
Fechado a novas mensagens.

Partilhar esta Página