Pular para o conteúdo principal

Postagens

Recursos da Linguagem Kotlin - Infix

 Olá pessoal, hoje continuando falando sobre os recursos da linguagem Kotlin, vamos falar sobre o uso de funções  infix . O que é o Infix Ao utilizar algumas bibliotecas famosas do mundo Kotlin nos deparamos com códigos sendo utilizados da seguinte forma: Uso do Assertion da biblioteca Kotest. No exemplo acima, temos uma expressão diferente, que é a expect shouldBe "Kotlin" , aqui temos o uso de uma função infix,  que basicamente irá testar se a variável expect possui o valor "Kotlin",  Ao olhar para esta expressão sem conhecer o infix , não percebemos que na verdade o shouldBe é uma função da variável expect, e recebe como argumento a String Kotlin, abaixo temos o mesmo efeito do código mostrado anteriormente: Uso do Assertion da biblioteca Kotest sem o uso de Infix. Como já podemos notar, o uso do  infix é uma forma de deixar a chamada de uma função mais expressiva, ou seja, a chamada da função é fluente sem um contrato explicito de código funcional. Esta abord

Recursos da Linguagem Kotlin - Extensions

Olá pessoal, hoje vamos começar a abordar alguns recursos interessantes da Linguagem Kotlin, a linguagem possui vários recursos que facilitam muito a vida do desenvolvedor, e hoje vamos falar sobre as Extensions . Conhecendo o Kotlin Kotlin é uma linguagem desenvolvida pela JetBrains, esta é uma empresa amplamente conhecida pelas ferramentas que ajudam os desenvolvedores no dia a dia, tais como: IntelliJ , PyCharm , GoLand , WebStorm .  O Kotlin é uma linguagem originalmente voltada para a JVM, a linguagem possui uma interoperabilidade com Java que realmente chama a atenção, podendo você ter uma classe em Kotlin chamando métodos de uma classe Java ou vice versa, fazendo que a curva para adoção da linguagem principalmente para pessoas que já conheçam Java seja pequena e trivial. Com sua evolução, o Kotlin também abrange outros ecossistemas, vamos analisar cada um deles: Mobile Multiplataforma A popularidade do Kotlin se tornou massiva quando a Google o adotou como linguagem principal pa

Docker - Utilizando o Play with Docker

O Play with Docker é uma ferramenta cloud que permite a criação de containers fornecendo toda a  infraestrutura, nela podemos criar instâncias de máquinas e diferentes ambientes utilizando Docker e Swarm. Conhecendo o Play with Docker A Docker criou uma ferramenta chamada  Play with Docker,   dentro dela encontramos Tutorias, ambiente interativo, e vários treinamentos e livros para estudos. O Lab Environment   é o ambiente interativo que permite criar e executar containers similar ao que faríamos no Docker Desktop, nele podemos realizar: Estudos com Docker (Comandos, Containers, etc); Testes em containers variados; Provas de conceito antes de executar em um ambiente real de produção. Para podermos utilizar esta ferramenta, antes temos que criar uma Docker ID , este cadastro nos permite utilizar varias ferramentas da Docker, tais como :  Play with Docker, Docker Hub, entre outras. Características do Play with Docker Após efetuar o login no  Lab Environment , t

Docker - Manipulando Imagens

Olá pessoal hoje iremos começar uma série de tutoriais falando dos principais comandos que utilizamos em ambientes com Docker , e para começar vamos falar sobre imagens. Começando com Docker Aqui não vamos entrar em detalhes de instalação do Docker , mas vou deixar abaixo links para tutoriais que explicam estes detalhes. O que é Docker e como Funciona Docker em Windows Docker em Linux O Que são Imagens As imagens são Templates para criação dos containers , nelas adicionamos informações sobre o SO, comandos de inicialização, entre outras configurações, para ficar mais claro oque são as imagens, podemos fazer uma analogia entre  imagens x containers  com classes x objetos  em linguagens de programação orientadas a objetos como Java, Kotlin, etc. Principais Comandos Utilizando o help O comando mais útil que teremos ao manipular Docker é o help, ele pode ser utilizando em vários níveis, sendo direto no  image  ou em um subcomando de  image , ele irá fornecer

Frameworks e Microframeworks para Java e Kotlin

Olá pessoal, hoje iremos ver alguns frameworks e microframeworks que ajudam no desenvolvimento ágil com Java e Kotlin. A Evolução do Desenvolvimento para JVM O desenvolvimento de software evoluiu muito nos últimos anos, e com isso a exigência por agilidade no desenvolvimento e na entrega aumentaram. A Oracle esta desenvolvendo um trabalho interessante com a plataforma Java, tendo a cada 6 meses um novo release do Java SE (atualmente na versão 13), onde atualizações e novas features estão  sendo adicionadas a plataforma. O Java EE que agora é mantido pela Eclipse com o nome de Jakarta EE , também terá uma evolução muito mais ágil, voltados para arquiteturas modernas e com a evolução de várias especificações que são muito famosas no mundo Java Enterprise. Temos também o Kotlin , que vem ganhando um espaço muito interessante no mercado, sendo uma linguagem com muitos recursos interessantes e fácil aprendizado, e além de possuir uma total interoperabilidade com Java,

Atualizando a lista de Timezone da JVM

Olá pessoal vamos falar sobre como atualizar a lista de Timezone da JVM. O Problema da Mudança de Timezone Devido uma mudança realizada pelo governo brasileiro, este ano não teremos o horário de verão, que mudava o GMT para -2 em algumas regiões do Pais, com isso, as configurações de Timezone dos servidores são ajustados para não realizar a mudança, mas alguns ambientes onde temos JVM podem acabar mudando e não seguindo o Timezone do S.O, pois a regra antiga ainda encontra-se configurada. Ambiente Java 10 mudou com Timezone incorreto. Acima instanciamos um objeto Date() a partir do JShell e notamos a diferença no horário, onde o correto seria exibir 11:05:31. Lista de Timezone Atualizados Como aconteceu aqui no Brasil, podem acontecer mudanças de Timezone em qualquer lugar (mesmo não sendo comum), quando ocorrem essas mudanças temos que recorrer a listas de Timezone atualizadas para que os ambientes possam funcionar corretamente. No caso da JVM, a Oracle man

Skipping Tests, Profiles e Debug com Maven

Olá pessoal, hoje iremos ver alguns comandos utilitários no processo de build do Maven. O Processo de Build O Maven é uma ferramenta que trás muitos benefícios ao ambiente de desenvolvimento, com ele gerenciamos dependências, versionamento e configurações dos projetos. Uma parte muito importante que devemos nos atentar é com o processo de build, este processo é composto pela execução de todo o ciclo de vida do Maven, execução dos plugins presentes no  pom.xml  e a criação do artefato final. É comum nos depararmos com builds que demoram vários minutos para completar, caso seja o seu caso, existem algumas métricas que dizem que "um processo de build não deve demorar mais que 5 minutos". Maven Skip Tests A execução dos testes é algo fundamental em projetos de softwares, mas as vezes nos deparamos com cenários onde precisamos executar o processo de build e não executar o pipeline de testes, com Maven temos 3 maneiras de executar tal tarefa, sendo: Plugin