Kotlin vs Java
Na opnião de vocês existe essa 'disputa' de mercado ? Acham que no futuro o kotlin pode simplesmente "matar" o Java ?
Na questão desenvolvimento mobile nativo android, acho que o kotlin ja se consolidou e eu diria que está correndo com alguns bons km de vantagem na frennte do Java, Mas e nas outras áreas ? O que falta pro kotlin finalmente virar a mesa com aquele que é considerado simbolicamente seu pai ? Já está cada vez mais comum de se ver vagas backend pedindo conhecimentos em kotlin e empresas utilizando dessa interoperabilidade do mesmo com java para questões migratórias, dito isso é utopia pensar que Kotlin é o futuro em alguns desses casos ? Como vocês imaginam o futuro dessa linguagem e desse abraço que ela da no Java ? Abraço esse que pode ser fatal ?
Kotlin não vai matar o Java. Talvez devesse :), mas não acontecerá. Assim como TS não matará JS, mesmo que devesse para o que costumam fazer (JS ainda deveria ser usado para algumas coisas).
Não sou especialista na área, mas minha percepção é que Kotlin quase não é usada fora do Android. Mas tende a aumentar conforme as pessoas vão adotando mais no Android. As pessoas tendem a padronizar ferramentas. Acho que é oque você está vendo. E acho que vê mais que eu porque procura mais especificamente por Kotlin. Então pode ser um viés seu ver tanto assim. Mas pode ser meu não ver.
Eu passo ter mais dúvidas sobre o crescimento de Kotlin porque java não está parada. Ela tem melhorando muito ultimamente, os mantenedores parecem mais pragmáticos que os anteriores. E também porque parece que as pessoas de Java não ligam muito para algo melhor. Isso tem um pouco de sarcasmo, só para deixar com bom humor, porque se escolheram Java... Mas também tem a observação que boa parte das pessoas não usa as versões mais novas, então estão bem com o que tem. Se nem avançam nas versões, as pessoas não vão mudar para Kotlin, que tem um custo absurdamente maior para fazer a transição.
Kotlin ainda tem muito espaço para crescer e vai acontecer, mas não sei quanto, ninguém sabe. E se aparecer outra coisa melhor ainda?
Java está melhorando muito, até porque tem muita coisa que precisa ser melhorada :P (ah, se diverte um pouco, não precisa ser sisudo com tudo, já não pode brincar com um monte de coisa que tem sentimentos, Java não tem). Mas falando sério, de fato é um alento ver que tem bons profissionais trabalhando para ela ser tanto quanto possível o que Kotlin já é. Tem linguagem que não tem a mesma sorte.
Faz sentido para você?
Espero ter ajudado.
Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).
No último ano, trabalhei com Kotlin e Spring em um projeto que criamos do zero. Recentemente, estou em um projeto que usa Java. Na minha opinião, depois de alguns bons meses nesse projeto, Kotlin é 10 vezes melhor em termos de aparência, legibilidade, manutenção e, sem dúvidas, supera Java em termos de escrita e verbosidade. É verdade que Kotlin complementa o Java, mas quem usa Java e ainda não trocou para Kotlin, ou não experimentou ainda, ou é arrogante demais para admitir que é melhor. E quando digo "É MELHOR" digo sem medo de errar, com toda certeza que daqui a alguns anos você verá muito mais projetos em Kotlin do que em Java, sendo que Java será usado apenas para manutenção em código legado.
Kotlin, não disputa com Java, Kotlin complementa o Java. Inclusive você pode até mesclar as duas. Kotlin tem o mesmo objetivo de Groovy que é tornar o Java menos verbose (tagarela), ou seja, escrever menos código.
Cara eu nao sei se a minha opniao é valida até pq eu nao seu nem um estagiario ainda mas aqui vai um que fara eu tirar a minha conclusao final (Pode nao ser a certa e provavelmente nao é pois nao existe linguagem melhor)
Codigo em java:
public class Fibonacci {
public static int fibonacci(int n) {
if (n <= 1) {
return n;
}
int prev1 = 0;
int prev2 = 1;
int result = 0;
for (int i = 2; i <= n; i++) {
result = prev1 + prev2;
prev1 = prev2;
prev2 = result;
}
return result;
}
public static void main(String[] args) {
int n = 10;
int fib = fibonacci(n);
System.out.println("Fibonacci(" + n + ") = " + fib);
}
}
Codigo kotlin:
object Fibonacci {
fun fibonacci(n: Int): Int {
if (n <= 1) {
return n
}
var prev1 = 0
var prev2 = 1
var result = 0
for (i in 2..n) {
result = prev1 + prev2
prev1 = prev2
prev2 = result
}
return result
}
}
fun main() {
val n = 10
val fib = Fibonacci.fibonacci(n)
println("Fibonacci($n) = $fib")
}
bom vamos la se eu nao fosse estudar js e tivesse que escolher uma das duas talvez eu escolheria kotlin por me "assustar" menos e por eu achar mais facil de ser lido e entendido
Eu desenvolvo em java e nao mudei para kotlin pq nao vejo necessidade. Enquanto java tiver me atendendo. Agora se cair no meu colo projeto em Android claro q farei em kotlin, a google recomenda e faz campanha para tal.