Por que você precisa aprender mais linguagens de programação

imagem

De um tradutor: hoje publicamos para você um artigo do desenvolvedor Akshat Giri , que compartilha seus pensamentos sobre por que vale a pena aprender cada vez mais linguagens de programação.

Trabalho como programador há quatro anos. Começou com C #, desenvolvendo jogos e depois mudou para Python e aprendizado de máquina. Então eu aprendi JavaScript e TypeScript para o frontend. O próximo passo foi o desenvolvimento de aplicativos móveis, por isso comecei a usar o Ionic, React e React Native. Fiquei interessado no back-end e comecei a trabalhar com o Go. Um pouco mais tarde, Dart, Java e PHP foram adicionados à lista de minhas linguagens e estruturas - todas as três foram necessárias durante meu trabalho no Facebook.

Não quero dizer que sou especialista em todos os idiomas mencionados. Eu só tenho experiência com eles, mais do que com outras linguagens e estruturas. Por que a escolha caiu sobre eles? Bem, pareceu-me que eles oferecem mais do que os outros, é por isso que é.

A Skillbox recomenda: Curso prático de dois anos "Eu sou um desenvolvedor Web PRO" .

Lembramos que: para todos os leitores de "Habr" - um desconto de 10.000 rublos ao se inscrever em qualquer curso Skillbox usando o código promocional "Habr".



Mas por que eu aconselho você a aprender mais idiomas? O fato é que você nem imagina o que será necessário em alguns anos. E escolher o idioma ou estrutura certa pode economizar uma tonelada de tempo ao resolver um problema específico.

Solução para o primeiro problema


Vou dar um exemplo simples. Há alguns meses, optei por fones de ouvido Bluetooth. Parado no AirPods. Eu tentei muitos outros, mas estes me pareceram o mais conveniente possível. O problema foi que eu os usei simultaneamente com um laptop Windows e um telefone Android. E se os dois aparelhos estiverem por perto, os fones de ouvido serão conectados ao telefone, mas não ao laptop. Portanto, tive que desconectá-los manualmente e reconectar. Todo dia

Isso é bastante cansativo, e decidi criar um botão que resolveria o problema de conectar fones de ouvido a um laptop quando necessário.

Inicialmente, decidi usar o Python para resolver esse problema. Eu pensei que poderia encontrar facilmente uma biblioteca que permita controlar dispositivos Bluetooth. Isso acabou errado; nenhuma boa biblioteca foi encontrada.

O próximo passo é o Node.js. Consegui encontrar uma biblioteca JavaScript que permitia controlar as funções do Bluetooth no meu computador. Depois de executar esse script no Node.js, consegui o que é necessário.
// App.js const device = new bluetooth.DeviceINQ(); const airpodsAddress = "18:81:0E:B2:6B:A6" const airpodsName = "Akshat's Airpods"; device.findSerialPortChannel(airpodsAddress, function (channel) { // make bluetooth connect to remote device bluetooth.connect(airpodsAddress, channel, function (err, connection) { if (err) return console.error(err); console.log('YAY! Airpods Connected'); // Don't need a communication stream between the two // so let's just exit the stream. setTimeout(() => process.exit(0), 5000); }); }); 

OK, mas agora eu precisava de um botão na tela que iniciasse o script. No final, decidi colocá-lo na barra de tarefas do Windows para que estivesse sempre disponível. Fiz outro script que me pareceu ajudar a concluir esta tarefa. Mas não, eu tive que me voltar para Golang. Ele possibilitou a criação de um arquivo executável, que, por sua vez, executou o script criado anteriormente no Node.js.
 / main.go package main import ( "fmt" "os/exec" ) func main() { output, err := exec.Command("npm", "start").CombinedOutput() if err != nil { fmt.Println(err.Error()) } fmt.Println(string(output)) 

Tudo deu certo. Fiz um atalho para a área de trabalho e o movi para a barra de tarefas. Está tudo bem, tudo funciona.



Eu pensei que em C # eu também poderia resolver esse problema. Mas eu realmente não queria instalar o Visual Studio e o IDE.

Meu exemplo demonstra como diferentes idiomas ajudam a encontrar uma solução híbrida para um problema específico com tempo mínimo. Existem muitos outros exemplos, mas acho que o ponto é claro.

Então, por que mais aprender outras línguas?


Para ser sincero, isso é interessante. Além disso, ele expande seu horizonte, tira você da zona de conforto (não cria problemas, mas dá um impulso, o desejo de aprender algo novo).
Outro motivo é ir além dos recursos de um idioma ou estrutura. Linguagens orientadas a objetos são ótimas, mas você também deve aprender programação funcional ou processual.

A primeira linguagem de programação que você aprender será a mais difícil. O segundo, provavelmente, parecerá ainda mais difícil. Mas ainda mais o estudo de novos produtos parecerá um passeio no parque. Uma sintaxe um pouco diferente, algumas coisas novas, e é isso. Além disso, você pode estudar bibliotecas e estruturas especializadas de idiomas já dominados.

Outro motivo que, ao que me parece, pode levar ao aprendizado de outros idiomas é o WASM. O Web Assembly permitirá que você execute o idioma necessário em um navegador.

Se você é um programador JavaScript ou Python, vale a pena dominar linguagens de baixo nível. Você pode começar com C ++ ou C, mas eu aconselho Golang. Ele permite que você obtenha todos os recursos de alta velocidade do C ++ sem os problemas característicos da família C.

Se você trabalha com linguagens de baixo nível, tente JavaScript ou Python. Ambos são muito populares e comuns. Ambos podem ser usados ​​em conjunto com idiomas de baixo nível. Você pode escrever módulos C ++ para Node.js e Python.

Compartilhe sua própria experiência nos comentários: quais idiomas você conhece, o que planeja aprender e por quê?
A Skillbox recomenda:

Source: https://habr.com/ru/post/pt435414/


All Articles