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

Desenvolvimento Web Avançado usando PHP

on

  • 3,323 views

 

Statistics

Views

Total Views
3,323
Views on SlideShare
3,315
Embed Views
8

Actions

Likes
3
Downloads
119
Comments
1

1 Embed 8

http://www.slideshare.net 8

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • gostei do tutorial, simples e prático...
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Desenvolvimento Web Avançado usando PHP Desenvolvimento Web Avançado usando PHP Presentation Transcript

  • 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
  • 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
  • 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. • 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
  • 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; } }
  • 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
  • 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;); ?>
  • IDEs para desenvolvimento WEB • Eclipse – Vantagens: • Suporte a inúmeros plugins, inclusive de modelagem; • Independente de linguagem, ambiente único
  • 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
  • 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 – Aumento de produtividade – Arquitetura de Componentes – Baseado em scripts e bibliotecas populares e código aberto
  • 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.
  • 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
  • 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
  • Frameworks Ajax • Mootools – http://mootools.net/ – Escrever códigos elaborados, flexíveis e compatíveis com diversos navegadores
  • 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
  • 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
  • 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
  • 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
  • SGBD MySQL Exemplo de Tabela do MySQL
  • 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) );
  • 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’;
  • 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
  • Modelagem de BD • DBDesigner – Criação Gráfica do Modelo Entidade Relacionamento – Geração dos comandos SQL para a criação do BD Modelado
  • 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
  • VertrigoServ • Facilidades para configuração do ambiente de desenvolvimento.
  • 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
  • Padrões de Welie • Para design de interação Mais de 125 padrões.
  • 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/ • 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
  • Dúvidas • Alguma dúvida? • E-mail: thiago@aptor.com.br • Obrigado!