No recente Relatório de Produtividade do Desenvolvedor Java de 2022 da Perforce, os dados revelam que as equipes de desenvolvimento ainda não aproveitaram todo o potencial dos microsserviços e das práticas de Integração Contínua/Implantação Contínua (CI/CD). As descobertas indicam que os desenvolvedores geralmente descobrem que essas tecnologias diminuem a produtividade em vez de melhorá-la.
42% dos usuários de CI/CD relataram tempos de conclusão de construção superiores a cinco minutos, com a resposta mais frequente (33%) sendo tempos de construção superiores a 10 minutos. Um número substancial de 35% dos entrevistados comete códigos mais de cinco vezes ao dia. Esse tempo de inatividade se acumula rapidamente, afetando a produtividade por longos períodos.
A tabela de classificação da tecnologia CI/CD vê Jenkins (46%) como o favorito claro, seguido por GitHub Actions (16%), Bamboo (7%), TeamCity (4%), CircleCI (3%) e Travis CI ( 1%).
Além disso, 61% dos desenvolvedores pesquisados observaram um aumento no tempo de inicialização de seus aplicativos baseados em microsserviços no ano passado. Entre esses desenvolvedores, 13% experimentaram um aumento de mais de 50%, 30% registraram um aumento de 10 a 50% e 17% relataram um aumento de 0 a 10%. No geral, 60% dos entrevistados notaram um aumento no tempo de inicialização em comparação com 35% de documentação sem alteração.
Em resposta às descobertas, Rod Cope, CTO da Perforce Software, comentou que as equipes que adotam CI/CD e microsserviços ainda enfrentam obstáculos relacionados ao tempo perdido em longos tempos de confirmação e reimplantação. Cope enfatizou que as empresas devem priorizar equipar suas equipes Java com as ferramentas apropriadas para evitar dificuldades de recrutamento e reduzir o moral do desenvolvedor. Caso contrário, os desenvolvedores podem optar por organizações que atendam às suas preferências de conjunto de ferramentas.
Com relação aos usuários de aplicativos de microsserviços, o relatório da Perforce aponta para tempos de reimplantação igualmente altos. Um número alarmante de 44% desses usuários relatou tempos de redistribuição de pelo menos cinco minutos. Curtis Johnson, gerente de produto da JRebel by Perforce, destacou a importância de implementar ferramentas adequadas para neutralizar esse problema e maximizar os benefícios da arquitetura de microsserviços para aplicativos Java.
Os participantes foram questionados sobre como alocariam 10% adicionais de tempo disponível durante os dias de trabalho. Apenas 4% mencionaram atividades recreativas, enquanto a maioria priorizou respostas funcionais, como adicionar novos recursos (28%), melhorar o desempenho do aplicativo (20%) ou aprimorar a cobertura do teste (19%). Outras áreas de foco incluíram a melhoria dos processos de desenvolvimento (17%), o início de novos projetos (6%) e o avanço das datas de lançamento (6%).
O estudo mostra ainda que 44% dos entrevistados atualmente têm aplicativos totalmente baseados em microsserviços, 44% estão fazendo a transição para microsserviços, 10% estão discutindo a possibilidade e apenas 2% tentaram, mas falharam. No domínio das estruturas de aplicativos de microsserviços, o Spring Boot tem uma taxa de adoção dominante de 74%.
Quando se trata do número de microsserviços nos aplicativos principais dos desenvolvedores, 30% relataram ter de 1 a 5, 24% de 5 a 10, 16% de 10 a 20 e 22% de 20 ou mais. O estudo também destacou tendências em outras áreas, incluindo o uso predominante do Java 8 (37%), seguido pelo Java 11 (29%), com apenas 12% usando o Java 12 ou mais recente.
Em relação às atualizações de versão do JDK, 62% daqueles com planos existentes pretendem adotar o JDK 17 nos próximos 12 meses. Os principais fatores que determinam as decisões de atualização são Long-Term Support (LTS) (25%), segurança (23%), desempenho (20%), novos recursos (18%) e conformidade (14%).
Entre as distribuições JRE/JDK, Oracle Java (36%) é a primeira escolha, seguida por Generic OpenJDK (27%) e AdoptOpenJDK/Adoptium (16%). Para ferramentas de construção, Maven (68%) ocupa o primeiro lugar, com Gradle (23%) e Ant (6%) ficando para trás. Em termos de ambientes de desenvolvimento integrado (IDEs), IntelliJ (48%) é a escolha preferida, seguido por Eclipse (24%) e Visual Studio Code (18%).
CI/CD e microsserviços continuam sendo tendências críticas no domínio de desenvolvimento de software, e empresas como AppMaster.io estão se destacando como poderosas plataformas no-code e low-code para criar facilmente aplicativos móveis e da Web. AppMaster oferece recursos inovadores, como desenvolvimento rápido de aplicativos, gerenciamento de API e uma abordagem escalável e econômica para o desenvolvimento de software que capacita os desenvolvedores, eliminando dívidas técnicas e reduzindo o desperdício de tempo.