|
bookmarks:
|
main | ongoing | archive | private |
Já que aparentemente só tem pau no cu nos finais de semana no chan, segue abaixo um /cc/ de um anão de alguns anos atrás:
– Melhor método para aprender a programar:
Passo 1 Escolha sua linguagem. Comece por uma 'simples' ou que não exija instalar uma bordoada de plugins ou caralhos alados. Sugestão? Python, JavaScript ou alguma linguagem simples.
AQUI VAI O IMPORTANTE: No começo, não importa a linguagem. Você deve se focar em aprender ALGORITMOS. Não se preocupe em resolver coisas complicadas específicas da linguagem como por exemplo fazer um Servidor com WebSocket em C/C++ que use SSL e consiga enviar e receber mensagens criptografadas com uma chave privada sua.
Aprenda conceitos como Laços, Condicionais, Complexidade, Abordagens a Estruturas de Dados como Buscas e coisas assim que são inerentes a qualquer linguagem. Sempre é dito que quem sabe programar em C/C++ sabe programar em qualquer linguagem e te uma curva de aprendizado muito menor para outras. Não é por C/C++ ser mais difícil mas por você ter que se preocupar constantemente com problemas pequenos e ínfimos que outras linguagens não deixam o programador ver. Coletor de Lixo, Controle de Memória, Objetos com 0 métodos implementados por default, estruturas de dados da linguagem bem básica. Essas coisas treinam a cabeça do programador em questão de Algoritmos.
Passo 2 Faça muitos exercícios e resoluções de problemas simples. O site Codewars é um bom lugar para treinar. Existem outros sites como esse mas o Codewars tem um sistema onde você vê as melhores respostas e pode comparar com as suas. Sempre tente aprender com as respostas dos outros, entender o que fizeram e o motivo de fazerem aquilo daquela forma. E também é importante saber: POR QUE FUNCIONA?
Passo 3 Teste seu próprio código. Sempre construa testes e chamadas burras para seu código. Chamar sem passar argumentos, enviar argumentos vazios ou nulos, testar o envio de argumentos de tipos diferentes. Todas estas coisas te obrigam a pensar sempre antes de programar nos possíveis erros que os outros programadores podem cometer a usar seu código e previnem que cagadas futuras suas. Existem algumas API's para testes unitários nas linguagens e você pode implementar as suas próprias API's.
Passo 4 Tenha um padrão. Construa seu código com um padrão e observe o padrão usado pelos bons programadores. Modo que chamam variáveis, como constroem funções e como fazem para testar seu próprio código. Ordem de prioridades e coisas assim.
Faz parte desse passo, também aprender sobre um mecanismo de Versionamento para seu código. Aconselho fortemente o Git. Comece a usar o site github.com e divirta-se. Aprenda isso e será um diferencial na sua produção.
Passo 5 Escolha seu futuro. Você quer ser um programador de Jogos? Quer fazer Sites? Gosta de criar bibliotecas para outros usuários usarem? Veja com o que você pretende trabalhar e vá atrás de programadores dessas áreas para saber e conhecer o que eles usam, como usam, o que fazem para conseguir o código que possuem.
Aqui é meio relativo e sua escolha pode influenciar muito o seu início.
Eu aconselharia você a aprender as linguagens(nessa ordem): - JavaScript - Python - C/C++
Após isso, se você quiser fazer Sites, você pode usar JavaScript, aprender HTML(que não é linguagem de programação) e usar algum 'flavor' como AngularJS ou ReactJS para fazer o Front-End, ou NodeJS para o Back-End. Para Back-End também é útil saber Python para usar Django ou Flask.
Se você quiser criar Jogos, existem várias API's em Python, C/C++ e Java (que você pode aprender de maneira rápida após juntar conhecimentos de JavaScript com os de C++). Também existem coisas de C#, mas não conheço muito. A base do Unity é em C#.
Se quiser trabalhar em empresas, saber C/C++ e Java vai te ajudar. De C/C++ você vai para qualquer lugar.
Espero ter ajudado.