O que é programação modular?
A programação modular é um método para projetar software por meio da divisão de componentes de um grande programa de software em partes gerenciáveis. Essas peças, ou "módulos", podem ser desenvolvidos, testados e refinados independentemente. É um processo que geralmente ajuda a reduzir o tempo de desenvolvimento e evitar a replicação de código.
Identificar pontos em comum no software é a base da programação modular. Ao agrupar objetos e processos e garantir que cada módulo resultante funcione bem, o funcionamento adequado de todo o sistema é aprimorado. Ou seja, se os módulos funcionarem bem em termos do que esse módulo deve fazer, é mais provável que funcionem bem quando juntos.
Dependências mínimas entre os módulos é outra característica fundamental do design do programa modular. Dependências mínimas significa que pode haver muitos relacionamentos entre objetos em um módulo e poucos relacionamentos entre objetos em módulos separados . Para avaliar o grau de dependência em um programa, os desenvolvedores de software empregam um processo de medição conhecido como acoplamento. É necessário algum acoplamento para que os módulos trabalhem em conjunto para atingir a meta do programa de software como um todo, mas para reduzir a possibilidade de erro, o melhor acoplamento é melhor do ponto de vista da programação modular.
A ocultação de informações, outro aspecto frequentemente empregado na programação modular, também ajuda a otimizar as coisas e reduzir erros e redundâncias. Essencialmente, esse recurso restringe a quantidade de informações fornecidas apenas às necessárias. Informações adicionais, embora talvez relacionadas, não são transmitidas ao usuário do software ou ao módulo do programa que está solicitando informações de outro módulo dentro do programa.
A programação modular normalmente utiliza uma biblioteca de códigos compilada, que implementa consistência na codificação ou programação de cada módulo. Se um programa consistir nos módulos A, B e C, todos esses módulos executarão uma única fonte de código reutilizável em todos os módulos. A falta de repetição para cada módulo melhora o desempenho do sistema e diminui a possibilidade de erro humano na codificação.
O conceito de divisão na programação modular torna cada módulo e o que o compreende independente um do outro, mas cada módulo depende do mesmo código base. A exclusividade entre os módulos permite que um desenvolvedor substitua ou atualize partes individuais do software por vez. Usando uma abordagem modular, um desenvolvedor também pode carregar as partes necessárias de um programa, conforme necessário. A capacidade de fazer facilmente adições ou alterações no software sem a necessidade de modificar o programa base permite que os desenvolvedores lançem várias versões de um aplicativo de software que possuam componentes personalizáveis.