Desenvolvimento de aplicativos modernos
Responda às alterações com mais rapidez, otimize os custos e envie com segurança.
O que é o desenvolvimento de aplicativos modernos?
O desenvolvimento de aplicativos modernos é uma abordagem que habilita uma inovação rápida usando arquiteturas nativas de nuvem com microsserviços acoplados de modo flexível, bancos de dados gerenciados, IA, suporte para DevOps e monitoramento interno. Atenda às necessidades em constante mudança dos clientes com aplicativos que fornecem experiências altamente personalizadas e mudam dinamicamente para reagir aos eventos em tempo real.
Aumente a confiabilidade e a segurança
Proporcione qualidade e desempenho consistentes em qualquer escala usando bancos de dados totalmente gerenciados com alta disponibilidade interna, backup pontual e latência de milissegundos de dígito único. Crie com mais segurança, integrando controles nos processos de DevOps. Aumente a segurança dos dados com a detecção avançada de ameaças e a proteção de dados.
Reduza os custos
Pague apenas por aquilo de que precisa e alivie o fardo de manutenção usando ferramentas sob demanda, computação sem servidor e bancos de dados. Reduza os custos de desenvolvimento com soluções com pouco código. Obtenha recomendações de gerenciamento de recursos e otimização de custos proativas e acionáveis, incluindo quando usar instâncias de camada gratuita e de spot.
Habilite o desenvolvimento remoto
Comece a trabalhar em qualquer projeto em minutos com ambientes de desenvolvimento hospedados na nuvem, seguros e totalmente configurados. Colabore em tempo real nas revisões de código e na programação em par com identidade e acesso bem controlados. Automatize os fluxos de trabalho de código para nuvem e monitore a integridade e o desempenho do aplicativo antes que ocorram problemas.
Blocos de construção do desenvolvimento de aplicativos modernos
Arquitetura nativa de nuvem
A arquitetura nativa de nuvem permite que você atue em novas ideias com mais frequência, responda às necessidades em constante mudança com mais rapidez e execute aplicativos resilientes e escalonáveis com mais facilidade. Ao empacotar o código do aplicativo e as dependências em contêineres e implantá-los como microsserviços, você aumenta a portabilidade da arquitetura para implantar aplicativos em ambientes com pouca ou nenhuma modificação. As alterações podem ser feitas em componentes individuais com menor risco para todo o aplicativo.
O Kubernetes ajuda você a gerenciar os contêineres em escala. Aumente a velocidade de lançamento e a escalabilidade operacional usando os processos e as ferramentas de DevOps para automatizar o build, o teste e a entrega dos microsserviços.
Lógica do aplicativo e interface do usuário habilitada para IA
Insira a IA na interface do usuário e nas camadas do aplicativo de lógica de negócios para aprimorar as experiências do usuário e aprofundar os insights de negócios. Mobilize públicos em todo o mundo adicionando tradução, chatbots e voz a interfaces do usuário habilitadas para IA. Aprimore a lógica de negócios com a IA para cenários como pesquisa, personalização, processamento de documentos, análise de imagem, detecção de anomalias e análise de fala.
O desenvolvimento de aplicativos modernos permite que os desenvolvedores de todos os níveis de habilidade adicionem facilmente funcionalidades de IA aos aplicativos com modelos de IA predefinidos e personalizáveis para fala, visão, linguagem e tomada de decisões.
Integração usando conectores prontos para uso e gerenciamento de API
As integrações modernas que usam APIs e conectores prontos para uso ajudam você a ser mais produtivo, a acessar dados facilmente e a manter os sistemas distintos atualizados em tempo real. Os conectores são integrações prontas que facilitam a conexão de aplicativos com o software como serviço, os sistemas e os dados em qualquer lugar: localmente ou na nuvem.
As APIs leves permitem a integração a protocolos como REST e OAuth. Elas simplificam a recuperação de dados e o compartilhamento entre serviços sem precisar usar um barramento de mensagem mais pesado. Descubra as APIs que já existem em uma empresa e exponha-as com segurança por meio de um gateway com funcionalidades híbridas para acessar APIs na borda, localmente ou em outras nuvens.
Bancos de dados totalmente gerenciados
Proporcione experiências digitais responsivas e personalizadas sem precisar lidar com gerenciamento de segurança e com infraestrutura de banco de dados complexa. Os bancos de dados totalmente gerenciados baseados em nuvem fornecem dimensionamento ilimitado, acesso de baixa latência a recursos elaborados e à proteção de dados avançada – tudo interno, independentemente de linguagens ou estruturas. Escolha os modelos de dados, as APIs, as estruturas de armazenamento e as opções de implantação que melhor se adaptam aos padrões do aplicativo.
Os bancos de dados elásticos e sempre ativados dão suporte à continuidade dos negócios e aprimoram a capacidade de resposta para o ambiente em constante mudança. Eles ajudam as operações a cumprir uma meta consistente de disponibilidade e latência sem realizar as tarefas pesadas de gerenciamento de banco de dados, reduzindo o custo total de propriedade.
Entrega de software usando as práticas do DevOps
Mudanças rápidas no mercado exigem ciclos de versão menores sem sacrificar a qualidade, a estabilidade e a segurança. As ferramentas e os processos para CI/CD (integração e entrega contínuas) facilitam o planejamento, o gerenciamento de riscos, a adaptação à evolução das necessidades dos clientes com mais rapidez e o aprimoramento da estabilidade do sistema. Lance de maneira rápida, consistente e confiável usando ferramentas altamente produtivas, automatizando etapas comuns e manuais e repetindo em pequenos incrementos por meio de integração e testes contínuos.
Aplique políticas e controles proativamente e defina portões automatizados como parte do pipeline para mover aplicativos entre fases diretamente até que sejam disponibilizados para os clientes.
Maximização da automação nas operações
Com um ambiente cada vez mais complexo para ser gerenciado, a maximização do uso da automação ajuda você a aprimorar a eficiência operacional, a identificar problemas antes que eles afetem a experiência do cliente e a atenuar rapidamente os problemas quando eles ocorrerem. As plataformas totalmente gerenciadas fornecem registro em log automatizado, dimensionamento e alta disponibilidade. Telemetria avançada, alertas acionáveis e visibilidade total sobre os aplicativos e o sistema subjacente são essenciais para uma abordagem de desenvolvimento de aplicativos modernos.
A automação de verificações regulares e a aplicação de práticas recomendadas como infraestrutura como código e engenharia de confiabilidade de site promovem a resiliência e ajudam você a reagir a incidentes com tempo de inatividade e perda de dados mínimos.
Segurança em várias camadas
Os aplicativos modernos exigem segurança em várias camadas no código, nos pipelines de entrega, nos tempos de execução de aplicativo e nos bancos de dados. Comece fornecendo aos desenvolvedores caixas de desenvolvimento seguras com identidade bem controlada. Como parte do ciclo de vida do DevOps, use ferramentas automatizadas para examinar dependências em repositórios de código e procurar vulnerabilidades durante a implantação de aplicativos no ambiente de destino. Os segredos de nível empresarial e o gerenciamento de políticas criptografam os aplicativos e fornecem à equipe de operações uma imposição de política centralizada.
Com os serviços de computação e banco de dados totalmente gerenciados, o controle de segurança é integrado e a proteção contra ameaças é executada em tempo real.
Desenvolvimento de aplicativos modernos comuns | Microsoft Azure
Saiba mais usando arquiteturas da solução de exemplo.
IoT data streaming
Ingira e processe um fluxo de dados em tempo real com milhões de ponto de dados coletados por meio de sensores. Realize análises e cálculos rápidos para desenvolver insights rapidamente em cenários complexos.
Line-of-business app modernization
Aprimore a produtividade dos funcionários e acelere a tomada de decisão com um aplicativo de linha de negócios que consolida dados de vários sistemas de negócios e exibe-os por meio de front-ends móveis e da Web.
Personalized recommendations
Treine um modelo de recomendação usando o Azure Databricks e implante-o como uma API usando o Azure Cosmos DB, o Azure Machine Learning e o AKS (Serviço de Kubernetes do Azure).
Mobile workforce app
Crie um aplicativo robusto e responsivo que permita que os engenheiros de campo vejam e editem os trabalhos atribuídos a eles offline. Um back-end de API altamente disponível dá suporte aos clientes móveis e Web.
Handling spikes in demand
Ofereça aos clientes um serviço rápido e confiável durante períodos de demanda de tráfego intenso, sazonais e de outros tipos. O dimensionamento imediato e elástico lida com intermitências de tráfego e de vendas sem a necessidade de gerenciar a infraestrutura.
Chatbots
Crie interfaces de conversa e processe contextualmente as solicitações de clientes usando texto e voz. Adicione o serviço de reconhecimento de fala para dar suporte a comandos de voz.
Secure DevOps
Alcance um equilíbrio entre velocidade e segurança e forneça código mais rapidamente em escala, implementando DevOps seguros com o Kubernetes no Azure. Acelere o loop de comentários com monitoramento constante.
Serverless event processing
Crie uma arquitetura controlada por evento que ingere um fluxo de dados, processa-os e grava os resultados em um banco de dados back-end altamente disponível e com baixa latência.
DevOps for machine learning (MLOps)
Acelere a implantação e simplifique o gerenciamento de soluções de machine learning com o MLOps. Implemente uma CI/CD e um pipeline de readaptação para um aplicativo de IA usando o Azure DevOps e o Azure Machine Learning.
Highly scalable web app
Use práticas comprovadas para aprimorar a escalabilidade e o desempenho em um aplicativo Web do Serviço de Aplicativo do Azure. Habilite o provisionamento elástico da capacidade de computação e o conteúdo do cache publicamente disponível para reduzir a latência.
Document processing
Acelere os processos de negócios automatizando a extração de informações. Extraia com precisão texto, pares chave-valor e tabelas de documentos para reduzir a necessidade de revisão manual e evitar erros caros.
Knowledge-mining apps
Descubra insights latentes de todo o conteúdo com a pesquisa de nuvem habilitada para IA para desenvolvimento de aplicativos Web e móveis. Extraia e aprimore texto pesquisável e indexável de fontes de dados não estruturadas.
Recursos adicionais
White papers e relatórios de analistas
Roteiros de aprendizagem
Roteiros de aprendizagem
Roteiro de aprendizagem de aplicativos modernos
Roteiros de aprendizagem do Kubernetes
Roteiros de aprendizagem de IA
Roteiros de aprendizagem de integração
Roteiro de aprendizagem de Aplicativos Lógicos do Azure
Roteiros de aprendizagem de banco de dados
Roteiros de aprendizagem do DevOps
Roteiros de aprendizagem
Capacite as pessoas com práticas de engenharia modernas
O DevOps é a base de engenharia para o desenvolvimento de aplicativos modernos. Ao adotar uma cultura de DevOps em conjunto com as práticas e ferramentas, você capacita as equipes a responder melhor às necessidades dos clientes, a ganhar confiança nos aplicativos que criam e a cumprir as metas empresariais mais rapidamente. Veja algumas das práticas importantes para um DevOps eficaz.
Desenvolva o escopo da equipe
- Migre para um modelo SRE (engenharia de confiabilidade de sites). Os desenvolvedores se tornam responsáveis pelo desempenho e pela estabilidade que as alterações trazem para as operações.
- Permita uma melhor colaboração usando software livre e práticas de origem interna.
- Acomode diferentes estilos de trabalho para manter uma alta produtividade, mesmo quando estiver trabalhando remotamente.
Crie uma cultura de obsessão pelo cliente
- Colete dados de telemetria para avaliar o valor os seus produtos trazem para os clientes.
- Ouça os clientes em fóruns sociais e garanta que os engenheiros ouçam os comentários antecipadamente e com frequência.
- Conquiste a confiança do cliente expondo incidentes no site ativo e criando maneiras de mantê-los informados.
Adote uma mentalidade de crescimento
- Adote uma abordagem de aprendizado contínuo que permite que as equipes falhem rapidamente e incorporem as lições aprendidas em processos melhores que aceleram a inovação.
- Incentive os desenvolvedores a testar e experimentar novas ideias. Conduza reuniões de revisão pós-lançamento para aprimorar a medição de sucesso.
- Capacite os desenvolvedores a usar as ferramentas que são mais eficientes e produtivas para os estilos de trabalho individuais e que lhes habilitam codificar em qualquer lugar.
Perguntas frequentes
-
Os aplicativos modernos são arquiteturas nativas de nuvem que aproveitam o código empacotado e as dependências em contêineres e os implantam como microsserviços para aumentar a velocidade do desenvolvedor usando práticas do DevOps. Os aplicativos modernos aproveitam a automação ao incorporar a integração, a entrega e a implantação contínuas, juntamente com a segurança automatizada para garantir que as equipes de desenvolvimento possam produzir mais rápido e fornecer segurança.
-
Comece com um modelo de domínio. Um modelo de domínio é um modelo abstrato do domínio de negócios que organiza os dados de conhecimento do domínio e fornece uma linguagem comum para desenvolvedores e especialistas de domínio. Derive os microsserviços do modelo de domínio em um processo de quatro etapas. Use o link abaixo para saber como criar um modelo de domínio nos microserviços corretos para você.
-
As arquiteturas modernas permitem maior segurança, incluindo a segurança por meio do processo de ALM (gerenciamento do ciclo de vida do aplicativo). Ela é incorporada nas fases de design, desenvolvimento, teste, lançamento e reavaliação. Assim, a segurança é analisada constantemente para garantir a conformidade. A automação de segurança de chaves e gatilhos durante o ALM e o pipeline de CI/CD garante a vigilância de segurança contínua, reduz a carga de trabalho manual e os possíveis erros.
Saiba mais sobre as práticas recomendadas de segurança sem servidor.
-
Se você tiver um aplicativo local e não quiser modernizá-lo, exporte-o para um contêiner e execute-o no Kubernetes. Isso requer alterações mínimas de código, então o aplicativo seria executado de maneira semelhante, mas poderia ser dimensionado muito mais facilmente. Se você quiser que seu aplicativo local incorpore o Azure Functions, um código deverá ser reescrito para incorporar eventos e gatilhos. Se preferir, execute o Azure Functions em contêineres do Kubernetes, que requer uma mudança para a nuvem.