Enable javascript in your browser for better experience. Need to know to enable it? Go here.

Ferramentas

Adote ?

  • O release de aplicativos para iOS envolve uma etapa de assinatura de código. Embora seja suportado pelo conjunto de ferramentas da Apple, o processo pode ser complicado, sujeito a erros e repleto de surpresas inesperadas. Ficamos felizes em informar que fastlane, que já era nossa escolha de ferramenta para automação do processo de release de aplicativos móveis, oferece uma solução melhor: match se integra ao fluido processo oferecido por fastlane, implementando uma nova abordagem de gerenciamento de assinatura de código para times. Em vez de armazenar as chaves de assinatura entre as chaves do macOS da pessoa desenvolvedora — que é a abordagem padrão —, a nova abordagem gira em torno do armazenamento de chaves e certificados em um repositório Git. Além de facilitar o onboarding de novos membros do time e a configuração de novas máquinas de desenvolvimento, em nossa experiência, também é o método mais simples para integrar assinatura em pipelines de entrega contínua.

Experimente ?

  • Nos últimos anos, observamos o surgimento de ferramentas de gerenciamento de fluxo de trabalho genéricas e específicas de domínio. Os fatores motivadores por trás desse aumento incluem o aumento do uso de pipelines de processamento de dados e a automação do processo de desenvolvimento de modelo de aprendizado de máquina (ML). Airflow é uma das primeiras ferramentas de orquestração de tarefas de código aberto que popularizou a definição de gráficos acíclicos direcionados (DAGs) como código, uma melhoria em relação a uma configuração de pipeline em XML/YAML. Embora o Airflow continue sendo uma das ferramentas de orquestração mais amplamente adotadas, recomendamos que você avalie outras ferramentas com base em sua situação específica. Por exemplo, você pode escolher Prefect, que oferece suporte a tarefas de processamento de dados dinâmicas como uma preocupação de primeira classe, com funções Python genéricas como tarefas; Argo caso você prefira uma integração estreita com Kubernetes; Kubeflow ou MLflow para fluxos de trabalho específicos de ML. Devido ao surgimento de novas ferramentas, combinadas com algumas das deficiências do Airflow (como a falta de suporte nativo para fluxos de trabalho dinâmicos e sua abordagem centralizada para agendar pipelines), não recomendamos mais o Airflow como ferramenta de orquestração padrão.

    Acreditamos que com o aumento do uso de streaming em análises e pipelines de dados, bem como o gerenciamento de dados por meio de uma malha de dados descentralizada, a necessidade de ferramentas de orquestração para definir e gerenciar pipelines de processamento de dados complexos é reduzida.

  • Batect continua ganhando força entre nossos times de desenvolvimento e é considerada por muitos uma abordagem padrão para configurar ambientes de desenvolvimento e teste locais. Esta ferramenta de código aberto (que por acaso é desenvolvida por um Thoughtworker) torna mais fácil a tarefa de configurar e compartilhar um ambiente de construção baseado em Docker. Batect se torna então o ponto de entrada para seu sistema de compilação, substituindo o onipresente script go como base para uma abordagem “check out and go”. O Batect continua a evoluir em resposta ao feedback de pessoas desenvolvedoras e recentemente adicionou suporte para o BuildKit do Docker e conclusão de tabulação do shell.

  • Berglas é uma ferramenta para gerenciar segredos na Google Cloud Platform (GCP). Anteriormente, recomendamos a técnica de segredos como serviço para armazenar e compartilhar segredos em arquiteturas distribuídas modernas. GCP oferece o Secret Manager para essa finalidade, e Berglas funciona bem com o Secret Manager. Isso é especialmente útil para os serviços da GCP que ainda não têm integração direta com o Secret Manager; a alternativa em tais casos seria escrever código ou scripts personalizados. O Berglas é fornecido como uma ferramenta de linha de comando e uma biblioteca, e ambos também são úteis em casos de uso além de segredos como serviço. O autor do Berglas, que também o responsável pelo HashiCorp Vault, trabalha no Google atualmente; no entanto, Berglass não é um produto oficial do Google.

  • Contrast Security oferece uma plataforma de segurança com vários componentes, incluindo teste de segurança de aplicativo estático (SAST), teste de segurança de aplicativo interativo (IAST), verificação de código aberto e autoproteção de aplicativo de tempo de execução (RASP). A ferramenta já existe há alguns anos e já a usamos em vários projetos. Uma das coisas de que gostamos bastante na plataforma Contrast é sua análise de tempo de execução de bibliotecas; ajuda a identificar bibliotecas que não estão em uso, o que por sua vez ajuda nossos times a priorizar vulnerabilidades e potencialmente descartar bibliotecas não utilizadas. Isso é particularmente relevante, dada a importância crescente de proteção da cadeia de suprimentos de software. Também gostamos bastante de seu componente IAST — descobrimos que é efetivo em nosso pipeline de entrega contínua (CD), reduzindo falsos positivos e detectando uma boa variedade de vulnerabilidades.

  • Dive é uma ferramenta para analisar imagens Docker que ajuda a explorar cada camada da imagem e identificar o que mudou em cada uma. Dive estima a eficiência da imagem e o espaço desperdiçado em uma imagem e pode ser integrado ao pipeline de integração contínua (CI) para reprovar o build com base na pontuação de eficiência ou quantidade de espaço desperdiçado. Nós a usamos em alguns projetos e Dive provou ser uma ferramenta útil — especialmente se você estiver criando imagens com tolerância muito baixa para ferramentas adicionais ou consumo de espaço.

  • Nossos times seguem relatando bons resultados ao usar Lens para visualizar e gerenciar seus clusters Kubernetes. Rotulado como um "IDE para Kubernetes", Lens possibilita interagir com o cluster sem ter que memorizar comandos ou manifestar estruturas de arquivo. O Kubernetes pode ser complexo, e entendemos que uma ferramenta para visualizar métricas de cluster e cargas de trabalho implantadas pode economizar tempo e reduzir parte do trabalho envolvido na manutenção de um cluster Kubernetes. Em vez de ocultar a complexidade atrás de uma interface de apontar e clicar, Lens reúne as ferramentas que um admin executaria na linha de comando. Mas tenha cuidado ao fazer alterações interativamente em um cluster em execução usando qualquer mecanismo. Geralmente preferimos que as mudanças de infraestrutura sejam implementadas no código para que possam ser repetidas, testadas e menos sujeitas a erros humanos. No entanto, Lens se destaca como uma ferramenta completa para navegar interativamente e compreender o status de seu cluster.

  • Ao longo dos anos, discutimos várias vezes se deveríamos incluir monorepos no Radar. Em todas as oportunidades, concluímos que os dilemas introduzidos pelos monorepos requerem uma discussão com muitas nuances, e que a técnica é "muito complexa para ser capturada em um blip". Agora, estamos observando um interesse crescente em monorepos na comunidade JavaScript, por exemplo, para construir aplicativos compostos de micro frontends, conforme discutido neste episódio de podcast. Se esta é uma boa ideia ou não depende muito da sua situação e certamente não queremos dar uma recomendação geral. O comentário que gostaríamos de fazer é sobre as ferramentas. Em nossos times, vemos um distanciamento do Lerna e uma forte preferência por usar Nx para gerenciar JavaScript com base em monorepos.

  • Wav2Vec 2.0 é um framework de aprendizagem auto-supervisionada para reconhecimento de fala. Com este framework, o modelo é treinado em duas fases. Inicialmente, no modo auto-supervisionado, usando dados não rotulados e tentando obter a melhor representação de fala possível. E em seguida, usando o ajuste fino supervisionado, momento em que os dados rotulados ensinam o modelo a prever palavras ou fonemas específicos. Usamos o Wav2Vec e consideramos sua abordagem bastante poderosa para construir modelos de reconhecimento automático de voz para idiomas regionais com disponibilidade limitada de dados rotulados.

