SlideShare uma empresa Scribd logo
1 de 27
Desenvolvimento Web com
PHP
Pós-Graduação em Desenvolvimento
Web
Apresentação
Apresentação
• Professor: Thyago Maia Tavares de Farias
– Doutorando em Computação pelo Cin / UFPE
– Mestre em Informática pelo PPGI / DI / UFPB
– Bacharel em Ciência da Computação – UFPB
– Currículo Lattes: http://lattes.thyagomaia.net
– E-Mail: thyagomaia@gmail.com
3
Apresentação
• Foco da disciplina
 Apresentar os fundamentos do paradigma
orientado a objetos aplicado em PHP (PHP OO);
4
Apresentação
• Referência Bibliográfica
 PHP – Programando
com Orientação a
Objetos
 Autor: Pablo Dall’Oglio
 Editora: Novatec
5
Apresentação
• Sites auxiliares:
– http://facebook.com/profthyagomaia
– http://twitter.com/thyagomaia
– http://www.slideshare.net/thyagomaia
– http://www.php.net
– http://www.w3schools.com
– http://www.codeacademy.com.br
6
Apresentação
• Aplicações que serão utilizados no curso:
– Notepad++
• https://notepad-plus-plus.org/
– Xampp
• https://www.apachefriends.org/pt_br/index.html
7
Apresentação
• Avaliação:
– Miniprojeto: Desenvolvimento de uma aplicação
PHP orientada a objetos;
• Trabalho em Grupo (3 integrantes);
• Tema Livre (Deverá ser pré-aprovado pelo professor);
• Critérios de Avaliação:
– Interface, usabilidade, aplicação das competências e
habilidades adquiridas durante o curso, aplicação de pelo
menos um padrão de projeto, organização do Projeto e
apresentação ao professor (até 15 min.);
• Exercícios durante as aulas:
– Apresentar resolução na última aula;
8
Paradigmas de Programação
Paradigmas de Programação
 Uma linguagem de
programação (LP) = Notação
formal para descrição de
algoritmos em um
computador;
 É necessário entender as
organizações das LP, com
ênfase na compreensão dos
seus conceitos abstratos e
dos seus elementos de
representação;
10
Paradigmas de Programação
 Cada LP pode se relacionar com um método
de projeto específico;
 Cada linguagem de programação pode forçar
um certo estilo de programação;
 Tais estilos são chamados de paradigmas de
programação;
11
Paradigmas de Programação
 Principais paradigmas:
 Programação Procedural
 Programação Orientada a Objetos
12
Paradigmas de Programação
 Programação Procedural (Estruturado):
 Estilo de programação convencional (descrita no
aprendizado em algoritmos);
 Programas são decompostos em “passos” de
processamento;
 Rotinas são usadas na modularização de passos
específicos;
 Ex.: Pascal e C;
13
Paradigma de Programação
Orientado a Objetos
Paradigma de Programação OO
 O paradigma OO propõe que a solução de
qualquer problema pode ser obtida seguindo
estas etapas:
 Procurar e implementar classes existentes no problema;
 Determinar as características e responsabilidades de cada
classe;
 Instanciar objetos de cada classe;
 Estabelecer como ocorrerá a interação entre os objetos;
15
Paradigma de Programação OO
 O modelo OO é formado por quatro
componentes básicos:
 Objetos;
 Mensagens;
 Métodos;
 Classes;
16
Paradigma de Programação OO
 Classe
 Estrutura de dados que possui atributos (variáveis de
classe) e métodos (funções PHP);
 Descreve as propriedades e comportamentos de objetos;
 Modelo ou template para objetos;
 Objeto
 Originada com base em uma classe;
 A partir de um objeto, temos “uma cópia” dos atributos e
métodos de uma classe;
 Interagem no sistema e armazenam dados;
17
Paradigma de Programação OO
 Exemplo 1 – Implementação de uma classe em PHP:
18
// Arquivo Produto.php
<?php
class Produto
{
// Classe com 4 atributos
public $codigo;
public $descricao;
public $preco;
public $quantidade;
}
?>
Paradigma de Programação OO
 Exemplo 1 – Instanciando um objeto da classe
