Upload
d1ogo
View
28
Download
0
Embed Size (px)
Citation preview
Paradigmas de Programação
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE
Natanael Simõesnatanaelsimoes
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
Objetivo• Compreender os paradigmas de programação e sua
importância no desenvolvimento de sistemas
Conteúdo Programático• O que é paradigma?
• O que são 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
O que são Paradigmas de Programação?
A linguagem:
Php? Jsp? Asp.net?
A linguagem:
Php? Jsp? Asp.net?
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
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
Paradigmas de Programação
Orientado a Objetos
Procedural
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
Procedural vs OOProcedural Orientação a Objetos
Tipos de Dados ClassesVariável ObjetoFunção/Procedimento Operação/MétodoChamada de Função Envio de Mensagem
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
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
Classes• Conjunto de objetos com características comuns
• Define as características e comportamentos dos objetos
• Herança e Generalização
Atributos• São as características das classes
• Possuem valores que determinam os estados dos atributos
em cada objeto
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
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)