Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
January 12, 2022 03:10 am GMT

Meu incio no mundo Kotlin

Em janeiro de 2021 comecei em um novo trabalho. Alm dos desafios de adaptao que costuma ocorrer ao voc iniciar em uma nova empresa, como, por exemplo, regras e cultura da organizao, arquitetura e objetivo do projeto, etc.

Nesse novo trabalho tive outro desafio que foi desenvolver com uma linguagem de programao que eu nunca tinha tido contato anteriormente e essa linguagem foi o Kotlin, de incio fiquei um pouco com medo de ter que mexer com algo que nem sequer tinha estudado antes. S tinha visto alguns vdeos aleatrios no youtube sobre Kotlin, mas bem por cima mesmo, sem algo muito detalhado.

Mas depois de um tempo eu me senti mais confortvel, durante esse artigo, irei explicar um pouco de como comecei a estudar Kotlin e, porque resolvi continuar investindo nele.

Kotlin alm do Android

Um dos grandes desafios era que eu iria desenvolver com o Kotlin no lado do servidor, muito comum se ouvir falar de Kotlin para programao Android, mas ela uma linguagem multiplataforma, ao decorrer do artigo vou explicar melhor sobre isso.

Fiquei receoso em investir o meu tempo de estudos em uma linguagem que quase no via vaga para backend, via muitas para mobile, mas backend era quase zero. Lembro que chamei a @morgannadev para conversar, pois, ela era a nica pessoa que eu conhecia que trabalhava com Kotlin no backend e perguntei se realmente valia a pena investir meu tempo estudando e se tinha mercado para essa tecnologia no backend.

Aps conversar bastante, cheguei na deciso de que iria continuar estudando Kotlin.

Como surgiu?

Kotlin foi desenvolvida em 2011 pela Jetbrains, o seu principal objetivo ao ser criada era porque a Jetbrains queria uma linguagem de programao para resolver problemas de produtividade na criao de suas IDEs, que eram desenvolvidas com Java.

Porm, ela estava tendo problemas com certas caractersticas do Java, foi a que Jetbrains resolveu desenvolver uma linguagem de programao, que pudesse suprir suas necessidades e melhorar o desenvolvimento de seus produtos. A verso 1.0 do Kotlin foi lanada oficialmente em 15 de fevereiro de 2016.

Onde posso usar Kotlin?

Como foi falado anteriormente, Kotlin uma linguagem multiplataforma. Ela roda em cima da JVM (Java Virtual Machine), ou seja, voc consegue executar em qualquer lugar que rode a JVM.

Hoje em dia muito comum ver o Kotlin ligado ao desenvolvimento Mobile, o motivo disso que em 2017 o Google anunciou que a partir daquele momento, Kotlin era uma linguagem suportada para o desenvolvimento Android e em 7 de maio de 2019 declarou como a linguagem oficial para o desenvolvimento de aplicaes Android.

Mas podemos trabalhar com Kotlin no lado do servidor, desenvolvendo aplicaes Web utilizando frameworks como Micronaut, Ktor, Spring etc, esse meu foco atualmente. Tambm podemos criar aplicaes Desktop utilizando bibliotecas de interfaces como TornadoFx ou JavaFx. Existe ainda a possibilidade de transpilar um cdigo Kotlin para javascript, fazendo com que seja possvel desenvolver aplicaes web frontend. Voc pode achar mais informaes sobre o nessa parte da documentao.

Tambm possvel desenvolver aplicaes para IOS utilizando o KMM(Kotlin Multiplatform Mobile) e conseguimos criar aplicaes nativas para vrias plataformas utilizando o Kotlin native, temos um artigo da @lissadev sobre isso.

Kotlin possui vrias possibilidades para trabalhar, voc pode ver melhor na documentao oficial. Mas resumindo temos os seguintes locais onde podemos criar aplicaes:

  • Desenvolvimento Android
  • Desenvolvimento Backend
  • Desenvolvimento Desktop
  • Transpilao para Javascript
  • Desenvolvimento multiplataforma (Ios e Android)
  • Desenvolvimento nativo