Produto:
19
// Arquivo testeObjeto.php
<?php
// Incluindo a classe criada anteriormente
require_once ‘classes/Produto.php’;
// Criando um objeto
$produto = new Produto();
// Atribuindo valores aos atributos
$produto->codigo = 4001;
$produto->descricao = ‘CD – AC/DC’;
?>
Paradigma de Programação OO
 Exemplo 2 – A classe Produto com atributos e um
método:
20
// Arquivo Produto.class.php
<?php
class Produto
{
// Classe com 4 atributos
public $codigo;
public $descricao;
public $preco;
public $quantidade;
Paradigma de Programação OO
 Exemplo 2 – A classe Produto com atributos e um
método:
21
// Arquivo Produto.class.php
public function imprimeEtiqueta()
{
echo ‘Código: ’ . $this->codigo .
‘<br>’;
echo ‘Descrição: ’ . $this-
>descricao . ‘<br>’;
}
}
?>
Paradigma de Programação OO
 Exemplo 2 – Instanciando um objeto da classe
Produto e executando um método do mesmo:
22
// Arquivo testeObjeto.php
<?php
// Incluindo a classe criada anteriormente
require_once ‘classes/Produto.php’;
// Criando um objeto
$produto = new Produto();
// Atribuindo valores aos atributos
$produto->codigo = 4001;
$produto->descricao = ‘CD – AC/DC’;
$produto->imprimeEtiqueta();
?>
PHP OO – Construtores e
Destrutores
Construtor
 Método especial utilizado para definir o
comportamento inicial de um objeto;
 Muito utilizado para inicializar atributos
(variáveis de classe);
 Executado automaticamente no momento da
instância de um objeto (uso da palavra
reservada new);
24
Construtor
 Sintaxe:
25
function __construct($p_1, $p_2, ..., $p_n)
Destrutor
 Método especial a ser executado
automaticamente quando o objeto é
desalocado da memória ou quando o
programa é finalizado;
 Muito utilizado para finalizar conexões,
apagar arquivos temporários, etc.;
26
Destrutor
 Sintaxe:
27
function __destruct()

Mais conteúdo relacionado

Mais procurados

Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
Rodrigo Rodrigues
 

Mais procurados (20)

Aula03 PHP - Estruturas Condicionais
Aula03 PHP - Estruturas CondicionaisAula03 PHP - Estruturas Condicionais
Aula03 PHP - Estruturas Condicionais
 
Introdução a HTML5
Introdução a HTML5Introdução a HTML5
Introdução a HTML5
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a Internet
 
Desenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos BásicosDesenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos Básicos
 
Aula01-JavaScript
Aula01-JavaScriptAula01-JavaScript
Aula01-JavaScript
 
01 Introdução à programação web
01 Introdução à programação web01 Introdução à programação web
01 Introdução à programação web
 
Introdução APIs RESTful
Introdução APIs RESTfulIntrodução APIs RESTful
Introdução APIs RESTful
 
CSS
CSSCSS
CSS
 
React JS - Parte 1
React JS - Parte 1React JS - Parte 1
React JS - Parte 1
 
HTML Principios Básicos
HTML Principios BásicosHTML Principios Básicos
HTML Principios Básicos
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 
Introdução ao HTML
Introdução ao HTMLIntrodução ao HTML
Introdução ao HTML
 
FYBSC IT Web Programming Unit IV PHP and MySQL
FYBSC IT Web Programming Unit IV  PHP and MySQLFYBSC IT Web Programming Unit IV  PHP and MySQL
FYBSC IT Web Programming Unit IV PHP and MySQL
 
Introdução ao Front-end no Desenvolvimento Web
Introdução ao Front-end no Desenvolvimento WebIntrodução ao Front-end no Desenvolvimento Web
Introdução ao Front-end no Desenvolvimento Web
 
Mini Curso de PHP
Mini Curso de PHPMini Curso de PHP
Mini Curso de PHP
 
