0
Desenvolvimento Web Avançado usando
PHP: conceitos básicos, perspectivas e
             tendências


                    T...
Conceitos Básicos de PHP

     • PHP: quot;PHP Hypertext Preprocessorquot;
     • Tecnologia de código livre
        – Cri...
Conceitos Básicos de PHP

     • Esquema conceitual de uma aplicação
       Web
Conceitos Básicos de PHP

     • Ambiente de execução - Variáveis
Hello World

     <h1>Exemplo</h1>
     <?php
       $firstvar = quot;Hello Worldquot;;
       echo $firstvar;
     ?>
Orientação a Objetos em PHP

     • A palavra-chave class indica uma declaração de
       classe, delimitada por chaves.
 ...
Uma classe simples

     class ContaCorrente
     {
       var $saldo;
       function ContaCorrente ($valor) {
          ...
Utilizando uma classe

     • A definição da classe deve estar
       disponível no script ou página PHP que
       utiliz...
Utilizando a classe

      <?php
      include quot;ContaCorrente.phpquot;;

      $conta = new ContaCorrente (1000.0);

 ...
IDEs para desenvolvimento WEB

     • Eclipse
        – Vantagens:
           • Suporte a inúmeros plugins, inclusive de
 ...
IDEs para desenvolvimento WEB

     • Dreamweaver
       - Desenvolvedor de códigos web
          - (.php, .asp, .js, .htm...
Dreamweaver


               Definição da
              aplicação em
              que se deseja
                trabalhar
IDEs para desenvolvimento WEB

     • Delphi for PHP
       –   http://www.codegear.com
       –   IDE Visual para PHP
   ...
AJAX

       • Asynchronous Javascript And XML
         – Recuperação assíncrona de dados
            • objeto XMLHttpRequ...
Frameworks Ajax

     • Prototype
       – http://www.prototypejs.org/

       - Objetiva facilitar o desenvolvimento de
 ...
Frameworks Ajax

     Sajax

     • É uma ferramenta Open Source para fazer
       a programação Web, utilizando Ajax, o
 ...
Frameworks Ajax

     • Mootools
       – http://mootools.net/

       – Escrever códigos elaborados, flexíveis e
        ...
Framework PHP

    • CakePHP
      – http://www.cakephp.org/
      – http://manual.cakephp.org/
      – Convenção ao invés...
Integração e intercâmbio - XML

     • XML (eXtensible Markup Language)
        – padrão da W3C para gerar linguagens de
 ...
Folha de estilos - XSL

        – XSL – eXtensible Stylesheet Language
           • pode ser usada para transformar XML em...
SGBD MySQL

    • O MySQL foi criado na Suécia por David
      Axmark, Allan Larsson e Michael Widenius
    • Usa a SQL(St...
SGBD MySQL

    Exemplo de Tabela do MySQL
SGBD MySQL

    • Segue a sintaxe da SQL
      Ex: CREATE, DROP, INSERT, SELECT,
      UPDATE, etc.
    • Comando de criaç...
SGBD MySQL

    Exemplos de Comandos com MySQL:
      - SELECT * FROM pessoa;

      - SELECT nome, tel FROM pessoa;

    ...
phpMyAdmin

    • phpMyAdmin
       – ferramenta desenvolvida com PHP
       – para o gerenciamento de banco de dados
    ...
Modelagem de BD

    • DBDesigner

      – Criação Gráfica do Modelo Entidade
        Relacionamento
      – Geração dos c...
MySQL + Apache + PHP

      Esse três softwares livres são
      grandemente utilizados, pois além de
      gratuitos, são...
VertrigoServ

               • Facilidades para
                 configuração do
                 ambiente de
            ...
Padrões Web

    • Procure utilizar padrões de interface Web
       – minimizará o tempo de desenvolvimento
       – ajuda...
Padrões de Welie

     • Para design de interação

                                  Mais de
                             ...
Padrão de Welie - Automotive Site
Padrões Web Yahoo!
                     http://developer.yahoo.com/ypatterns/
Outros Padrões para Web

     • Designing Interfaces
        – Jenifer Tidwell
        – http://designinginterfaces.com/
 ...
Dúvidas

     • Alguma dúvida?
     • E-mail: thiago@aptor.com.br

     • Obrigado!
Desenvolvimento Web Avançado usando PHP
Desenvolvimento Web Avançado usando PHP
Desenvolvimento Web Avançado usando PHP
Desenvolvimento Web Avançado usando PHP
Desenvolvimento Web Avançado usando PHP
Desenvolvimento Web Avançado usando PHP
Desenvolvimento Web Avançado usando PHP
Desenvolvimento Web Avançado usando PHP
Upcoming SlideShare
Loading in...5
×

Desenvolvimento Web Avançado usando PHP

2,369

Published on

Published in: Technology
1 Comment
4 Likes
Statistics
Notes
  • gostei do tutorial, simples e prático...
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
2,369
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
127
Comments
1
Likes
4
Embeds 0
No embeds

No notes for slide

Transcript of "Desenvolvimento Web Avançado usando PHP"

  1. 1. Desenvolvimento Web Avançado usando PHP: conceitos básicos, perspectivas e tendências Thiago Jabur Bittar thiago@aptor.com.br 27 de Setembro de 2007
  2. 2. Conceitos Básicos de PHP • PHP: quot;PHP Hypertext Preprocessorquot; • Tecnologia de código livre – Criada Rasmus Lerdorf (Dinamarca) Andi Gutmans e Zeev Suraski (Israel) • Pode ser incorporado como módulo de um servidor web – IIS e Apache (Windows e Unix) • www.php.net – informações detalhadas – manual • Linguagem interpretada
  3. 3. Conceitos Básicos de PHP • Esquema conceitual de uma aplicação Web
  4. 4. Conceitos Básicos de PHP • Ambiente de execução - Variáveis
  5. 5. Hello World <h1>Exemplo</h1> <?php $firstvar = quot;Hello Worldquot;; echo $firstvar; ?>
  6. 6. Orientação a Objetos em PHP • A palavra-chave class indica uma declaração de classe, delimitada por chaves. • Dentro da classe podemos definir – atributos (variáveis) e – métodos (funções) • Formam o estado e o comportamento do objeto. • Um método com o mesmo nome da classe é o construtor do objeto, sendo executado sempre que uma instância for criada. • A classe deve utilizar a variável $this para referenciar seus próprios métodos e atributos
  7. 7. Uma classe simples class ContaCorrente { var $saldo; function ContaCorrente ($valor) { $this->saldo = $valor; } function saque ($valor) { if ($this->saldo >= $valor) $this->saldo = $valor; } function deposito ($valor) { $this->saldo += $valor; } }
  8. 8. Utilizando uma classe • A definição da classe deve estar disponível no script ou página PHP que utiliza a classe – comandos include ou require • Um objeto da classe deve ser instanciado pelo operador new. • O operador -> permite referenciarmos atributos e métodos do objeto
  9. 9. Utilizando a classe <?php include quot;ContaCorrente.phpquot;; $conta = new ContaCorrente (1000.0); echo (quot;Saldo inicial: { $conta->saldo }<BR/>quot;); $conta->saque (150.0); echo (quot;Novo saldo: {$conta->saldo}<BR/>quot;); ?>
  10. 10. IDEs para desenvolvimento WEB • Eclipse – Vantagens: • Suporte a inúmeros plugins, inclusive de modelagem; • Independente de linguagem, ambiente único
  11. 11. IDEs para desenvolvimento WEB • Dreamweaver - Desenvolvedor de códigos web - (.php, .asp, .js, .html, .xml, e etc) - Oferece mais auxílios para programação web do que outros ambientes - Facilidade de configuração - Integração a servidores
  12. 12. Dreamweaver Definição da aplicação em que se deseja trabalhar
  13. 13. IDEs para desenvolvimento WEB • Delphi for PHP – http://www.codegear.com – IDE Visual para PHP – Aumento de produtividade – Arquitetura de Componentes – Baseado em scripts e bibliotecas populares e código aberto
  14. 14. AJAX • Asynchronous Javascript And XML – Recuperação assíncrona de dados • objeto XMLHttpRequest; – Apresentação baseada em padrões, usando XHTML e CSS; – Exposição e interação dinâmica usando o DOM; – Intercâmbio e manipulação de dados usando XML e XSLT; – JavaScript une as tecnologias.
  15. 15. Frameworks Ajax • Prototype – http://www.prototypejs.org/ - Objetiva facilitar o desenvolvimento de aplicações dinâmicas na Web - manipulação de DOM - tratamento de eventos
  16. 16. Frameworks Ajax Sajax • É uma ferramenta Open Source para fazer a programação Web, utilizando Ajax, o mais fácil possível • http://www.modernmethod.com/sajax/ • Possui diversos exemplos e tutoriais no próprio site
  17. 17. Frameworks Ajax • Mootools – http://mootools.net/ – Escrever códigos elaborados, flexíveis e compatíveis com diversos navegadores
  18. 18. Framework PHP • CakePHP – http://www.cakephp.org/ – http://manual.cakephp.org/ – Convenção ao invés de configuração • ao contrário de outros frameworks onde existem enormes XML de configuração de aplicativo; – Arquitetura MVC (Model, View, Controller) – Pastas da aplicação estruturadas
  19. 19. Integração e intercâmbio - XML • XML (eXtensible Markup Language) – padrão da W3C para gerar linguagens de marcação para necessidades especiais – capaz de descrever diversos tipos de dados – separação do conteúdo e da formatação – legibilidade
  20. 20. Folha de estilos - XSL – XSL – eXtensible Stylesheet Language • pode ser usada para transformar XML em HTML – Consiste de três métodos: • transformar documentos XML • definir partes e padrões do XML • formatar documentos XML
  21. 21. SGBD MySQL • O MySQL foi criado na Suécia por David Axmark, Allan Larsson e Michael Widenius • Usa a SQL(Structured Query Language) e seus padrões • Livre para aplicativos Web • www.mysql.com • A versão mais atual é a 5.0 (há a versão Beta 5.1) • Considerado um dos SGBD mais eficientes para a Web
  22. 22. SGBD MySQL Exemplo de Tabela do MySQL
  23. 23. SGBD MySQL • Segue a sintaxe da SQL Ex: CREATE, DROP, INSERT, SELECT, UPDATE, etc. • Comando de criação de uma tabela de teste: CREATE TABLE pessoa( id_user INTEGER AUTO_INCREMENT, nome VARCHAR(80), telefone VARCHAR(10), PRIMARY KEY(id_user) );
  24. 24. SGBD MySQL Exemplos de Comandos com MySQL: - SELECT * FROM pessoa; - SELECT nome, tel FROM pessoa; - INSERT INTO pessoa (nome, tel, cpf) VALUES (‘Andre’,’00-00001111’,’01100110188’); - UPDATE pessoa SET nome = ‘Andree’ WHERE cpf = ‘01100110188’;
  25. 25. phpMyAdmin • phpMyAdmin – ferramenta desenvolvida com PHP – para o gerenciamento de banco de dados MySQL. • Sua primeira versão foi lançada em 1998 • http://www.phpmyadmin.net
  26. 26. Modelagem de BD • DBDesigner – Criação Gráfica do Modelo Entidade Relacionamento – Geração dos comandos SQL para a criação do BD Modelado
  27. 27. MySQL + Apache + PHP Esse três softwares livres são grandemente utilizados, pois além de gratuitos, são de alta qualidade Softwares que instalam e configuram os 3 aplicativos citados em ambiente Windows - Serv-n - VertrigoServ - também inclui o phpMyAdmin - http://vertrigo.sourceforge.net
  28. 28. VertrigoServ • Facilidades para configuração do ambiente de desenvolvimento.
  29. 29. Padrões Web • Procure utilizar padrões de interface Web – minimizará o tempo de desenvolvimento – ajudará a trazer maior usabilidade ao usuário – melhores práticas
  30. 30. Padrões de Welie • Para design de interação Mais de 125 padrões.
  31. 31. Padrão de Welie - Automotive Site
  32. 32. Padrões Web Yahoo! http://developer.yahoo.com/ypatterns/
  33. 33. Outros Padrões para Web • Designing Interfaces – Jenifer Tidwell – http://designinginterfaces.com/ • Web Patterns – UC Berkeley – http://harbinger.sims.berkeley.edu/ui_desig npatterns/webpatterns2/webpatterns/home. php • IAWiki on Website patterns – Feita por voluntários – http://www.iawiki.net/WebsitePatterns
  34. 34. Dúvidas • Alguma dúvida? • E-mail: thiago@aptor.com.br • Obrigado!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×