P ARADIGMAS DE L INGUAGENS S UBPROGRAMAS Prof. Thiago Pereira Rique

Slides:



Advertisements
Apresentações semelhantes
TIPOS ABSTRATOS DE DADOS
Advertisements

Programação orientada a objetos
Python: Funções Claudio Esperança.
Linguagem PASCAL Subprogramas
ABSTRAÇÃO processo de representar um grupo de entidades através de seus atributos comuns feita a abstração, cada entidade particular (instância) do grupo.
Introdução à Ciência da Computação Linguagens de Programação.
Marco Antonio Montebello Júnior
Paradigmas de Linguagens Tipos de Dados
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS MÉTODOS – UMA VISÃO MAIS APROFUNDADA Prof. Thiago Pereira Rique
Prof. Thiago Pereira Rique
LÓGICA MATEMÁTICA APRESENTAÇÃO DA DISCIPLINA
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS CLASSES E OBJETOS – UMA VISÃO MAIS APROFUNDADA Prof. Thiago Pereira Rique
Algoritmos e Estrutura de Dados I
Orientação a Objetos: Encapsulamento e Classificação
Banco de Dados Oracle AESO.
PROGRAMAÇÃO MODULAR (com uso de subprogramas)
Algoritmos Escher.
Linguagem C LPG – I - FUNÇÕES Prof. Flavio Marcello
Estruturas de Dados I Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Wagner Santos C. de Jesus
Aula 4 Nomes, Vinculações, Tipos e Escopos
Aula 6 Subprogramas Universidade do Vale do Rio dos Sinos
Classes e objetos P. O. O. Prof. Grace.
Estrutura de Dados em Java
Paradigmas de Linguagens de Programação Paradima da Programação Orientada à Objetos Professor: Armando Hage Belém-2008.
JAVA: Conceitos Iniciais
Programação Orientada a Objetos em Delphi
Subprogramas São blocos de execução internas a um programa.
Aula prática 8 Ponteiros Monitoria de Introdução à Programação
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
Marco Antonio Montebello Júnior
Tópicos em redes e sistemas distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Web Services Uninorte Semana de Tecnologia da Informação
Programação I Aula 2 (Métodos)
PROGRAMAÇÃO ESTRUTURADA (MODULARIZAÇÃO/SUBPROGRAMAÇÃO)
Estudo dos Conceitos e Paradigmas de Programação
Tipos Abstratos de Dados
Classes, Objetos, Atributos e Métodos JAVA
Ambiente de Execução - Rotinas
Laboratório I Mateus Raeder. Mateus Raeder – fevereiro de 2009 Sobrecarga de métodos  Definição de métodos visibilidade tipo de retorno nome do método.
Estruturas de Dados Aula 2: Estruturas Estáticas 07/04/2014.
Programação Orientada a Objetos Curso de Engenharia da Computação Parte 03 – Conceitos Básicos III Prof. Fabricio Mota Oliveira
Capítulo VIII Ambientes de Execução
Wagner Santos C. de Jesus
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Implementação Orientada a Objetos – Aula 05 Construtores e sobrecarga de métodos Prof. Danielle Martin Universidade de Mogi das Cruzes
Algoritmos e Estruturas de Dados I – Modularização
Recursividade Bruno Silva.
Linguagens de Programação
CES-10 INTRODUÇÃO À COMPUTAÇÃO
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 15 Ponteiros.
Linguagem de Programação I Parte IV
PARADIGMAS DE LINGUAGENS EXPRESSÕES E INSTRUÇÕES DE ATRIBUIÇÃO
PCI- Funções e Procedimentos Profa. Mercedes Gonzales Márquez.
MÓDULO 4- Subprogramas (Procedimentos e Funções)
Laboratório de Programação II Método main Dados e Métodos de Classes.
Professora: Kelly de Paula Cunha
Influencias sobre o Projeto da Linguagem
Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista POO para Redes de Computadores.
Programação Orientada a Objetos para Redes de Computadores
Fundamentos de Engenharia de SW Diagramas da UML Usados no Projeto de Software.
Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista POO para Redes de Computadores.
USP – ICMC – SSC SSC0300 2º Semestre 2015 Disciplina de Linguagem de Programação e Aplicações [ Eng. Elétrica / Eletrônica ] 1 Prof. Dr. Daniel Rodrigo.
Tipo Abstrato de Dados (TAD) Estrutura de Dados Professor: Rodrigo Alves Sarmento Professor: André Cypriano.
Java Como Programar, 8/E Deitel/Deitel, 8e. Java – Como programar Copyright © 2010 Pearson Education Slide 1.
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Introdução à Orientação a Objetos em Java Prof. Gustavo Wagner (Alterações) Slides originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB.
Transcrição da apresentação:

