Conceitos de Programação Modular
Tenho certeza que você já teve que fazer coisas complexas no seu projeto. O nível de complexidade de um software costuma ser baixa no início, mas depois de um tempo a complexidade começa a crescer devido as mudanças que precisam ser feitas.
A complexidade continua crescer constantemente conforme novas funcionalidades são adicionadas e funcionalidades existentes customizadas.
Quanto mais mudanças e customizações são feitas, mais complexo o sistema se torna, e quanto mais complexo se torna, mais difícil é para um novo desenvolvedor entender o projeto e começar a trabalhar nele.
E se a documentação não é boa o suficiente, então o entendimento se torna ainda mais difícil. Um alto nível de complexidade requer mais energia, recursos e tempo gasto para entender a estrutura da aplicação.
Qual é a causa que faz um sistema ser difícil de manter a manutenção? A resposta é que há muitas dependências por todo o código.
Isto acontece quando um pedaço de código depende de muitos outros pedaços de código, e isto pode gerar muitos problemas.
A modificação de um sistema torna-se dolorosa porque a modificação de um código pode afetar em outras partes da aplicação.
A modificação em uma aplicação em diferentes áreas, trás o risco da introdução de novos erros.
Além disso, alcançar um nível de reuso satisfatório torna-se difícil. O software tem tantas dependências que a simples reutilização de um componente pode custar muito tempo e pode ser que até aumente a complexidade. Isto dificulta o desejo de melhorar o sistema.
Ter um sistema com muitas dependências e adicionando novas funcionalidades pode se tornar um pesadelo.
Além disto, testar os processos também se torna difícil porque testar componentes separados é quase impossível.
Você como desenvolvedor, é muito difícil entender todo o sistema por causa da complexidade. Novas funcionalidades são adicionadas regularmente, e os envolvidos com o sistema devem sempre estar por dentro das mudanças, isto pode ser um desafio.
Para reduzir os efeitos negativos da complexidade, manter a manutenção do sistema em dia, não desperdiçar tempo, esforço e dinheiro.
O que precisar ser feito para resolver este problema? A resposta é a modularização.
Java 9 Modularity Revealed: Project Jigsaw and Scalable Java Applications (English Edition)
❤️ Curso Java Para Iniciantes
👍 Curso de Desenvolvimento Web Completo
#java
Deixe um comentário