Modularização E Decomposição De Programas
Artigos Científicos: Modularização E Decomposição De Programas. Pesquise 861.000+ trabalhos acadêmicosPor: meridiene • 24/5/2013 • 468 Palavras (2 Páginas) • 964 Visualizações
- a técnica de refinamento sucessivos
- a modularização de programas
O desenvolvimento de algoritmos através de refinamentos sucessivos conduz a modularização da solução do problema.
A modularização de algoritmos envolve a decomposição de algorítmos em módulos tendo em vista a organizar o processo de programação permitindo assim o controle da complexidade do programa. Um módulo é um grupo de comandos que executa uma função bem definida. Pode-se imaginar um módulo como sendo uma caixa-preta que executa uma função. Desse modo, um programa pode ser visto como um conjunto de várias caixas-pretas interagindo-se entre si normalmente sob a supervisão de um módulo principal.
A figura abaixo pode traduzir a idéia de como seria um algoritmo decomposto em módulos:
Pelo diagrama acima pode-se observar que ele descreve uma estrutura hierárquica. O controle da execução do algoritmo fica sob a responsabilidade do módulo principal e os outros módulos respondem por rotinas específicas do problema. Quando os módulos de um programa respondem por realizar rotinas específicas que contribuem para a solução do problema diz-se que realizou-se uma decomposição funcional, isto é, o módulo executa alguma função específica do problema. Há outras formas de decomposição de um algoritmo.
As linguagens de programação dispõem de recursos que permitem a criação de módulos. Na orientação do interpretador Hall os módulos são implementados como funções. Traduzindo o diagrama acima para a sintaxe do interpretador poderemos ver algo como:
Pode-se observar no diagrama hierárquico acima que o módulo principal é a função algoritmo() uma vez que no interpretador tudo são funções. O diagrama hierárquico de módulos lembra a estrutura em árvore dos diretórios de um sistema operacional no qual o diretório principal de nível mais alto é o diretório raiz. O módulo principal também é denominado de módulo raiz.
Características do módulo
As seguintes características são desejáveis em um módulo:
1. deve ser pequeno. Módulos grandes são difíceis de ser compreendidos.
2. deve implementar uma única funcionalidade.
3. deve implementar ou definir suas próprias estruturas de dados.
4. as estruturas de dados do módulo devem ser necessárias
...