Que língua devo aprender depois de ter aprendido Python?
É fantástico que você tenha tomado a iniciativa de aprender Python. Você disse que desenvolveu aplicações web mas não quer aprender desenvolvimento web. Aqui estão algumas orientações que lhe vêm à cabeça para escolher o seu próximo passo:Aprenda uma linguagem que irá realmente aprofundar a sua compreensão de como os computadores funcionam debaixo do capô. Para este ponto, I'vou com C. É muito importante para um programador entender que implicação seu código está tendo no computador. Aprender uma linguagem como C lhe permitirá entender como coisas como gerenciamento de memória e como funciona a memória física, manipulação de bits, tipos de dados, ponteiros, passando por referência, e muitas outras operações essenciais que linguagens de nível superior como Python escondem do programador. Se você acabar gostando de C, você pode até aprender algum tipo de Assembly (eu digo ' algum tipo' porque cada arquitetura de computador tem sua própria linguagem de Assembly ligeiramente diferente), o que irá realmente aprofundar sua compreensão de como as coisas funcionam em um computador.
Porquê a ênfase na aprendizagem do que se passa por baixo do capô? Simples - mais conhecimento permite que você tenha mais controle sobre o desempenho. Se eu lhe disser que, por exemplo, algo tão simples como trocar a ordem de dois loops aninhados pode acelerar o seu código por mais do que um factor de 2, pode parecer magia negra completa no início. Mas se você aprender C, algum Assembly, e entender como a memória funciona, então d'oh, é claro que reverter a ordem dos for-loops evitaria bater, portanto dobrando a velocidade do seu código!
Aprenda uma linguagem que realmente conduz através dos conceitos de programação orientada a objetos. Embora eu pessoalmente acredite que aprender OOP é satisfatório por si só, simplesmente por causa do quão fascinante tudo isso é, ele tem enormes benefícios tangíveis. O OOP está em toda parte. Inúmeros projetos confiam no OOP porque ele permite facilmente esconder detalhes desnecessários de outras partes do seu código ou equipe de codificação, e entregar apenas a funcionalidade que importa. Isso torna os seus projetos mais gerenciáveis. Isto também, de forma semelhante, ensina-lhe - na prática - como seguir práticas de codificação sólidas como a modularização.
Se você está procurando por projetos interessantes no OOP, Objective-C é até agora a linguagem principal para aplicativos OS X e iOS (eles'estão incorporando o Swift, mas ele'vai demorar um pouco antes dele'está totalmente implementado), e é um super conjunto de C, o que significa que ele se baseia no que quer que C tenha. Se você pretende seguir meu primeiro conselho sobre aprender C, então o Objective C pode ser um segundo passo muito lógico e gratificante. Você poderia então desenvolver aplicações OS X ou iOS, que é um grande mundo por si só.
Se não for Objective C, então Java também é um ótimo lugar para começar para o OOP. É uma grande linguagem e é a base para o Android, o que lhe dá um enorme parque infantil onde você pode experimentar depois de aprender Java e construir grandes projetos. Se não for o Android então bem, há toneladas de outros lugares que você pode usar Java, mas eu gosto de citar o desenvolvimento de aplicativos móveis porque ele's normalmente é um lugar divertido para começar.
Eu acredito que ao invés de procurar por uma linguagem específica, você deve procurar ter objetivos mais abstratos como os mencionados acima, e então encontrar linguagens que lhe permitam alcançar esses objetivos.
Melhor da sorte!
Artigos semelhantes
- Que língua backend devo escolher para aprender: Python, PHP, ou Ruby para desenvolver aplicativos de mídias sociais móveis como Twitter?
- Em média, quanto tempo leva para um novato aprender os fundamentos e funções gerais do Python se for a sua primeira língua?
- Qual é o melhor dicionário de espanhol para a língua espanhola de Espanha? E para a Língua Espanhola das Américas?
- É aconselhável aprender Tkinter em Python para avançar na carreira ou para obter uma melhor oferta de emprego como desenvolvedor Python?