Caractersticas do Kotlin

Logo abaixo voc consegue ver um exemplo de um cdigo escrito em Kotlin:

fun soma(valor1: Int, valor2: Int): Int {    return valor1 + valor2}fun main() {    val primeiroNumero = 10    val segundoNumero = 5    val resultado = soma(primeiroNumero, segundoNumero)    println("O resultado da soma : $resultado")}main()// O resultado da soma : 15

Esse um cdigo bem simples que declara uma funo chamada soma esperando dois parmetros do tipo inteiro e retorna a soma desses valores. J na funo main() definimos duas variveis que recebe dois nmeros inteiros, definimos uma varivel chamada de resultado que recebe o retorno da funo soma passando como parmetro s duas variveis declaradas anteriormente e por fim mostramos na tela o valor da soma, concatenado com uma string.

E no final chamamos nossa funo main. Voc pode executar o cdigo acessando esse link.

Como pode ver a sintaxe do Kotlin bem simples e amigvel. Uma coisa que escutei quando tava comeando, que o Kotlin pega as coisas que so boas de vrias linguagens e junta em uma s.
Durante o tempo em que estou escrevendo cdigo em Kotlin, me lembro de vrias coisas que utilizo em outras linguagens como, por exemplo javascript e Java.

Vantagens do Kotlin

Bom, mas quais so as vantagens em relao as outras linguagens? Existem diversas vantagens, mas eu resolvi destacar aqui nesse artigo as quais eu considero mais legais pra quem est iniciando saber.

  • Compatibilidade com Java: Como falado antes, Kotlin roda em cima da JVM, isso possvel, pois, um cdigo escrito em Kotlin no final compilado para um bytecode Java, ou seja, voc consegue utilizar Java e Kotlin no mesmo projeto, pois, no final na hora de executar, tudo vai ser convertido para um arquivo bytecode Java. Mas qual a vantagem disso? A vantagem que voc pode fazer a transio de um projeto escrito em Java para Kotlin com pequenos passos, pois, voc pode ter um projeto Java e comear a escrever novas funcionalidades em Kotlin e ir transcrevendo as classes antigas escritas em Java para Kotlin. Um recurso legal que voc pode usufruir o Java2Kotlin atravs de uma funcionalidade da IDE da Jetbrains. Voc pode entender melhor nesse link.
  • Suporte a vrias bibliotecas: Pela vantagem falada acima voc pode utilizar todas as bibliotecas utilizadas no mundo Java em seu projeto Kotlin, basta instalar a lib no seu projeto e importar no seu arquivo, provavelmente voc vai ter que mudar a forma de chamar certas funes, mas a prpria IDE da Jebrains te ajuda com isso. Uma dvida que tive no incio era se eu precisava aprender Java antes de aprender Kotlin. E a resposta NO, voc ter uma base de pode te ajudar, mas no um requisito para comear a estudar o Kotlin.
  • Linguagem mlti paradigma: Uma coisa bem legal que o Kotlin te proporciona voc poder utilizar diversos paradigmas de programao em seus projetos. Pois, o Kotlin suporta o paradigma de POO(Programao Orientada a Objetos), paradigma procedural e paradigma Funcional, uma coisa que fiquei admirado quando comecei a estudar Kotlin que eu poderia declarar uma varivel recebendo uma estrutura de deciso (if e else), pois, diferente de outras linguagens no Kotlin uma estrutura de deciso uma funo.
  • Null safety: Algo queridinho da comunidade do Kotlin o Null safety se voc veio de linguagens como javascript, provavelmente durante o desenvolvimento de alguns sistemas voc j se deparou com um 'undefined' ou no Java voc, j se deparou com o erro 'NullPointerException' isso ocorre, pois, nessas linguagens voc pode declarar uma varivel inicialmente sem nenhum valor declarado a ela, no Kotlin isso no possvel, voc deve atribuir um valor a uma varivel ao declara-la. Existe formas de contornar isso utilizando o operador '?' depois do tipo da varivel, por exemplo.
