Executando verificação de segurança...
3

GO ou Kotlin? Por que?

Boa tarde,

Kotlin

Recentemente venho procurando uma linguagem nova pra estudar, apesar de ter tido contato com Kotlin por conta de desenvolvimento Mobile, eu não vejo muitas empresas pedindo ela em vagas

Ela é uma boa linguagem para investir tempo a fim de conseguir trampo?
Eu sei que ela tem interoperabilidade com Java, mas ainda preferem Java.

Go

Eu venho notado uma grande onda nessa linguagem e o que me chama a atenção nela e a possibilidade de explorar os limites de velocidade em uma linguagem feita para isso.

Me ajudem a decidir entre uma ou outra e me deem motivos plausíveis.

A decisão final será minha, só quero uma ajuda pra decidir no que vou investir tempo e esforço.

5

Infelizmente não há resposta certa pra essa pergunta pois depende de muita coisa... por exemplo, qual seria o seu objetivo ao aprender a linguagem X ou Y?

Deseja trabalhar com dev mobile para android?

Deseja trabalhar com dev para cloud, web ou CLIs?

Deseja aumentar as chances de ser contrato independente do tipo de projeto?

1

Meu foco é não ter uma briga tão grande por vagas de trabalho, continuar desenvolvendo em alto nível e ser contratado independente do projeto.

Gosto de desenvolvimento mobile e também gosto de desenvolver backend.

1

Se o objetivo é:

..não ter uma briga tão grande por vagas de trabalho, continuar desenvolvendo em alto nível e ser contratado independente do projeto.

Ambas as linguagens podem ser utilizadas para esse fim.

Pois especialistas em dev mobile nativo, especialmente em Kotlin, são muito valorizados.

Já a linguagem Go é uma espécie de coringa que a cada dia aumenta seu espaço no mercado, principalmente nas grandes empresas de TI e consultorias, por conta do seu uso em cloud/microservices e todo tipo de solução backend e CLI.

Portanto, acredito que seja mais uma questão pessoal do que mercadológica. Sugestão: estude o que vc está mais empolgado para aprender.

3

Recomendo você aprender as duas. Fazer algum projeto simpkles usando elas e após isso decidir a que se sente mais confortável.

1
2

Concordo com os comentários gerais, que são linguagens bem distintas e que se aplicam a cenários totalmente diferentes.

Sou dev mobile (Flutter) e conheço um pouco de Kotlin. Nesse ambiente, o Kotlin seria a dica geral pq é a linguagem nativa pro Android hoje.
Go já é mais voltado à back (e alguns pontos com DevOps, IA e IoT), então é um outro cenário de aplicação.

Minha dica seria tu olhar qual direção tu pretende se aprofundar (front, back, mobile, DevOps) e a partir daí a decisão fica mais simples.

1

Eu já atuei em diversas frentes como desenvolvedor, front, back, rpa etc.
E tenho meu amor pelo Flutter, até pq eu amo programar para mobile (Só não tive uma experiência focada nisso, oq eu gostaria), mas como atuo como fullstack eu penso muito nisso de escolher Kotlin para aprender mais sobre o nativo de Android e também atuar como backend usando Kotlin.

Mas vejo que Kotlin é muito pouco usado para essa finalidade (backend) por isso penso em GO.

Como falei tenho um apreço muito grande por mobile, mas também tenho por backend rs.

2

Te entendo total! Gostar de uma stack que não é tão focada pra alguma área que vc acaba sendo mais experiente é meio triste... haha'

Mas cara, o que eu te dou de dica é:
Se vc vai aprender uma nova stack sem ter nenhum motivo "profissional" no momento (não é um requesito do seu trabalho atual ou de algum que esteja diretamente interessado), foca no que vai te manter mais animado pra estudar e testar por mais tempo.

Aprender alguma coisa nova "só pq é comum no mercado" é uma faca de dois gumes, pq tu fica mais perto do mercado, mas sem uma previsibilidade de realmente iniciar um trabalho com aquilo, vc vai desanimando e vai largar no meio do caminho.

Por isso eu te indico estudar o que pode te manter interessado por mais tempo, mesmo sem ter que fazer isso "por obrigação".

2

Vou continuar estudando o Flutter e fazendo minhas aplicações aqui e vou tacar o Go no backend, seja o que Deus quiser. kkk

1

Cara, para mim tanto kotlin quando Go são boas linguagens com vagas que estão pagando bem. Acredito que sua escolha deve se basear em onde você que chegar, quais empresas você que trabalhar que problemas você quer resolver, e também olhar tanto o mercado nacional quanto o mercado mundial.

Particularmente acho a escolha de Kotlin mais interessante, pois o ecossistema da JVM é MUITO amplo, tanto para mobile quanto para backend. No backend vejo muitas empresas migrando do Java para o Kotlin justamente pela interoperabilidade o que traz muita robustes para as soluções e também faz com que as pessoas que ja trabalharam no ecossistema da JVM, não terem uma curva de aprendizado muito grande já que muitas bibliotecas são utilizadas em todos esses contextos (Mobile, Backend e até sistemas embarcados). Então se você procura mais "segurança" acredito que o Kotlin acaba sendo mais indicado nesse caso. Já o Go foi e está sendo cada vez mais adotado no mercado, principalmente em sistemas de alta performace (não se engane o kotlin também é uma escolha segura para sistemas de alta performace) por ser simples e a toolkit inicial dele ser na maioria dos casos o suficiente para resolver a maioria dos problemas, o que também acaba sendo muito bom por não ter uma curva de aprendizado do ecossistema do Go tão grande.

1

Essas duas ainda não tiveram o seu "boom".
Percebo que Go está ganhando o nicho em cloud, entre as duas eu apostaria minhas fichas em Go.
O mercado de I.A., IoT e cloud (<- aqui que entra Go), só tendem a crescer, pense nisso.

1

Tenho notado essa crescente do Go também e percebo que o Kotlin tem muito pouco espaço e vagas em relação a ela.

Pensando em mercado, I.A IoT e Cloud tem ganhado muita força nesses ultimos anos e creio que isso só tende a crescer mais, igual acontece com BigData.

Tenho amigos, por exemplo, que decidiram ficar em dados e costumam arrumar emprego mais rápido do que um dev fullstack ou qlqr outra coisa fora desse nicho.

1

Ola, como vai?

Na minha opiniao sao linguagens com propostas diferentes, atualmente estou aprendendo GO pois quero me especializar em uma linguagem backend fortemente tipada, coisa que acontece com o GO, achei uma linguagem atrativa pois ela foi criada para atender as demandas do desenvolvimento moderno trabalhando com varias green threads e com canais, buscando entregar uma solucao altamente performatica.

Espero ter ajudado e passado minha opiniao sobre GO, nao conheco Kotlin para poder te dar um embasamento.

1

É justamente isso que me chama atenção na linguagem, poder atuar no backend com uma linguagem dinamica e rápida.

Sou Dev Fullstack mas chegou a hora de me especializar em algo.

0

Banana ou maça? Como as linguagens em questão, é gosto, são linguagens com focos diferentes, modelos de programação diferentes.

Meu conselho?

Apreenda fundamentos, linguagens são ferramentas hoje é martelo, amanhã serrote e por ai vai.

Último comentário: não tercerize suas decisões, elas são só suas.