Programação Orientado a Objetos
Programação Orientado a ObjetosProgramação Orientado a Objetos
Programação Orientado a Objetos
 
PHP
PHPPHP
PHP
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em Java
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Java - Primeiros passos
Java - Primeiros passosJava - Primeiros passos
Java - Primeiros passos
 

Semelhante a Desenvolvimento Web com PHP - Aula 1

Planode Aula
Planode AulaPlanode Aula
Planode Aula
softeam
 
PHP: Programando com orientação a Objetos
PHP: Programando com orientação a ObjetosPHP: Programando com orientação a Objetos
PHP: Programando com orientação a Objetos
Pablo Dall'Oglio
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
Rangel Javier
 

Semelhante a Desenvolvimento Web com PHP - Aula 1 (20)

Fundamentos da Programação PHP OO - Aula 1
Fundamentos da Programação PHP OO - Aula 1Fundamentos da Programação PHP OO - Aula 1
Fundamentos da Programação PHP OO - Aula 1
 
Desenvolvimento Web com PHP - Aula 3
Desenvolvimento Web com PHP - Aula 3Desenvolvimento Web com PHP - Aula 3
Desenvolvimento Web com PHP - Aula 3
 
Metodologia e Linguagem de Programação - Aula 1
Metodologia e Linguagem de Programação - Aula 1Metodologia e Linguagem de Programação - Aula 1
Metodologia e Linguagem de Programação - Aula 1
 
Workshop Django Framework - 30/10/2018
Workshop Django Framework - 30/10/2018Workshop Django Framework - 30/10/2018
Workshop Django Framework - 30/10/2018
 
Planode Aula
Planode AulaPlanode Aula
Planode Aula
 
PHP: Programando com orientação a Objetos
PHP: Programando com orientação a ObjetosPHP: Programando com orientação a Objetos
PHP: Programando com orientação a Objetos
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Fundamentos da Programação PHP OO - Aula 3
Fundamentos da Programação PHP OO - Aula 3Fundamentos da Programação PHP OO - Aula 3
Fundamentos da Programação PHP OO - Aula 3
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
PHP 5.3 - Classes e Objetos
PHP 5.3 - Classes e ObjetosPHP 5.3 - Classes e Objetos
PHP 5.3 - Classes e Objetos
 
UML - parte 1
UML - parte 1UML - parte 1
UML - parte 1
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)
 
Python x R: mas e o Weka?
Python x R: mas e o Weka? Python x R: mas e o Weka?
Python x R: mas e o Weka?
 
TDC2016SP - Python x R: mas e o Weka?
TDC2016SP - Python x R: mas e o Weka?TDC2016SP - Python x R: mas e o Weka?
TDC2016SP - Python x R: mas e o Weka?
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – II
 
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1
 
Abstração do banco de dados com PHP Doctrine
Abstração do banco de dados com PHP DoctrineAbstração do banco de dados com PHP Doctrine
Abstração do banco de dados com PHP Doctrine
 
Java7
Java7Java7
Java7
 
Java primeiros-passos
Java primeiros-passosJava primeiros-passos
Java primeiros-passos
 

Mais de Thyago Maia

Mais de Thyago Maia (13)

Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 4 - 2019.1
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 4 - 2019.1Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 4 - 2019.1
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 4 - 2019.1
 
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 2
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 2Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 2
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 2
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
 
Programação Dinâmica para Web - Aula 2
Programação Dinâmica para Web - Aula 2Programação Dinâmica para Web - Aula 2
Programação Dinâmica para Web - Aula 2
 
Programação Dinâmica para Web - Aula 1
Programação Dinâmica para Web - Aula 1Programação Dinâmica para Web - Aula 1
Programação Dinâmica para Web - Aula 1
 
Metodologia e Linguagem de Programação Avançada - Aula 1
Metodologia e Linguagem de Programação Avançada - Aula 1Metodologia e Linguagem de Programação Avançada - Aula 1
Metodologia e Linguagem de Programação Avançada - Aula 1
 
Desenvolvimento Web com PHP - Aula 2
Desenvolvimento Web com PHP - Aula 2Desenvolvimento Web com PHP - Aula 2
Desenvolvimento Web com PHP - Aula 2
 
