Carregando...
Carregando...
Ajude a melhorar a plataforma
Arquiteturas de software podem variar grandemente em complexidade e funcionalidade. Uma arquitetura monolítica, comumente utilizada em sistemas mais antigos, encapsula todas as operações do sistema em um único e indistinto conjunto. Este modelo suporta diversos tipos de clientes, como mobile e desktop, e pode integrar com outras aplicações usando REST ou SOAP. Embora esta abordagem ofereça um desenvolvimento inicial rápido e seja mais simples de aprender e gerenciar inicialmente, ela também tem desvantagens significativas.
Considere as características e implicações do uso de uma arquitetura de software monolítica. Qual das seguintes opções é uma desvantagem dessa arquitetura?
Explique melhor esta questão
Abre o Tutor com o enunciado e as alternativas já no campo — você revisa e envia.
Esta questão foi verificada por um de nossos administradores.
🎓 Gabarito Comentado (AVA):
JUSTIFICATIVA
A arquitetura de software monolítica, comum em muitos sistemas legados e em aplicações mais simples, apresenta tanto vantagens quanto desvantagens dependendo do contexto de uso e dos requisitos específicos do projeto. Esta arquitetura caracteriza-se pela unificação de todos os componentes da aplicação em um único e indivisível programa, o que influencia diretamente a manutenção, escalabilidade e a integração do sistema. Entre as vantagens destacadas, o fato de facilitar o aprendizado e o desenvolvimento inicial devido à sua simplicidade é um ponto positivo relevante. Em uma arquitetura monolítica, todos os componentes da aplicação — interface do usuário, lógica de negócio, e acesso a dados — estão interligados e hospedados em uma única plataforma de desenvolvimento, o que simplifica o entendimento do fluxo de trabalho e a depuração durante as fases iniciais do desenvolvimento. Além disso, a utilização de uma infraestrutura simples, que reduz os custos iniciais de implantação, também é uma vantagem, especialmente para startups e pequenas empresas com orçamentos limitados. Por outro lado, a arquitetura monolítica apresenta desvantagens significativas, especialmente quando a aplicação precisa escalar ou se adaptar rapidamente a mudanças tecnológicas ou de mercado. Uma dessas desvantagens é a necessidade de realizar atualizações completas da aplicação para qualquer mudança em um componente. Isso significa que, mesmo para alterações pequenas, é necessário redeployar toda a aplicação, o que pode ser demorado e arriscado, aumentando a chance de downtime e erros que impactam toda a plataforma. Quanto à capacidade de integração com diversas plataformas de clientes, como mobile e desktop, e a possibilidade de suportar a integração com outras aplicações através de protocolos como REST e SOAP, estas são características que, embora possíveis em arquiteturas monolíticas, são muitas vezes mais complexas e menos flexíveis se comparadas às arquiteturas baseadas em microsserviços ou outras abordagens mais modernas. Em arquiteturas monolíticas, a complexidade do código e a rigidez da estrutura podem dificultar adaptações necessárias para a integração com diferentes tipos de plataformas ou tecnologias externas.