PHP: Programando com Orientação a Objetos
|
|
|
- Giovana Figueiroa Sintra
- 10 Há anos
- Visualizações:
Transcrição
1 PHP: Programando com Orientação a Objetos Pablo Dall'Oglio Adianti Solutions
2 Roteiro Conceitos de Orientação a Objetos; Classes, objetos, propriedades, métodos; Métodos construtores e destrutores; Associação, agregação, composição e herança; Encapsulamento e polimorfismo; Exemplos práticos.
3 Introdução Programação Estruturada Vamos entender como surgiu a Orientação a Objetos; Como era a programação antes da O.O.? O paradigma que reinava era a programação estruturada; A programação estruturada introduziu conceitos importantes na engenharia de software em sua época; É baseada fortemente na modularização; A idéia da modularização é dividir o programa em unidades menores conhecidas por procedimentos ou funções, que são construídas para desempenhar uma tarefa específica; E Processo S
4 Introdução Programação Estruturada Na programação estruturada, as unidades do código (funções) se interligam por meio de três mecanismos básicos: seqüência, decisão e iteração, como ilustrado na figura a seguir:
5 Introdução Programação Estruturada As funções ou procedimentos e podem ser executados várias vezes; As funções podem receber parâmetros fazendo com que o resultado do seu processamento interno varie de acordo com os argumentos (parâmetros) de entrada; É possível executar uma função sob diversas circunstâncias diferentes; Estes itens configuram um importante conceito da engenharia de software: o REUSO; Além disto, uma boa modularização deve ter alta coesão e baixo acoplamento;
6 Análise Estruturada Análise Estruturada: Em primeiro lugar se pensa nos dados e nas estruturas que irão armazená-los (E.R.).
7 Análise orientada a objetos Análise O.O.: Em primeiro lugar se pensa nos conceitos, seus atributos, seu comportamento e nos seus relacionamentos.
8 Análise orientada a objetos
9 Objetos O sistema é organizado através de um conjunto de objetos; Uma entidade que possui atributos, comportamento e se relaciona com outros objetos por meio de mensagens; Um objeto pode ser algo concreto (pessoa, bicicleta, um pedido) ou abstrato (uma botão, uma janela, um arquivo); O objeto possui responsabilidade sobre si (encapsulamento); Os objetos propiciam maior compreensão do mundo real; A orientação a objetos leva à um baixo grau de acoplamento; Algumas linguagens Orientadas a Objetos: Smaltalk; C++; Java; PHP;
10 Objetos
11 Classes A classe é uma estrutura estática utilizada para descrever (moldar) objetos; A classe é um modelo (template) para criação de objetos; Podem ser classes: entidades do negócio da aplicação (pessoa, conta, cliente), entidades de interface (janela, botão, painel, frame, barra), dentre outras (conexão com BD, um arquivo XML, um Web Service); Um grupos de objetos é descrito por uma classe; Um objeto é uma instância de uma classe. Exemplo: Classe: Fatura / Objeto: Fatura no Classe: Pessoa / Objeto: João, Maria, etc...
12 Propriedades Propriedades são Atributos, características de um objeto; Os atributos definem a identidade de um objeto; Exemplo: Nós, seres humanos, somos definidos pelo conjunto de nossos atributos: físicos (algura, cor da pele, algura, cor do cabelo), psicológicos (personalidade, humor, empatia), de trabalho (capacidade, especialização, criatividade), de estudo (nível de escolaridade), dentre outros.
13 Métodos Os métodos são operações que definem o comportamento de um objeto; Os métodos definem como o objeto irá se relacionar com o mundo externo; É por meio de um método, que solicitamos que um objeto faça algo.
14 Definindo uma classe <?php class Pessoa // define os atributos public $Codigo; public $Nome; public $Altura; public $Idade; Atributos // define os métodos function setnome($nome) $this->nome = $nome; function Crescer($centimetros) $this->altura += $centimetros; Métodos Métodos?> function Envelhecer($anos) $this->idade += $anos; Métodos
15 Instanciando Objetos <?php // inclui a classe include 'pessoa.class.php'; // instancia o objeto $maria = new Pessoa; Instanciando o objeto // define aributos $maria->altura = 1.7; $maria->idade = 28; // executa métodos $maria->setnome('maria da Silva'); $maria->crescer(0.1); $maria->envelhecer(1); // imprime o objeto var_dump($maria);?> output object(pessoa)#1 (4) ["Codigo"]=> NULL ["Nome"]=> string(14) "Maria da Silva" ["Altura"]=> float(1,8) ["Idade"]=> int(29)
16 Instanciando Objetos <?php // instancia um objeto (janela) $janela = new GtkWindow; // define o tamanho da janela $janela->set_size_request(300,200); // instancia um rótulo de texto $label = new GtkLabel('Olá Mundo'); // adiciona o rótulo à janela $janela->add($label); // exibe a janela $janela->show_all(); // controle Gtk Gtk::Main();?>
17 Construtores e destrutores Um construtor é um método especial utilizado para definir o comportamento inicial de um objeto, ou seja, o comportamento no momento de sua criação; O método construtor é executado automaticamente no momento em que instanciamos um objeto por meio do operador new; Um método destrutor ou finalizador é um método especial executado automaticamente quando o objeto é desalocado da memória, quando atribuímos o valor NULL ao objeto, quando utilizamos a função unset() sobre o mesmo ou, em última instância, quando o programa é finalizado; O método destrutor pode ser utilizado para finalizar conexões, apagar arquivos temporários criados durante o ciclo de vida do objeto, dentre outros.
18 Construtores e destrutores <?php class Pessoa public $Codigo; public $Nome; // método construtor function construct($codigo, $nome) $this->codigo = $codigo; $this->nome = $nome; // método destrutor function destruct() echo "desalocando $this->nome\n"; output object(pessoa)#1 (2) ["Codigo"]=> int(27) ["Nome"]=> string(14) "Maria da Silva" object(pessoa)#2 (2) ["Codigo"]=> int(28) ["Nome"]=> string(14) "Joana Maranhão" desalocando Maria da Silva desalocando Joana Maranhão $maria = new Pessoa(27, 'Maria da Silva'); $joana = new Pessoa(28, 'Joana Maranhão'); var_dump($maria, $joana); unset($maria); unset($joana);?> Método destrutor Método construtor
19 Encapsulamento As classes são orientadas ao assunto, ou seja, cada classe é responsável por um assunto diferente e é responsável sobre o mesmo, ou seja, deve proteger o seu acesso; A proteção ao acesso ao seu conteúdo se dá por meio de mecanismos como o de encapsulamento; O encapsulamento visa separar os aspectos externos de um objeto dos detalhes internos daquele objeto. É uma forma de proteger certos atributos, evitando que os mesmos contenham valores inconsistentes ou sejam manipuladas indevidamente; Exemplo: Datas, Valores Numéricos;
20 Estrutura de um Objeto dados mensagem funções (métodos) que manipulam os dados
21 Encapsulamento <?php class Pessoa private $Codigo; public $Nome; private $Altura; output Fatal error: Cannot access private property Pessoa::$Altura in exemplo.php on line 25 function construct($codigo) $this->codigo = $codigo; function setaltura($altura) $this->altura = $altura; Tipos de visibilidade PRIVATE :: SOMENTE PRÓPRIA CLASSE PROTECTED :: CLASSE E DESCENDENTES PUBLIC :: DE QUALQUER PONTO $maria = new Pessoa(27); $maria->nome = 'Maria da Silva'; $maria->setaltura(1.7); $joana = new Pessoa(28); $joana->nome = 'Joana Maranhão'; $joana->altura = 1.8;?> Acesso não permitido
22 Associações Associação é a relação mais comum entre dois objetos; Na associação, um objeto possui uma referência à outro objeto, podendo visualizar seus atributos ou mesmo acionar uma de suas funcionalidades (métodos); A forma mais comum de implementar uma associação é ter um objeto como atributo de outro; No exemplo a seguir, criamos um objeto do tipo Produto e outro do tipo Fornecedor; Um dos atributos do produto é o fornecedor; Leia-se um objeto está relacionado com outro objeto;
23 Associações Exemplo em diagrama UML
24 Associações <?php class Produto public $Codigo; public $Descricao; public $Preco; public $Fornecedor; // exibe os dados do produto function ExibeDados() echo 'Codigo: '. $this->codigo. "<br>\n"; echo 'Descricao: '. $this->descricao. "<br>\n"; echo 'Preço: '. $this->preco. "<br>\n"; echo 'Fornecedor:'. $this->fornecedor->nome. "<br>\n"; <?php class Fornecedor public $Nome; public $Telefone; public $Endereco;?>?> // atribui um fornecedor ao produto function setfornecedor(fornecedor $fornecedor) $this->fornecedor = $fornecedor; Associação interna
25 Associações <?php include_once 'classes/produto.class.php'; include_once 'classes/fornecedor.class.php'; $macarrao = new Produto; $macarrao->codigo = 7; $macarrao->descricao = 'Macarrão instantâneo'; $macarrao->preco = 1.29; $macarrao->quantidade = 10; $isabela = new Fornecedor; $isabela->nome = 'Massas Isabela'; $isabela->telefone = '(51) '; $isabela->endereco = 'Rua das Massas'; output Codigo: 7 Descricao: Macarrão instantâneo Preço: 1,29 Fornecedor:Massas Isabela // associacao $macarrao->setfornecedor($isabela); Método de associação // exibe as informacoes $macarrao->exibedados();?>
26 Agregação A agregação é o tipo de relação entre objetos conhecida como todo/parte; Na agregação, um objeto agrega outro objeto, ou seja, referencia objeto(s) externo dentro de si; O objeto-pai poderá agregar uma ou muitas instâncias de um outro objeto e poderá utilizar funcionalidades do objeto agregado; A forma mais simples de implementar agregações é utilizando arrays; Criamos um array como atributo do objeto, sendo que o papel deste array é armazenar inúmeras instâncias de um outro objeto; Leia-se um objeto contém instâncias de outros objetos.
27 Agregação Exemplo em diagrama UML
28 Agregação <?php class CestaDeCompras private $Produtos; // colecao de objetos (array) function AdicionarItem(Produto $produto) $this->produtos[] = $produto; function ExibeLista() foreach ($this->produtos as $produto) echo $produto->descricao. "<br>\n"; function CalculaTotal() $total = 0; foreach ($this->produtos as $produto) $total += $produto->preco; return $total;?> Método de agregação
29 Agregação <?php class Produto public $Codigo; public $Descricao; public $Preco; output Chocolate Sensação Picanha Bovina Total : 19,2 $chocolate = new Produto; $chocolate->codigo=4; $chocolate->descricao = 'Chocolate Sensação'; $chocolate->preco = 1.2; $picanha = new Produto; $picanha->codigo=7; $picanha->descricao = 'Picanha Bovina'; $picanha->preco = 18; $cesta = new CestaDeCompras; $cesta->adicionaritem($chocolate); $cesta->adicionaritem($picanha); Chamada à agregação $cesta->exibelista(); echo 'Total : '; echo $cesta->calculatotal();?>
30 Composição Composição também é uma relação todo/parte; A diferença em relação à agregação é que, na composição, o objeto-pai ou todo é responsável pela criação e destruição de suas partes; O objeto-pai realmente possui a(s) instância(s) de suas partes. Diferentemente da agregação, na qual o todo e as partes são independentes; Na agregação, ao destruirmos o objeto todo as partes permanecem na memória, por terem sido criadas fora do escopo da classe todo. Já na composição, quando o objeto todo é destruído, suas partes também são; Leia-se um objeto é composto de outros objetos;
31 Composição Exemplo em diagrama UML
32 Composição <?php class Fornecedor public $Codigo; public $RazaoSocial; public $Contatos; function addcontato($nome, $telefone, $ ) $contato = new Contato; $contato->nome = $nome; $contato->telefone = $telefone; $contato-> = $ ; $this->contatos[] = $contato; <?php class Contato public $Nome; public $Telefone; public $ ;?> Método de composição?> function ImprimeContatos() foreach ($this->contatos as $contato) var_dump($contato);
33 Composição <?php include_once 'classes/fornecedor.class.php'; include_once 'classes/contato.class.php'; // instancia novo fornecedor $fornecedor = new Fornecedor; $fornecedor->codigo = 10; $fornecedor->razaosocial = 'Produtos Bom Gosto S.A.'; // atribui informações de contato $fornecedor->addcontato('mauro', ' ', '[email protected]'); $fornecedor->addcontato('maria', ' ', '[email protected]'); $fornecedor->addcontato('joana', ' ', '[email protected]'); // debug output var_dump($fornecedor);?> Fornecedor Object ( [Codigo] => 10 [RazaoSocial] => Produtos Bom Gosto S.A. [Contatos] => Array [0] => Contato Object [Nome] => Mauro [Telefone] => [ ] => [email protected] [1] => Contato Object...
34 Herança Um dos maiores benefícios na utilização da orientação a objetos é o reuso; A possibilidade de reutilizar partes de código nos dá maior agilidade no dia-a-dia, além de eliminar a necessidade de eventuais duplicações ou reescritas de código; Uma herança é um tipo de relacionamento que permite especializar uma classe, criar versões refinadas dela; Na herança, as classes são organizadas em hierarquias; A herança é uma forma de reutilizar componentes de software aperfeiçoando-os ou adicionando características específicas;
35 Hierarquia de Classes Super classe Sub classes
36 Hierarquia de Classes
37 Herança A herança permite o compartilhamento de atributos e métodos entre as classes de uma hierarquia; Cada subclasse herda todas as propriedades (atributos e métodos) de suas ancestrais; Uma subclasse pode estender ou redefinir a estrutura e/ou o comportamento de sua super classe; Leia-se um objeto é tipo de outro objeto; É um poderoso instrumento de reusabilidade, pois: permite que atributos e operações comuns à hierarquia sejam especificados apenas uma vez; Permite que novas classes sejam criadas contendo apenas a diferença entre ela e a classe-pai.
38 Herança <?php abstract class Conta private $Agencia; private $Numero; protected $Saldo; Uma classe abstrata não pode ser instanciada diretamente. function construct($agencia, $numero, $saldo) $this->agencia = $agencia; $this->numero = $numero; $this->saldo = $saldo; function Depositar($valor) $this->saldo += $valor;?> function getsaldo() return $this->saldo;
39 Herança <?php final class ContaCorrente extends Conta public $Limite; function Retirar($valor) if ($this->saldo + $this->limite > $valor) $this->saldo -= $valor; final class ContaPoupanca extends Conta function Retirar($valor) if ($this->saldo > $valor) $this->saldo -= $valor;?> Uma classe final não pode ser extendida. Classe filha Classe filha
40 Herança <?php include_once 'classes/conta.class.php'; include_once 'classes/contapoupanca.class.php'; include_once 'classes/contacorrente.class.php'; $conta1 = new ContaPoupanca('1', '123', 100); $conta2 = new ContaCorrente('2', '456', 200); $conta2->limite = 500; echo 'saldo conta1: '. $conta1->getsaldo(); // exibir 100 echo 'saldo conta2: '. $conta2->getsaldo(); // exibir 200 output saldo conta1: 100 saldo conta2: 200 saldo conta1: 400 saldo conta2: 700 saldo conta1: 400 saldo conta2: -499 $conta1->depositar(300); $conta2->depositar(500); echo 'saldo conta1: '. $conta1->getsaldo(); // exibir 400 echo 'saldo conta2: '. $conta2->getsaldo(); // exibir 700 $conta1->retirar(500); // saldo maximo e 400, nao deve permitir $conta2->retirar(1199); // (limite) saldo = 1200 (permitir) echo 'saldo conta1: '. $conta1->getsaldo(); // exibir 400 echo 'saldo conta2: '. $conta2->getsaldo(); // exibir -499?>
41 O que é um sistema O.O.? Um sistema OO é modelado, implementado e efetivamente funciona como um conjunto de objetos que interagem entre si.
42 Leitura Recomendada :-) 42
43 Obrigado! URL
PHP INTRODUÇÃO CLASSES E OBJETOS
INTRODUÇÃO PHP AULA 8 ORIENTAÇÃO A OBJETOS Professor: Leonardo Pereira E-mail: [email protected] Facebook: leongamerti Material de Estudo: http://www.leonti.vv.si A orientação a objetos ou OO é o paradigma
Parte I. Orientação a objetos no PHP. Contato: <[email protected]> Site: http://professores.chapeco.ifsc.edu.br/lara/
Parte I Programação para WEB II Orientação a objetos no PHP Contato: Site: http://professores.chapeco.ifsc.edu.br/lara/ Programação para WEB II 1 PHP Estruturado Os programadores
Orientação a Objetos com Java
Orientação a Objetos com Java Julio Cesar Nardi [email protected] 2011/2 Apresentação 3: Orientação Objetos: Conceitos Básicos Objetivos: Compreender os Conceitos Básicos da Orientação a Objetos;
AULA 4 VISÃO BÁSICA DE CLASSES EM PHP
AULA 4 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.
sobre rogério gonçalves gerente de projetos > digitale agência digital [email protected] h7p://www.digitale.com.br h7p://leveme.
sobre rogério gonçalves gerente de projetos > digitale agência digital [email protected] h7p://www.digitale.com.br h7p://leveme.la/rogerio definição - é uma forma de programar e organizar um sistema
Linguagem de Programação III Herança
Linguagem de Programação III Herança Prof. Moser Fagundes Curso Técnico em Informática (Modalidade Integrada) Instituto Federal Sul-Rio-Grandense (IFSul) Campus Charqueadas Vantagens da orientação a objetos
Curso de PHP. FATEC - Jundiaí. A programação orientada a objetos (object-oriented oriented programming
Curso de PHP FATEC - Jundiaí A programação orientada a objetos (object-oriented oriented programming OOP) é um conjunto de técnicas t para organizar o código c em torno de entidades ou objetos representados
ProgramaTchê programatche.net Programação OO com PHP
Roteiro 2 Objetivos: * Apresentar a sintaxe básica para utilização de Orientação a Objetos em PHP. Ferramentas necessárias Navegador, NetBeans, Servidor Apache. 1 Orientação a Objetos em PHP PHP é uma
EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS
Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor
PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. [email protected]
PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS Prof. Angelo Augusto Frozza, M.Sc. [email protected] ROTEIRO 1. Conceitos de Orientação a Objetos Introdução O paradigma da POO Classes
UM ESTUDO PARA A EVOLUÇÃO DO PHP COM A LINGUAGEM ORIENTADA A OBJETOS
UM ESTUDO PARA A EVOLUÇÃO DO PHP COM A LINGUAGEM ORIENTADA A OBJETOS Jean Henrique Zenzeluk* Sérgio Ribeiro** Resumo. Este artigo descreve os conceitos de Orientação a Objetos na linguagem de programação
Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo;
um objeto; é definido; Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo; class ClasseBase{ é instanciado; $objetobase = new ClasseBase; Caso queira,
PHP Orientado a Objetos Análise e Desenvolvimento de Sistemas Prof. Marcelo da Silveira Siedler [email protected]
PHP Orientado a Objetos Análise e Desenvolvimento de Sistemas Prof. Marcelo da Silveira Siedler [email protected] SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL FACULDADE DE TECNOLOGIA SENAC PELOTAS Introdução
Profº. Enrique Pimentel Leite de Oliveira
Profº. Enrique Pimentel Leite de Oliveira O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam
UML Aspectos de projetos em Diagramas de classes
UML Aspectos de projetos em Diagramas de classes Após ser definido o contexto da aplicação a ser gerada. Devemos pensar em detalhar o Diagrama de Classes com informações visando uma implementação Orientada
Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos
Programação Estruturada e Orientada a Objetos Fundamentos Orientação a Objetos 2013 O que veremos hoje? Introdução aos fundamentos de Orientação a Objetos Transparências baseadas no material do Prof. Jailton
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem
Técnicas de Programação II
Técnicas de Programação II Aula 06 Orientação a Objetos e Classes Edirlei Soares de Lima Orientação a Objetos O ser humano se relaciona com o mundo através do conceito de objetos.
Análise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 01 Orientação a Objetos Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na
Introdução à orientação a objetos. João Tito Almeida Vianna 25/05/2013
Introdução à orientação a objetos João Tito Almeida Vianna 25/05/2013 Roteiro Aula 2 Motivação Revisão dos conceitos da aula 1 Preparação para os exercícios Exercícios propostos 2 Motivação A orientação
Bibliografia. Desenvolvimento Orientado a Objetos. Introdução. Bibliografia. O que você vê?
Bibliografia Desenvolvimento Orientado a Objetos Prof.: Edson dos Santos Cordeiro LARMAN, Graig. Utilizando UML e padrões. Porto Alegre: Bookman, 2000. STAA, Arndt von. Programação modular. Rio de Janeiro:
Herança. Alberto Costa Neto DComp - UFS
Herança Alberto Costa Neto DComp - UFS 1 Motivação Vimos como se faz encapsulamento e a importância de fazê-lo... Contudo, também é possível fazer encapsulamento em algumas linguagens não OO O que mais
Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais
Curso de Java Orientação a objetos e a Linguagem JAVA Roteiro A linguagem Java e a máquina virtual Objetos e Classes Encapsulamento, Herança e Polimorfismo Primeiro Exemplo A Linguagem JAVA Principais
ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS
ATRIBUTOS PRIVADOS Podemos usar o modificador private, para tornar um atributo privado, obtendo um controle centralizado Definimos métodos para implementar todas as lógicas que utilizam ou modificam o
Desenvolvimento de Aplicações para Internet Aula 8
Desenvolvimento de Aplicações para Internet Aula 8 Celso Olivete Júnior [email protected] na aula passada Orientação a Objetos Classes Objetos Construtores Destrutores 2 na aula passada Construtores
Tópicos em Engenharia de Computação
Tópicos em Engenharia de Computação Introdução / Revisão UML e POO (JAVA) Prof. Ivan Prof. Zagari UML Linguagem Unificada. Não é metodologia, processo ou método. Versão atual 2.0 3 categorias de Diagramas
Roteiro do Programa e Entrada/Saída
Roteiro do Programa e Entrada/Saída c Professores de ALPRO I Faculdade de Informática PUCRS 03/2012 ALPRO I (FACIN) Roteiro do Programa e E/S 03/2012 1 / 32 Sumário 1 Relembrando 2 Programa Definição de
Análise e Projeto de Sistemas
Análise e Projeto de Sistemas Rafael Vargas Mesquita http://www.ci.ifes.edu.br ftp://ftp.ci.ifes.edu.br/informatica/mesquita/ Herança O que é herança? Herdar é derivar características de gerações precedentes.
Orientação a Objetos
Orientação a Objetos Daniel Destro do Carmo Softech Network Informática [email protected] Histórico A orientação a objetos (OO) foi concebida na década de 70. Origem na linguagem SIMULA-67 (década
PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP
PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP O PHP através da versão 5, veio desenvolvido com suporte a programação orientada a objetos. O que significa isso? Que a partir da versão 5 é possível criar bibliotecas
Reuso com Herança a e Composiçã
Java 2 Standard Edition Reuso com Herança a e Composiçã ção Helder da Rocha www.argonavis.com.br 1 Como aumentar as chances de reuso Separar as partes que podem mudar das partes que não mudam. Exemplo:
Técnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo. Conteúdo: Introdução à Orientação a Objetos
Técnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: Introdução à Orientação a Objetos Introdução Paradigmas de programação Programação Estruturada Composição
Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP
Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente
Programação Orientada a Objetos em Java. Herança
Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Herança Professor: César Melo Slides baseados em materiais preparados
Engenharia de Software III
Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf ([email protected]) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,
Prototype, um Design Patterns de Criação
Prototype, um Design Patterns de Criação José Anízio Pantoja Maia Este artigo tem como finalidade compreender o funcionamento do padrão de projeto prototype, serão abordados os participantes que compõe
ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto
Orientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Capítulo 22. Associações entre Classes. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 22 Associações entre Classes Objetivos do Capítulo Indicar os diferentes aspectos de um relacionamento entre classes que podem ser expressos através de uma associação. Descrever o significado
Polimorfismo. Prof. Leonardo Barreto Campos 1
Polimorfismo Prof. Leonardo Barreto Campos 1 Sumário Introdução; Polimorfismo; Polimorfismo Java; Métodos Abstratos Java Classes Abstratas Java Exercício - Java Polimorfismo C++ Classe Abstrata C++; Funções
UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação
SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar
Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo
Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: ([email protected]) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de
Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes.
1 Diagrama de Classes Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. Um dos objetivos do diagrama de classes é definir a base para
3. PARADIGMA ORIENTADO A OBJETOS
Paradigmas de Linguagens I 1 3. PARADIGMA ORIENTADO A OBJETOS Este paradigma é o que mais reflete os problemas atuais. Linguagens orientada a objetos (OO) são projetadas para implementar diretamente a
Programação por Objectos. Java
Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:
Programação Orientada a Objetos em Java
Programação Orientada a Objetos em Java Rone Ilídio da Silva Universidade Federal de São João del-rei Campus Alto Paraopeba 1:14 1 Objetivo Apresentar os principais conceitos de Programção Orientada a
Introdução a Java. Hélder Nunes
Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais
Orientação a Objetos com Java
Everton Coimbra de Araújo Orientação a Objetos com Java Simples, Fácil e Eficiente Visual Books Sumário Prefácio... 11 Introdução... 13 1 Introdução à Orientação a Objetos... 17 1.1 Conceitualização...
Introdução à Programação. Interface, Polimorfismo e Dynamic Binding
Introdução à Programação Interface, Polimorfismo e Dynamic Binding Interface Programador Java PLENO Possuir sólida experiência em programação Desenvolvimento na linguagem JAVA Webservice, Struts ou JSF(desejável)
Computação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato
Padrão Básico de Projeto: Interfaces e Polimorfismo
Padrão Básico de Projeto: Interfaces e Polimorfismo Herança de implementação versus herança de interface Há uma diferença grande entre uma classe e seu tipo A classe define ambos um tipo e uma implementação
Questões de Concursos Públicos sobre Orientação a Objetos e UML
Análise Orientada a Objetos Professora Lucélia Oliveira Questões de Concursos Públicos sobre Orientação a Objetos e UML 1. (BNDES) Analise as seguintes afirmações relativas à Programação Orientada a Objetos:
Capítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 14 Herança a e Polimorfismo Objetivos do Capítulo Apresentar os conceitos de herança e de polimorfismo. Explorar os diversos recursos disponíveis no Java para a aplicação da herança e do polimorfismo
Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos
Programação Orientada a Objetos Relacionamentos entre objetos Associação, composição e agregação Construtores e sobrecarga Variáveis de classe e de instância Reinaldo Gomes [email protected] Objetos
Programação com Acesso a BD. Programação com OO Acesso em Java
Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática
Orientação à Objetos. Aécio Costa
Aécio Costa O paradigma da orientação à objetos Paradigma? Um paradigma é uma forma de abordar um problema. No contexto da modelagem de um sistema de software, um paradigma tem a ver com a forma pela qual
ANÁLISE E PROJETO ORIENTADO A OBJETOS. Isac Aguiar isacaguiar.com.br [email protected]
ANÁLISE E PROJETO ORIENTADO A OBJETOS Isac Aguiar isacaguiar.com.br [email protected] Análise Descrição do problema a ser implementado Descrição dos objetos e classes que fazem parte do problema, Descrição
Sumário. Uma visão mais clara da UML
Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo V Unidade Curricular: Engenharia de Software Professora: Lara P. Z. B. Oberderfer Uma visão mais clara da
PROGRAMANDO EM C# ORIENTADO A OBJETOS
PROGRAMANDO EM C# ORIENTADO A OBJETOS AGENDA MÓDULO 2 Domínio e Aplicação Objetos, Atributos e Métodos Classes em C# Criando Objetos em C# Referências em C# Manipulando Atributos Valores Padrão Exercícios
ProgramaTchê Programação OO com PHP
Roteiro 1 Objetivos: * Apresentar conceitos de orientação a objetos; * Representar classes e objetos usando UML; Este roteiro tem como objetivo abordar os conceitos básicos de orientação a objetos. 1 Introdução
Programação Orientada a Objetos Herança Técnico em Informática. Prof. Marcos André Pisching, M.Sc.
Herança Técnico em Informática, M.Sc. Herança 2 Herança Reutilização de código Exemplo Banco: Um banco oferece diversos serviços que podem ser contratados individualmente pelos clientes. Quando um serviço
Especificação de Requisitos
Projeto/Versão: Versão 11.80 Melhoria Requisito/Módulo: 000552 / Conector Sub-Requisito/Função: Multas Tarefa/Chamado: 01.08.01 País: Brasil Data Especificação: 13/05/13 Rotinas Envolvidas Rotina Tipo
Introdução ao PHP. Prof. Késsia Marchi
Introdução ao PHP Prof. Késsia Marchi PHP Originalmente PHP era um assíncrono para Personal Home Page. De acordo com convenções para atribuições de nomes recursivas do GNU foi alterado para PHP Hypertext
Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.
Modelos de Sistema Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1 Objetivos Explicar por que o contexto de um sistema deve ser modelado como parte do processo de RE Descrever
Java TM e o Modelo de Objetos
Java TM e o Modelo de Objetos Java Deployment Course: Aula 1 por Jorge H C Fernandes ([email protected]) DIMAp-UFRN Java e o Modelo de Objetos Objetivos desta Aula Introduzir conceitos básicos do modelo
Desenvolvimento de Aplicações para Internet Aula 7
Desenvolvimento de Aplicações para Internet Aula 7 Celso Olivete Júnior [email protected] Classe e tipos de dados Classe Conjunto de objetos semelhantes, isto é, com a mesma estrutura (atributos) e
Pesquisa e organização de informação
Pesquisa e organização de informação Capítulo 3 A capacidade e a variedade de dispositivos de armazenamento que qualquer computador atual possui, tornam a pesquisa de informação um desafio cada vez maior
Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER
Objetivo dessa aula é descrever as características e a simbologia dos diagramas UML e MER na modelagem de sistemas de informação de uma forma a permitir a comunicação entre técnicos e gestores. Modelagem
Programação Orientada a Objetos
Programação Orientada a Objetos O FOCO NO MUNDO REAL Orientação a objetos A orientação a objetos (OO) foi concebida na década de 70. Origem na linguagem SIMULA-67 (década de 60 - Noruega), que já implementava
Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados
Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses
Programação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do mundo
Prova de Java. 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos)
Prova de Java 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos) O programa consiste em uma aplicação que simula o comportamento de dois
Padrão Básico de Projeto: Herança versus Composição
Padrão Básico de Projeto: Herança versus Composição Composição e Herança Composição e herança são dois mecanismos para reutilizar funcionalidade Alguns anos atrás (e na cabeça de alguns programadores ainda!),
Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto
Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto
PHP 5. Orientado a Objetos
PHP 5 Orientado a Objetos Introdução ao PHP 5 Com as primeiras 2 versões de PHP, PHP 3 e PHP 4, conseguiram uma plataforma potente e estável para a programação de páginas do lado do servidor. Estas versões
Programação com Objectos. Processamento de Dados I. 3. UML (Unified Modeling Language)
Programação com Objectos Processamento de Dados I 3. UML (Unified Modeling Language) 1 Modelo UML Diagrama de classes Programação com Objectos / Processamento de Dados I 2 Modelo O desenvolvimento de programas
Histórico da Orientação a Objetos Ciclo de vida de Desenvolvimento de SW
Histórico da Orientação a Objetos Ciclo de vida de Desenvolvimento de SW Baseado nos materiais dos profs: Prof.: Edilberto M. Silva http://www.edilms.eti.br Edna Canedo Marcio de Carvalho Victorino Brasília-DF,
SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária
SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária Cascavel Novembro de 2009 Pedro Patitucci Finamore Daniel Bordignon Cassanelli Marco Antonio da Rosa DIAGRAMAS DE CLASSE E SEQUÊNCIA
UML Unified Modeling Language
UML Unified Modeling Language Linguagem de Modelagem Unificada A linguagem UML UML (Unified Modeling Language) Linguagem de Modelagem Unificada É uma linguagem para especificação, É uma linguagem para
INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena
INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena Trabalho Experimental Sistema de Gestão Hoteleira 1. Objetivo Este trabalho tem o objetivo de consolidar o conhecimento sobre UML e
Programação com Objectos. Processamento de Dados I. 4. Classes Abstractas
Programação com Objectos Processamento de Dados I 4. Classes Abstractas 1 Conceito de classe abstracta Declaração de uma classe abstracta Implicações e características das classes abstractas Utilização
Programação por Objectos. Java
Programação por Objectos Java Parte 6: Herança e Polimorfismo LEEC@IST Java 1/52 Herança revisão A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse pode
2 Diagrama de Caso de Uso
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa
3.1 Definições Uma classe é a descrição de um tipo de objeto.
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:
Documento de Requisitos Projeto SisVendas Sistema de Controle de Vendas para Loja de Informática.
Documento de Requisitos Projeto SisVendas Sistema de Controle de Vendas para Loja de Informática. 1 Introdução 1.1 Propósito O propósito deste documento de especificação de requisitos é definir os requisitos
Java 2 Standard Edition Como criar classes e objetos
Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da
Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.
1 - Criando uma classe em Java Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. Antes de criarmos a(s) classe(s) é necessário criar o projeto
Prof. Jhonatan Fernando
Prof. Jhonatan Fernando Métodos Programação OO Instâncias de variáveis (objetos) Mensagens Classes Herança Polimorfismo Encapsulamento Abstração Programação Estruturada Procedimentos e funções Variáveis
Teste de Software. Ricardo Argenton Ramos [email protected]. Engenharia de Software I 2012.2
Teste de Software Ricardo Argenton Ramos [email protected] Engenharia de Software I 2012.2 O que diferencia teste de software OO de testes Convencionais? Técnicas e abordagens são normalmente
Introdução ao Paradigma Orientado a Objetos. Principais conceitos
Introdução ao Paradigma Orientado a Objetos Principais conceitos Paradigmas de Programação PROGRAMAÇÃO ESTRUTURADA X PROGRAMAÇÃO ORIENTADA A OBJETOS Paradigma Programação estruturada Na programação estrutura
Padrões de projeto 1
Padrões de projeto 1 Design Orientado Objeto Encapsulamento Herança Polimorfismo Design Patterns 2 Responsabilidades Booch e Rumbaugh Responsabilidade é um contrato ou obrigação de um tipo ou classe. Dois
UNIVERSIDADE FEDERAL DO PARANÁ
CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 05 APRESENTAÇÃO: Nesta aula vamos ver como se faz a criação de Métodos
LINGUAGEM DE PROGRAMAÇÃO WEB
LINGUAGEM DE PROGRAMAÇÃO WEB GABRIELA TREVISAN Aula 4 Imagine a seguinte situação: Precisamos trafegar valores de uma página PHP para outra, porém não temos formulários entre essas páginas. Como fazer
Material de Apoio 5. int getres() { return res; O que estas classes possuem em comum? 1) 2) 3)
pg. 1/6 Material de Apoio 5 Herança Observe o código das classes Fatorial e Fibonacci apresentados abaixo. class Fatorial { class Fibonacci { private int n, res; private int n, res; public Fatorial( int
1. Herança. Sobrescrevem métodos - redefinem métodos herdados. Subclasse herda de uma superclasse
1. Herança Herança - forma de reutilização de software Novas classes são criadas a partir de classes já existentes Absorvem atributos e comportamentos, e incluem os seus próprios Sobrescrevem métodos -
Capítulo 11. Conceitos de Orientação a Objetos. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 11 Conceitos de Orientação a Objetos Objetivos do Capítulo Introduzir os conceitos fundamentais da Programação Orientada a Objetos. Apresentar o significado dos objetos e das classes no contexto
Análise e Projeto de Sistemas de Informação. Andrêza Leite [email protected]
Análise e Projeto de Sistemas de Informação Andrêza Leite [email protected] Roteiro Sistemas de Informação Ciclo de Desenvolvimento de SI Projeto Análise Estruturada Análise Orientada a Objetos Como
Programação Orientada a Objetos C++
Programação Orientada a Objetos em C++ Sumário Histórico Comparação com Java Encapsulamento Tratamento de classes e objetos Herança Polimorfismo Histórico Desenvolvido por Bjarne Stroustrup dos Bell Labs
Autor: Ricardo Francisco Minzé Júnior - [email protected] Desenvolvendo aplicações em camadas com PHP 5.
Desenvolvendo aplicações em camadas com PHP 5. Talvez a primeira vista você ache estranha a palavra Camada em programação, mas o que vem a ser Camada? Segundo o dicionário: Camada 1 - Qualquer matéria
