Buscar

Modularização com Funções e Procedimentos

Prévia do material em texto

Estrutura de Dados 1 
UNIP - Ciência da Computação e Sistemas de Informação 
 
 
 
Estrutura de Dados 
 
AULA 2 
Modularização 
Estrutura de Dados 2 
Por que MODULARIZAR? 
• Programas cada vez maiores: 
– Aumento da complexidade; 
– Repetição de trechos de código. 
 
• Como atacar um problema de cada vez? 
– “dividir-para-conquistar”: dividir problemas em 
subproblemas menores e mais tratáveis, e se ainda 
for muito complexa, dividi-se em subproblemas ainda 
menores e assim sucessivamente. 
 
Como evitar repetições? 
Modularização 
Estrutura de Dados 3 
MODULARIZAÇÃO 
Procedimentos e Funções 
• São subprogramas: 
– Um subprograma não pode 
ser executado diretamente. 
– Ele precisa ser "invocado" ou 
"chamado" pelo programa 
principal. 
– Esta chamada desvia o fluxo 
de controle para o 
subprograma 
– Um subprograma pode 
invocar outro subprograma e 
assim sucessivamente. 
– Podem ser parametrizados, 
auxiliando reaproveitamento. 
Funções e Procedimentos 
• Diferenças 
– Procedimentos são estruturas que agrupam um conjunto de 
comandos, que são executados quando o procedimento é 
chamado; 
– Funções são procedimentos que retornam um valor ao seu término 
• Vantagens 
– Evitam que os blocos do programa fiquem grandes demais e mais 
difíceis de ler e entender; 
– Ajudam a organizar o programa; 
– Permitem reaproveitamento de códigos construídos anteriormente; 
– Evitam repetição de trechos de códigos, minimizando erros e 
facilitando alterações. 
 
Funções e Procedimentos 
• Funções 
– Sintaxe de uma função: 
static tipo_de_retorno nome_da_função (com ou sem parâmetros) 
 { 
 corpo_da_função 
 
 return (valor de retorno); 
 } 
• Procedimentos 
– Sintaxe de um procedimento: 
static void nome_da_função (com ou sem parâmetros) 
 { 
 código; 
 } 
 
Funções e Procedimentos 
 
 
• O tipo-de-retorno é o tipo de variável que a função vai retornar. 
• A declaração de parâmetros é uma lista com a seguinte forma geral: tipo 
var1, tipo var2, ... , tipo varN 
• O tipo deve ser especificado para cada uma das N variáveis de entrada. É 
na declaração de parâmetros que informamos ao compilador quais serão as 
entradas da função. 
• O corpo da função é onde as entradas são processadas, saídas são 
geradas, etc. 
• O comando return tem a seguinte forma geral: return valor_de_retorno; 
• Quando se chega a uma declaração return a função é encerrada 
imediatamente e, se o valor de retorno é informado, a função retorna este 
valor. O valor de retorno fornecido tem que ser compatível com o tipo de 
retorno declarado para a função. 
• static – Um método estático, indica que não precisa ser instaciado para 
ser utilizado (orientação a objetos). 
 
 
Estrutura de Dados 7 
Passagem de Parâmetros 
• Passagem por valor: 
– Passagem do conteúdo da variável 
– Parâmetro do mesmo tipo da variável 
– Independência entre variáveis e parâmetros 
– Valores das variáveis são copiados para os parâmetros 
– Mudanças em parâmetros não afetam as variáveis 
 
• Passagem por referência: 
– Passagem do endereço da variável 
– Parâmetro do tipo apontador 
– Dependência entre variáveis e parâmetros 
– Parâmetros apontam para o conteúdo das variáveis 
– Mudanças em parâmetros refletem nas variáveis

Outros materiais

Perguntas Recentes