Programação Estruturada
Programação Estruturada
Programação Estruturada
A noção da "crise do software" surgiu já no final dos anos 60 e uma das primeiras e mais
conhecidas referências ao termo foi feita por Edsger W. Dijkstra, em 1972 no Prêmio Turing da
Association for Computing Machinery, no manuscrito intitulado "The Humble Programmer".
Em 1968, Edsger W. Dijkstra, através do artigo "A Case against the GO TO Statement" critica o
uso excessivo do comando de desvio incondicional GOTO nos programas desenvolvidos na
época. Já em 1972 , novamente Dijkstra, escreve sobre os conceitos da Programação
Estruturada no "Capítulo I- Notes on Structured Programming" do livro "Structured
Programming" publicado juntamente com outros dois autores: Charles Antony Richard
Hoare e Ole-Johan Dahl.
À medida que os programas vão se tornando maiores e mais complexos, é possível simplificar
e melhorar a clareza dividindo o programa em partes menores, chamadas subprogramas.
Com a subdivisão de programas complexos algumas vantagens são conquistadas: a) cada parte
menor tem um código mais simples; b) facilita o entendimento uma vez que os subprogramas
podem ser analisados como partes independentes (legibilidade); c) códigos menores são mais
facilmente modificáveis para satisfazer novos requisitos do usuário e para correção de erros
(manutenibilidade); d) simplificação da documentação de sistemas; e) desenvolvimento de
software por equipes de programadores; e, f) reutilização de subprogramas através de
bibliotecas de subprogramas, na linguagem C, sob a forma dos arquivos de cabeçalhos (.h).
Segundo o Prof. Nivio Ziviani, um Tipo Abstrato de Dados (TAD) pode ser visto como um
modelo matemático, acompanhado das operações definidas sobre o modelo. O conjunto dos
inteiros acompanhado das operações de adição, subtração e multiplicação forma um exemplo
de um TAD.
Ainda segundo Ziviani, os TAD podem ser considerados generalizações de tipos primitivos de
dados, da mesma forma que procedimentos são generalizações de operações primitivas tais
como adição, subtração e multiplicação. Assim como um procedimento é usado para
encapsular partes de um programa, o tipo abstrato de dados pode ser usado para encapsular
tipos de dados.
Neste caso a definição do tipo de dados e todas as operações definidas sobre ele podem ser
localizadas em uma única seção do programa (na Linguagem C, por exemplo, em um arquivo
de cabeçalhos).
https://www.devmedia.com.br/introducao-a-programacao-estruturada/24951