O Mundo da Programação Caminha Para um Futuro Mais Idiomático?
- #Kotlin
Programar é um ato de lógica, mas que não se realiza completamente e de forma efetiva sem paixão e prazer pelo código a ser escrito, bem como pela linguagem de programação a ser utilizada. Nesta esteira, linguagens como kotlin e python têm ganhado cada vez mais adeptos e entusiastas.
Determinadas linguagens foram criadas com o princípio declarado de trazer a felicidade do desenvolvedor e do desenvolvimento. Como podemos ver na headline do site oficial da linguagem kotlin, https://kotlinlang.org/, essa não é uma preocupação menor para sua desenvolvedora, a JetBrains.
Mas quais são as ferramentas utilizadas por essas linguagens que atraem um público cada vez maior de desenvolvedores?
Um dos principais pontos são suas soluções primordialmente idiomáticas, que tornam o código simples, enxuto e de fácil escrita e leitura. Podemos comparar, por exemplo, um mesmo trecho de código em java e em kotlin sobre nullable types retirado da página oficial de desafios kotlin.
java:
public void sendMessageToClient(
@Nullable Client client,
@Nullable String message,
@NotNull Mailer mailer
) {
if (client == null || message == null) return;
PersonalInfo personalInfo = client.getPersonalInfo();
if (personalInfo == null) return;
String email = personalInfo.getEmail();
if (email == null) return;
mailer.sendMessage(email, message);
}
kotlin:
fun sendMessageToClient(
client: Client?, message: String?, mailer: Mailer
) {
val email = client?.personalInfo?.email
if (email != null && message != null) {
mailer.sendMessage(email, message)
}
}
Deixar o código mais conciso e trazê-lo para próximo da linguagem social, caso isso não implique em perda de desempenho e funcionalidade, atrai cada vez mais desenvolvedores.
Com o aumento de suas respectivas comunidades, essas linguagens - que são em sua maioria open source (outro fator importante para sua relevância crescente) - ganham também uma gama maior de fóruns e comunidades que prestam suporte a novos usuários. Forma-se assim um ciclo interessante para o crescimento de qualquer linguagem: mais praticantes atraem um número cada vez maior de adeptos.
Evidentemente, cada linguagem de programação serve a um propósito, assim sua estética, por si só, não é capaz de determinar seu sucesso enquanto solução tecnológica para determinada demanda. Mas é fundamental observar que, em um mundo que mistura de forma progressiva vida pessoal e trabalho, uma linguagem que se proponha a trazer alegria é também uma linguagem muito mais conectada com o futuro e seus desafios.