Avalie ?

  • cert-manager é uma ferramenta para gerenciar certificados X.509 em seu cluster Kubernetes. cert-manager modela certificados e emissores como tipos de recursos de primeira classe e fornece certificados como serviço com segurança para pessoas desenvolvedoras e aplicações trabalhando no cluster Kubernetes. Com suporte integrado para Let's Encrypt, HashiCorp Vault e Venafi, cert-manager é uma ferramenta interessante para avaliar para gerenciamento de certificados.

  • Stakeholders esperam cada vez mais que as empresas prestem contas dos impactos ambientais de suas decisões, conforme evidenciado pelo aumento de investimentos ambientais, sociais e de governança corporativa (ESG) e do ativismo de profissionais em relação às mudanças climáticas. A migração para a nuvem oferece potencial para um uso mais efetivo da energia — os provedores de nuvem têm muito mais escala para justificar o investimento em fontes de energia sustentáveis e P&D —, mas a desvantagem das abstrações de software para usuários da nuvem é que essas abstrações também escondem o impacto da energia, pois os data centers são ocultados e financiados por outra empresa. Cloud Carbon Footprint, uma nova ferramenta de código aberto, usa APIs de nuvem para fornecer visualizações de emissões de carbono estimadas com base no uso em AWS, GCP e Azure. A ferramenta usa heurísticas como Etsy Cloud Jewels para estimar o uso de energia e fontes de dados públicos para converter o uso de energia em emissões com base na intensidade de carbono da rede de energia subjacente da região da nuvem (A GCP já publica esses dados). Os painéis da ferramenta atuam como radiadores de informações, permitindo que os indivíduos tomadores de decisão modifiquem as configurações para cortar custos e emissões ao mesmo tempo. A ligação das regiões da nuvem à intensidade de carbono da rede subjacente funciona como um incentivo para mudar as cargas de trabalho sujas para regiões com fontes de energia mais sustentáveis.

  • A ferramenta de programação colaborativa da JetBrains, Code With Me, tem ganhado popularidade à medida que mais times usam uma variedade de ferramentas JetBrains neste contexto remoto-primeiro. Junto com outras ferramentas de colaboração remota, como o Visual Studio Live Share da VSCode, Code With Me oferece aos times de desenvolvimento uma experiência aprimorada com pareamento e colaboração remotos. Vale explorar as habilidades do Code With Me para convidar colegas de equipe para projetos de IDE e colaborar em tempo real. No entanto, vimos algumas limitações em relação à refatoração de forma fluida e alguns problemas em ambientes de alta latência. Continuaremos observando essa ferramenta neste espaço.

  • Incluímos nesta edição do Radar duas ferramentas que buscam e substituem código usando uma representação de árvore de sintaxe abstrata (AST). Ambas ocupam um espaço semelhante a jscodeshift, mas contêm analisadores para uma ampla gama de linguagens de programação. Embora compartilhem algumas semelhanças, também diferem de várias maneiras. Uma dessas ferramentas, Comby, é única em sua interface de linha de comando simples projetada no espírito das ferramentas Unix, como awk e sed. Enquanto os comandos Unix são baseados em expressões regulares que operam em texto correspondente, Comby emprega uma sintaxe padrão específica para construções de linguagem de programação e analisa o código antes de pesquisar. Isso ajuda as pessoas desenvolvedoras a buscar grandes bases de código para padrões estruturais. Assim como sed, Comby pode substituir os padrões combinados com novas estruturas. Isso é útil para automatizar alterações indiscriminadas em grandes bases de código ou para realizar alterações repetitivas em um conjunto de repositórios de microsserviços. Como essas ferramentas são relativamente novas, esperamos ver uma variedade de usos criativos que ainda não foram descobertos.

  • Conftest é uma ferramenta para escrever testes para dados de configuração estruturados que usa a Rego language do Open Policy Agent para escrever testes de configuração para Kubernetes, além de definições de pipeline Tekton ou até mesmo planos Terraform. As configurações são uma parte crítica da infraestrutura, e encorajamos você a avaliar o uso de Conftest para verificar hipóteses e obter feedback rápido.

  • Cosign é uma ferramenta de assinatura e verificação de contêiner. Parte do Sigstore — um projeto sob o guarda-chuva Cloud Native Computing Foundation (CNCF) que visa simplificar a assinatura e a transparência do software —, Cosign suporta não apenas imagens Docker e Open Container Initiative (OCI), mas também outros artefatos que podem ser armazenados em um registro de contêiner. Já falamos sobre o Docker Notary, que também atua neste espaço. O Notary v1, entretanto, tem algumas desvantagens: não é nativo de registro e precisa de um servidor de Notary separado. O Cosign evita esse problema e armazena as assinaturas no registro ao lado de uma imagem. Atualmente, tem integrações com GitHub actions e Kubernetes usando um Webhook com outras integrações no pipeline. Usamos Cosign em alguns de nossos projetos e parece bastante promissor.

  • Crossplane é mais uma entrada na classe de ferramentas implementadas pelo padrão Kubernetes Operator, mas com efeitos colaterais que vão além do cluster Kubernetes. Na última edição do Radar, mencionamos a técnica de serviços de nuvem gerenciados por Kube, e o Crossplane faz exatamente isso. A ideia é aproveitar o plano de controle do Kubernetes para provisionar serviços em nuvem dos quais sua implantação depende, mesmo se eles forem implantados no próprio cluster. Os exemplos incluem instâncias de banco de dados gerenciado, balanceadores de carga ou políticas de controle de acesso. Essa ferramenta é notável por dois motivos. Primeiro, porque demonstra o ambiente de execução poderoso e flexível do plano de controle do Kubernetes subjacente. Não há limite real para a gama de recursos personalizados com suporte. Em segundo lugar, o Crossplane fornece uma alternativa às opções usuais Terraform, CDK ou Pulumi. Crossplane vem ainda com um conjunto de provedores predefinidos para os principais serviços em nuvem que cobrem os serviços mais comumente provisionados. Crossplane não tenta ser uma ferramenta de infraestrutura como código (IaC) de uso geral, mas sim um complemento das cargas de trabalho que estão sendo implantadas no Kubernetes. Frequentemente associado à prática do GitOps, Crossplane é autônomo e permite que você permaneça dentro do ecossistema Kubernetes quando for necessário gerenciar a nuvem externa de recursos. No entanto, Crossplane não ajuda no provisionamento do Kubernetes; você precisará de pelo menos uma outra ferramenta IaC para inicializar o cluster.

  • gopass é um gerenciador de senhas para equipes, construído em GPG e Git. É descendente de pass e adiciona vários recursos, incluindo pesquisa interativa e vários armazenamentos de senha em uma única árvore. Desde que mencionamos o gopass pela primeira vez, nossos times o têm usado em vários projetos, às vezes estendendo-o além de seus limites. Um recurso que fazia falta era a capacidade de descontinuar segredos. A capacidade de descoberta já era um problema, mas a incapacidade de marcar segredos como "não mais em uso" agravou esse problema. O maior problema, porém, era a escala. Quando você tem times com mais de 50 pessoas usando o mesmo repositório por vários anos, descobrimos que o repositório pode crescer para vários gigabytes de tamanho. Criptografar novamente os segredos durante a integração de novos membros pode levar mais de meia hora. A questão subjacente parece ser que em nossos times tudo muda o tempo todo: as pessoas vêm e vão, os segredos são girados, a arquitetura evolui, novos segredos são adicionados, os antigos não são mais necessários. gopass parece funcionar bem, mesmo para um grande número de usuários, quando há menos mudanças.

  • Micoo é uma nova participante no concorrido espaço de ferramentas de regressão visual. É uma solução de código aberto e independente, fornecendo imagens Docker para permitir uma configuração de ambiente fácil e rápida. A ferramenta também fornece clientes diferentes para Node.js, Java e Python, bem como um plug-in Cypress, para uma integração simples com a maioria das estruturas ou soluções de teste de automação de interface do usuário de frontend comuns. Embora Micoo não forneça todas as funcionalidades que algumas das soluções baseadas em SaaS ou outras soluções comerciais fornecem, nossos times têm usado extensivamente e tiveram experiências positivas. Eles destacaram especialmente que a ferramenta funciona para aplicativos móveis e desktop, bem como para a web.

  • Às vezes, você se depara com uma ferramenta que não sabia que precisava até então. mob é uma dessas ferramentas. Em um mundo onde a programação remota em pares se tornou a norma para muitos times, ter uma ferramenta que permite uma troca fluida entre pares ou em um grupo mais amplo como parte de uma sessão de programação em grupo é super útil. mob esconde toda a parafernália de controle de versão atrás de uma interface de linha de comando que torna a participação nas sessões de programação em grupo mais simples. Também fornece instruções específicas para participar remotamente, por exemplo, "roubar o compartilhamento de tela" no Zoom em vez de encerrar o compartilhamento de tela, garantindo que o layout do vídeo não mude para demais participantes. Uma ferramenta útil e recomendações ponderadas, como não gostar?

  • Existem muitas razões para amar o Unix, mas a que afetou profundamente nossa indústria foi a filosofia Unix de construir aplicações que "fazem uma coisa e a fazem bem". Os comandos Unix incorporam essa filosofia. Um conjunto de pequenas funções que podem ser combinadas para criar soluções mais complexas. Nos últimos anos, pessoas programadoras contribuíram para um conjunto crescente de comandos Unix modernos. Essas versões modernas buscam ser menores e mais rápidas, geralmente escritas em Rust. Incluem recursos adicionais, como destaque de sintaxe e utilizam recursos de terminais modernos. Visam oferecer suporte nativo para pessoas desenvolvedoras, integrando-se bem com git e reconhecendo os arquivos de código-fonte. Por exemplo, bat é um substituto para cat com paginação e destaque de sintaxe; exa é uma substituição para ls com informações de arquivo estendidas e ripgrep é uma substituição mais rápida do grep, que por padrão ignora arquivos gitignore, binários e ocultos. O repositório Modern Unix faz referência a alguns desses comandos. Estamos gostando de usar esses comandos Unix. Recomendamos que você experimente-os para melhorar sua experiência de linha de comando. No entanto, evitamos usá-los em scripts como substitutos dos utilitários de linha de comando padrão fornecidos em distribuições de sistema operacional padrão, porque reduzem a portabilidade dos scripts em execução em outras máquinas.

  • Os segredos de texto simples verificados no controle de origem (geralmente Github) são um dos erros de segurança mais comuns cometidos por pessoas desenvolvedoras. Por esta razão, achamos útil apresentar Mozilla Sops, uma ferramenta para criptografar segredos em arquivos de texto que nossos times de desenvolvimento consideram útil em situações nas quais é impossível remover segredos de repositórios de código legados. Mencionamos muitas ferramentas desse tipo anteriormente (Blackbox, git-crypt), mas Sops conta com vários recursos que o diferenciam. Por exemplo, a ferramenta se integra a keystores gerenciadas em nuvem, como AWS e GCP Key Management Service (KMS) ou Azure Key Vault como fontes de chaves de criptografia. Também funciona em várias plataformas e oferece suporte a chaves PGP. Isso permite um controle de acesso refinado a segredos em uma base de arquivo por arquivo. Sops simplifica a chave de identificação em texto para que os segredos ainda possam ser localizados e difundidos pelo git. Sempre apoiamos qualquer coisa que facilite a segurança para as pessoas desenvolvedoras; no entanto, lembre-se de que você não precisa manter segredos no controle de origem em primeiro lugar. Consulte o blip sobre desacoplar gerenciamento de segredos do código-fonte em nossa edição de novembro de 2017.

  • Continuamos vendo a adoção do Kubernetes em cenários novos e inovadores. Por exemplo, observamos o Kubernetes sendo estendido para gerenciar recursos em execução fora de seu cluster, ou em múltiplos provedores de infraestrutura, ou sendo usado no gerenciamento de aplicações com estado além do escopo original do Kubernetes. Essas extensões são possíveis usando o padrão Kubernetes Operator: construir controladores Kubernetes que tenham o conhecimento específico do domínio do recurso personalizado que gerenciam. Por exemplo, um operador que gerencia uma aplicação com estado pode usar as primitivas Kubernetes para automatizar as tarefas específicas de uma aplicação além de sua implantação, como restaurar, fazer backup e atualizar seu banco de dados.

    Operator Framework é um conjunto de ferramentas de código aberto que simplifica a construção e o gerenciamento do ciclo de vida dos operadores Kubernetes. Embora existam vários frameworks para ajudar na construção de operadores Kubernetes, o Operator Framework continua sendo uma boa escolha. O conjunto de ferramentas oferece suporte ao gerenciamento avançado do ciclo de vida do operador usando seu módulo Operator Lifecycle Manager; suporta várias linguagens para construir o código do operador em si usando seu Operator SDK e fornece um catálogo para publicar e compartilhar os operadores. Se você planeja criar operadores Kubernetes, recomendamos que experimente o Operator Framework para acelerar seu desenvolvimento de maneira confiável.

  • Para organizações com ecossistemas de API maiores e mais complexos, especialmente aquelas que já usam Pact, achamos que vale avaliar se Pactflow pode ser útil. Pactflow gerencia o fluxo de trabalho e a implantação contínua de testes escritos em Pact, reduzindo a barreira para testes de contrato orientados ao consumidor. A complexidade da coordenação entre vários produtores e vários consumidores distintos pode se tornar proibitiva. Vimos algumas equipes investirem esforços significativos em soluções manuais para esse problema e achamos que vale a pena avaliar se o Pactflow pode cuidar disso para você.

  • Prefect é uma ferramenta de gerenciamento de fluxo de trabalho de dados que facilita a adição de semântica, como novas tentativas, mapeamento dinâmico, armazenamento em cache e notificações de falha em pipelines de dados. Você pode marcar funções Python como tarefas e encadeá-las por meio de chamadas de função para construir o fluxo de dados. A API Python combinada com uma coleção de tarefas predefinidas para operações de dados comuns torna Prefect uma opção notável para avaliar considerando suas necessidades de pipeline de dados.

  • Pode não ser uma ferramenta que você precisa usar todos os dias, mas quando você está tentando diagnosticar um problema de rede desagradável, a capacidade de recorrera um proxy de depuração HTTP rico em recursos é muito útil. Proxyman é uma dessas ferramentas. Vários de nossos times têm o usado já há algum tempo como um substituto direto para Charles específico para macOS, e realmente gostam de sua interface simplificada e gerenciamento de certificados.

  • Um dos principais princípios da infraestrutura como código (IaC) é o teste automatizado. Se tivermos uma pirâmide de teste sólida com boa cobertura de nível de código na parte inferior, podemos produzir uma infraestrutura melhor e mais segura. Infelizmente, as ferramentas para auxiliar neste espaço têm sido esparsas. Conftest é frequentemente usado para testar código Terraform JSON e HCL, mas é uma ferramenta de uso geral. Regula é uma alternativa atraente. Semelhante ao Conftest, Regula verifica a conformidade do código da infraestrutura aplicando regras escritas na linguagem Rego do Open Policy Agent, mas também fornece um conjunto de primitivas especificamente para validar as configurações da infraestrutura. Como ambas as ferramentas são baseadas na linguagem Rego, as regras do Regula podem ser executadas pelo Conftest. No entanto, Regula vem com sua própria ferramenta de linha de comando para executar testes como parte de um pipeline, sem dependência de Conftest ou OPA. Nossos times de desenvolvimento descobriram que Regula economiza tempo e produz um código de teste muito mais legível, sustentável e sucinto. Ainda assim, ambas as ferramentas validam apenas o código de infraestrutura. Um conjunto completo também deve testar a infraestrutura para garantir que o código está sendo interpretado com precisão.

  • Outra ferramenta de pesquisa de código baseada em árvore de sintaxe abstrata que ganhou nossa atenção é Sourcegraph. Ao contrário de Comby, que tem código aberto, Sourcegraph é uma ferramenta comercial (com um plano gratuito para até 10 usuários). Sourcegraph é particularmente adequado para pesquisa, navegação ou referência cruzada em grandes bases de código. A versão hospedada na nuvem pode ser acessada pelo site do Sourcegraph e é projetada para pesquisar repositórios de código aberto disponíveis publicamente. Enquanto Comby é uma ferramenta de linha de comando leve para automatizar tarefas repetitivas, a ênfase de Sourcegraph está em ferramentas de desenvolvimento interativas para compreender e navegar em grandes bases de código. Ao contrário da interface semelhante ao sed do Comby, o recurso de reescrita de código automatizado do Sourcegraph é conduzido a partir de uma IU, permitindo que os usuários revisem as alterações antes de serem feitas. Como o Sourcegraph é um serviço hospedado, também tem a capacidade de monitorar continuamente as bases de código e enviar alertas quando ocorre uma correspondência.

  • Telepresence é uma ferramenta que ajuda a reduzir o ciclo de feedback de mudanças que geralmente requerem uma implantação para testes adequados. As pessoas desenvolvedoras podem usá-la para conectar um processo em execução em sua máquina local a um cluster Kubernetes remoto. Isso dá ao processo local acesso aos serviços e recursos do cluster remoto, e o serviço local também pode substituir temporariamente um dos serviços do cluster.

    Em situações nas quais a configuração da integração de serviço se tornou complicada, Telepresence pode aumentar a produtividade das pessoas desenvolvedoras e possibilitar testes locais mais efetivos. No entanto, adquirir o hábito de usar uma ferramenta inteligente como essa pode trazer problemas maiores. Por exemplo, se você está usando Telepresence porque configurar todas as dependências necessárias para o desenvolvimento local se tornou uma tarefa impossível, é importante que você examine a complexidade da sua configuração e da arquitetura. Se for a única maneira de fazer testes de integração de serviço, considere testes de contrato ou outras formas automatizadas de teste de integração.

  • O feedback rápido é crucial para uma boa experiência de desenvolvimento. Nada interrompe mais o fluxo de desenvolvimento do que ter que esperar um ou dois minutos antes de obter feedback sobre as últimas alterações de código. Infelizmente, com as aplicações crescendo em tamanho e complexidade, as ferramentas de build populares para pipelines de front-end muitas vezes não são mais rápidas o suficiente. Anteriormente, incluímos esbuild, que oferece uma melhoria de desempenho significativa, porque é implementado em uma linguagem compilação-para-nativa em vez de JavaScript. Vite, que é construído em cima do esbuild, oferece melhorias significativas em relação a outras ferramentas. Consiste em duas partes principais: um servidor de desenvolvimento que fornece aprimoramentos de recursos ricos em módulos ES nativos, como Hot Module Replacement (HMR) extremamente rápido e um comando de construção que agrupa seu código com Rollup. Vite depende de módulos ES e, ao contrário da maioria das ferramentas mais antigas, não oferece shimming ou polyfills, o que significa que não é compatível com navegadores mais antigos que não suportam módulos ES. Nos casos em que navegadores mais antigos precisavam ser suportados, alguns de nossos times usaram Vite durante o desenvolvimento e outras ferramentas para builds de produção.

Evite ?

 
novo
Modificado
Sem alteração

Não encontrou algo que você esperava achar?

 

Cada edição do Radar inclui blips que refletem nossas experiências nos seis meses anteriores. Talvez já tenhamos falado sobre o que você procura em um Radar anterior. Às vezes, deixamos coisas de fora simplesmente porque há muitas a serem abordadas. Também pode faltar um tópico específico porque o Radar reflete nossa experiência, não se baseando em uma análise abrangente do mercado.

Não encontrou algo que você esperava achar?

 

Cada edição do Radar inclui blips que refletem nossas experiências nos seis meses anteriores. Talvez já tenhamos falado sobre o que você procura em um Radar anterior. Às vezes, deixamos coisas de fora simplesmente porque há muitas a serem abordadas. Também pode faltar um tópico específico porque o Radar reflete nossa experiência, não se baseando em uma análise abrangente do mercado.

Radar

Baixar o Technology Radar Volume 25

English | Español | Português | 中文

Radar

Mantenha-se por dentro das tendências de tecnologia

 

Seja assinante

Visite nosso arquivo para acessar os volumes anteriores