Desenvolvimento de sistemas web com PHP Frameworks - Aula 4
Desenvolvimento de sistemas web com PHP Frameworks - Aula 4Desenvolvimento de sistemas web com PHP Frameworks - Aula 4
Desenvolvimento de sistemas web com PHP Frameworks - Aula 4
 
Desenvolvimento de sistemas web com PHP Frameworks - Aula 3
Desenvolvimento de sistemas web com PHP Frameworks - Aula 3Desenvolvimento de sistemas web com PHP Frameworks - Aula 3
Desenvolvimento de sistemas web com PHP Frameworks - Aula 3
 
Desenvolvimento de sistemas web com PHP Frameworks - Aula 2
Desenvolvimento de sistemas web com PHP Frameworks - Aula 2Desenvolvimento de sistemas web com PHP Frameworks - Aula 2
Desenvolvimento de sistemas web com PHP Frameworks - Aula 2
 
Desenvolvimento de sistemas web com php Frameworks - Aula 1
Desenvolvimento de sistemas web com php Frameworks - Aula 1Desenvolvimento de sistemas web com php Frameworks - Aula 1
Desenvolvimento de sistemas web com php Frameworks - Aula 1
 
Fundamentos da Programação PHP OO - Aula 2
Fundamentos da Programação PHP OO - Aula 2Fundamentos da Programação PHP OO - Aula 2
Fundamentos da Programação PHP OO - Aula 2
 
Mantenha sua Privacidade e Segurança na Web com o Tails
Mantenha sua Privacidade e Segurança na Web com o TailsMantenha sua Privacidade e Segurança na Web com o Tails
Mantenha sua Privacidade e Segurança na Web com o Tails
 

Último

Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
edelon1
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
WagnerCamposCEA
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
TailsonSantos1
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
HELENO FAVACHO
 

Último (20)

About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéis
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
Seminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxSeminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptx
 
praticas experimentais 1 ano ensino médio
praticas experimentais 1 ano ensino médiopraticas experimentais 1 ano ensino médio
praticas experimentais 1 ano ensino médio
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 
Antero de Quental, sua vida e sua escrita
Antero de Quental, sua vida e sua escritaAntero de Quental, sua vida e sua escrita
Antero de Quental, sua vida e sua escrita
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
 