P ARADIGMAS DE L INGUAGENS S UBPROGRAMAS Prof. Thiago Pereira Rique

A GENDA Fundamentos dos subprogramas Métodos de passagem de parâmetros Subprogramas sobrecarregados

F UNDAMENTOS DOS SUBPROGRAMAS Características gerais dos subprogramas: Cada subprograma tem um único ponto de entrada; Toda unidade chamadora é suspensa durante a execução do programa chamado. O controle sempre retorna ao chamador quando a execução do subprograma se encerra.

F UNDAMENTOS DOS SUBPROGRAMAS Definições básicas: Uma definição de subprograma descreve a interface e as ações da abstração de subprograma. Uma chamada a subprograma é a solicitação explícita para executar o subprograma. Diz-se que um subprograma é ativo se, depois de ter sido chamado, ele iniciou a execução, mas ainda não a concluiu.

F UNDAMENTOS DOS SUBPROGRAMAS Definições básicas: Cabeçalho de subprograma Especifica que a unidade sintática seguinte é uma definição de subprograma; Oferece um nome para o subprograma; Especifica uma lista de parâmetros (opcional).

F UNDAMENTOS DOS SUBPROGRAMAS Definições básicas: Cabeçalho de subprograma Exemplos: FORTRAN SUBROUTINE SOMADORA(parâmetros) Ada procedure SOMADORA(parâmetros)

F UNDAMENTOS DOS SUBPROGRAMAS Definições básicas: Cabeçalho de subprograma Exemplos: C void somadora(parâmetros)

F UNDAMENTOS DOS SUBPROGRAMAS Parâmetros: Acesso aos dados Acesso direto a variáveis não-locais Passagem de parâmetros Em algumas situações é conveniente ser capaz de transmitir computações como parâmetros a subprogramas.

F UNDAMENTOS DOS SUBPROGRAMAS Parâmetros: Parâmetros formais – parâmetros no cabeçalho de um programa. Parâmetros reais – parâmetros na chamada ao subprograma.

MÉTODOS DE PASSAGEM DE PARÂMETROS Passagem por valor: Valor do parâmetro real é usado para inicializar o parâmetro formal correspondente. Chamador Chamado (sub(a, b, c)) (procedure sub(x, y, z)) a b c x x = a y y = b z z = c

MÉTODOS DE PASSAGEM DE PARÂMETROS Passagem por referência: Transmite um caminho de acesso (endereço). Proporciona o caminho de acesso à célula que armazena o parâmetro real. ChamadorChamado int x;void fun(int *v)... fun(&x); x v

S UBPROGRAMAS SOBRECARREGADOS Um subprograma sobrecarregado tem o mesmo nome que outro no mesmo ambiente de referenciamento. Cada versão deve ser diferente quanto ao número, à ordem ou aos tipos de seus parâmetros (ou em seu tipo de retorno, se for uma função). C++, Java e Ada incluem subprogramas sobrecarregados predefinidos. Ex. (Java): JOptionPane.showMessageDialog(null, msg); JOptionPane.showMessageDialog(null, msg, title, JOptionPane.PLAIN_MESSAGE);

S UBPROGRAMAS SOBRECARREGADOS Na Ada, duas funções sobrecarregadas podem ter o mesmo perfil de parâmetro e diferir somente em seus tipos de retorno. No C++ e no Java, o tipo de retorno é irrelevante para tirar ambiguidade de funções (ou de métodos) sobrecarregadas. Ex. (Java): public int metodo(int a, int b) {... } public double metodo(int d, int e) {... } //ilegal public int metodo(int a, double b) {...}

REFERÊNCIA SEBESTA, R. W. Conceitos de Linguagens de Programação. 5a. Edição. São Paulo: Bookman, 2003.