paradigmas de programação

19
Paradigmas de Programação PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Upload: natanael-augusto-viana-simoes

Post on 08-Jul-2015

463 views

Category:

Technology


0 download

DESCRIPTION

Conceitos sobre Paradigma e como se aplica à programação. Mostra as clássicas abordagens filosóficas para o desenvolvimento de soluções com foco especial sobre a Orientação a Objetos.

TRANSCRIPT

Page 1: Paradigmas de Programação

Paradigmas de

Programação

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Page 2: Paradigmas de Programação

Natanael Simõesnatanaelsimoes

[email protected]

Professor de Informática no Instituto Federal de Rondônia – Campus Ariquemes

Bel. Sistemas de Informação – IESUR 2012Esp. Planejamento Educacional e Docência no Ensino Superior – IESUR

2013

Page 3: Paradigmas de Programação

Objetivo• Compreender os paradigmas de programação e sua

importância no desenvolvimento de sistemas

Page 4: Paradigmas de Programação

Conteúdo Programático• O que é paradigma?

• O que são paradigmas de programação?

Page 5: Paradigmas de Programação

Paradigma• Do grego parádeigma

• Significa PADRÃO, MODELO

• Classe de elementos com similaridades

• Antônimo: paradoxo!

“uma constelação de verdades (crenças), valores e técnicas que são compartilhadas pelos membros de uma dada

comunidade” Thomas S. Kuhn

Page 6: Paradigmas de Programação

O que são Paradigmas de Programação?

Page 7: Paradigmas de Programação
Page 8: Paradigmas de Programação
Page 9: Paradigmas de Programação

Paradigmas de Programação• É um estilo paradigmático de programar

• Uma linguagem pode ter vários paradigmas

“Fornece a visão que o programador possui sobre a estruturação e execução do programa”

FRANGO, 2009

Page 10: Paradigmas de Programação

Paradigmas de Programação• Funcional (funções declarativas matemáticas)

LIPS, Haskell

• Lógico (funções declarativas lógicas)

Prolog, Gödel

• Procedural (funções imperativas lineares)

C, Pascal

• Orientado a objetos (funções imperativas multiplexadas)

C#, Java, PHP

Page 11: Paradigmas de Programação

Paradigmas de Programação

Orientado a Objetos

Procedural

Page 12: Paradigmas de Programação

Orientação a Objetos (OO)• Visão sistêmica

• Mundo feito de objetos que se relacionam com outros objetos

• Permitiu avanços nos estudos cognitivos (percepção do mundo)

• Permitiu modelar o mundo real em software

Page 13: Paradigmas de Programação

Procedural vs OOProcedural Orientação a Objetos

Tipos de Dados Classes

Variável Objeto

Função/Procedimento Operação/Método

Chamada de Função Envio de Mensagem

Page 14: Paradigmas de Programação

Abstração• Método da OO para modelagem do mundo

• Visão simplificada do mundo (Generalização)

• Ignora aspectos variáveis com foco na similaridade

Page 15: Paradigmas de Programação

Objeto• Alguma coisa que existe

Fisicamente: carro, cachorro, caderno

Conceitualmente: venda, vôo, ordem de serviço

“Softwaremente”: arquivo, vetor

• Possui estados próprios

• Envia mensagens para outros objetos

• Responde mensagens de outros objetos

Page 16: Paradigmas de Programação

Classes• Conjunto de objetos com características comuns

• Define as características e comportamentos dos objetos

• Herança e Generalização

Page 17: Paradigmas de Programação

Atributos• São as características das classes

• Possuem valores que determinam os estados dos atributos em

cada objeto

Page 18: Paradigmas de Programação

Métodos• São as habilidades das classes

• Possuem comportamento determinado para cada habilidade

que o objeto pode executar

• Processado através do envio de mensagens

Page 19: Paradigmas de Programação

Exercícios para entregar1) O que é um paradigma? Dê um exemplo.

2) O que são paradigmas de programação? Quais são eles?

3) De que forma o conceito de abstração ajudou a firmar o

paradigma Orientado a Objetos?

4) Que relação existe entre Classes e Objetos?

5) Abstraia classes físicas e conceituais indicando o

relacionamento entre elas para os seguintes cenários:

Supermercado e Escola (IFRO)