Desenvolvimento Web com PHP - Aula 1

  • 3. Apresentação • Professor: Thyago Maia Tavares de Farias – Doutorando em Computação pelo Cin / UFPE – Mestre em Informática pelo PPGI / DI / UFPB – Bacharel em Ciência da Computação – UFPB – Currículo Lattes: http://lattes.thyagomaia.net – E-Mail: thyagomaia@gmail.com 3
  • 4. Apresentação • Foco da disciplina  Apresentar os fundamentos do paradigma orientado a objetos aplicado em PHP (PHP OO); 4
  • 5. Apresentação • Referência Bibliográfica  PHP – Programando com Orientação a Objetos  Autor: Pablo Dall’Oglio  Editora: Novatec 5
  • 6. Apresentação • Sites auxiliares: – http://facebook.com/profthyagomaia – http://twitter.com/thyagomaia – http://www.slideshare.net/thyagomaia – http://www.php.net – http://www.w3schools.com – http://www.codeacademy.com.br 6
  • 7. Apresentação • Aplicações que serão utilizados no curso: – Notepad++ • https://notepad-plus-plus.org/ – Xampp • https://www.apachefriends.org/pt_br/index.html 7
  • 8. Apresentação • Avaliação: – Miniprojeto: Desenvolvimento de uma aplicação PHP orientada a objetos; • Trabalho em Grupo (3 integrantes); • Tema Livre (Deverá ser pré-aprovado pelo professor); • Critérios de Avaliação: – Interface, usabilidade, aplicação das competências e habilidades adquiridas durante o curso, aplicação de pelo menos um padrão de projeto, organização do Projeto e apresentação ao professor (até 15 min.); • Exercícios durante as aulas: – Apresentar resolução na última aula; 8
  • 10. Paradigmas de Programação  Uma linguagem de programação (LP) = Notação formal para descrição de algoritmos em um computador;  É necessário entender as organizações das LP, com ênfase na compreensão dos seus conceitos abstratos e dos seus elementos de representação; 10
  • 11. Paradigmas de Programação  Cada LP pode se relacionar com um método de projeto específico;  Cada linguagem de programação pode forçar um certo estilo de programação;  Tais estilos são chamados de paradigmas de programação; 11
  • 12. Paradigmas de Programação  Principais paradigmas:  Programação Procedural  Programação Orientada a Objetos 12
  • 13. Paradigmas de Programação  Programação Procedural (Estruturado):  Estilo de programação convencional (descrita no aprendizado em algoritmos);  Programas são decompostos em “passos” de processamento;  Rotinas são usadas na modularização de passos específicos;  Ex.: Pascal e C; 13
  • 15. Paradigma de Programação OO  O paradigma OO propõe que a solução de qualquer problema pode ser obtida seguindo estas etapas:  Procurar e implementar classes existentes no problema;  Determinar as características e responsabilidades de cada classe;  Instanciar objetos de cada classe;  Estabelecer como ocorrerá a interação entre os objetos; 15
  • 16. Paradigma de Programação OO  O modelo OO é formado por quatro componentes básicos:  Objetos;  Mensagens;  Métodos;  Classes; 16
  • 17. Paradigma de Programação OO  Classe  Estrutura de dados que possui atributos (variáveis de classe) e métodos (funções PHP);  Descreve as propriedades e comportamentos de objetos;  Modelo ou template para objetos;  Objeto  Originada com base em uma classe;  A partir de um objeto, temos “uma cópia” dos atributos e métodos de uma classe;  Interagem no sistema e armazenam dados; 17
  • 18. Paradigma de Programação OO  Exemplo 1 – Implementação de uma classe em PHP: 18 // Arquivo Produto.php <?php class Produto { // Classe com 4 atributos public $codigo; public $descricao; public $preco; public $quantidade; } ?>
  • 19. Paradigma de Programação OO  Exemplo 1 – Instanciando um objeto da classe Produto: 19 // Arquivo testeObjeto.php <?php // Incluindo a classe criada anteriormente require_once ‘classes/Produto.php’; // Criando um objeto $produto = new Produto(); // Atribuindo valores aos atributos $produto->codigo = 4001; $produto->descricao = ‘CD – AC/DC’; ?>
  • 20. Paradigma de Programação OO  Exemplo 2 – A classe Produto com atributos e um método: 20 // Arquivo Produto.class.php <?php class Produto { // Classe com 4 atributos public $codigo; public $descricao; public $preco; public $quantidade;
  • 21. Paradigma de Programação OO  Exemplo 2 – A classe Produto com atributos e um método: 21 // Arquivo Produto.class.php public function imprimeEtiqueta() { echo ‘Código: ’ . $this->codigo . ‘<br>’; echo ‘Descrição: ’ . $this- >descricao . ‘<br>’; } } ?>
  • 22. Paradigma de Programação OO  Exemplo 2 – Instanciando um objeto da classe Produto e executando um método do mesmo: 22 // Arquivo testeObjeto.php <?php // Incluindo a classe criada anteriormente require_once ‘classes/Produto.php’; // Criando um objeto $produto = new Produto(); // Atribuindo valores aos atributos $produto->codigo = 4001; $produto->descricao = ‘CD – AC/DC’; $produto->imprimeEtiqueta(); ?>
  • 23. PHP OO – Construtores e Destrutores
  • 24. Construtor  Método especial utilizado para definir o comportamento inicial de um objeto;  Muito utilizado para inicializar atributos (variáveis de classe);  Executado automaticamente no momento da instância de um objeto (uso da palavra reservada new); 24
  • 26. Destrutor  Método especial a ser executado automaticamente quando o objeto é desalocado da memória ou quando o programa é finalizado;  Muito utilizado para finalizar conexões, apagar arquivos temporários, etc.; 26