var nome: String? = null;

Mas observe que eu atribuo o valor null na varivel. Isso no dever ser feito com frequncia, pois pode trazer problemas futuros na execuo do seu projeto. Mas o importante ressaltar essa funcionalidade do Kotlin que voc tem um cdigo mais seguro. Antes eu programava com Javascript e PHP e essas linguagens no tm esse tipo de suporte, voc nem mesmo precisa declarar o tipo da varivel e isso de inicio me travava um pouco na hora de desenvolver, mas com o tempo voc vai pegando o jeito. Voc pode estudar melhor sobre esse assunto olhando na documentao do Kotlin nesse link.

Vagas

No inicio eu falei que tinha medo de no achar uma vaga para Kotlin no backend, alm de ter vrias para o mobile tambm possuimos vrias vagas para Kotlin no backend. Voc pode dar uma olhada nesse repo do github sobre empresas que utilizam Kotlin no backend aqui no Brasil. Isso sem contar as vagas que temos fora do Brasil, ento temos bastante vagas para voc poder trabalhar.

Como estudar Kotlin?

Bom depois de ler tudo isso sobre Kotlin espero ter despertado em voc um interesse em estudar Kotlin :) Mas, como eu posso fazer isso? Bom eu vou passar aqui dicas que eu recebi quando eu estava iniciando, mas isso no quer dizer que s existe essa forma, essa foi apenas a forma que eu aprendi e pode ajudar voc tambm.

  • A primeira dica que eu passo ler a documentao. A documentao do Kotlin bem detalhada e explica muito bem, voc pode acessar a documentao aqui.

  • A segunda coisa que me ajudou bastante no inicio e ajuda at hoje uma parte especifica da documentao que mostra a sintaxe bsica da linguagem, se voc do tipo de pessoa que gosta de aprender uma linguagem nova j colocando a mo na massa voc pode iniciar lendo a parte de [base syntax](https://kotlinlang.org/docs/basic-syntax.html). Nela voc consegue ver como declarar coisas bsicas da linguagem, como por exemplo variveis, funes, arrays, estruturas de deciso e repetio e etc.

  • Se voc gosta de cursos eu separei uma lista de cursos gratuitos que voc pode fazer, essa lista t disponibilizada aqui no site da Kotlinautas.

  • Se voc gosta de ler indico voc seguir a gente da Kotlinautas aqui no dev.to nesse link voc pode achar vrios artigos legais sobre Kotlin no geral.

  • Uma da parte mais importante para aprender uma linguagem de programao nova praticar escrevendo algoritimos, para isso voc pode utilizar a parte de Kotlin By Examples na documentao do Kotlin.

  • E por ltimo uma coisa que legal voc saber sobre a forma "Kotliniana" de se escrever um cdigo. Isso apenas uma forma que um cdigo escrito em Kotlin deve ser, mas voc no deve ficar preso a isso no incio, pois isso pode atrapalhar na sua evoluo, eu apenas indico voc dar uma olhada e saber que existe.

  • Bom e por ltimo mas no menos importante voc pode seguir no twitter o perfil da Kotlinautas da Jetbrains e o da linguagem Kotlin para saber sobre atualizaes da linguagem.

Bom espero ter ajudado voc nesse incio com Kotlin e ter tirado algumas dvidas sobre essa linguagem que mal conheo mas j considero Pakas. E qualquer dvida que voc tiver pode me chamar l no Twitter kastrowalker que eu vou ter um prazer imenso em ajudar voc.

Um grande abrao e at a prxima.


Original Link: https://dev.to/kotlinautas/meu-inicio-no-mundo-kotlin-45hf

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To