21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
BEM-VINDOS AO CURSO
DE
ORIENTADO A OBJETOS
Leonardo Pimentel Ferreira
Higor Ernandes Ramos Silva
Aula 1
1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
2
Objetivos do Curso
• Introduzir conceitos de programação para web
• Introduzir o PHP
• Utilizar o paradigma Orientado a Objeto com MVC em
PHP
• Utilizar banco de dados no PHP
• Introduzir conceitos de segurança em PHP
• Introduzir o framework front-end Bootstrap Twitter
Aula 1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
Agenda
• 21/11
• Introduzir conceitos de programação para web
• Introduzir o PHP, MVC e O. O. em PHP
• 26/11
• Utilizar o paradigma Orientado a Objeto em PHP
• 28/11
• Utilizar o paradigma Orientado a Objeto em PHP
• 03/12
• Conectando PHP ao Banco de dados através do PDO
• 05/12
• Introduzir conceitos de segurança em PHP
• 10/12
• Introduzir o framework front-end Bootstrap Twitter
Aula 1
3
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
Vamos começar!
• Arquitetura Cliente-Servidor
• Protocolo Web HTTP e HTTPS
• Introdução HTML
• Linguagens Lado Cliente e Lado Servidor
• Considerações
Aula 1
4
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
Arquitetura Cliente-Servidor
Servidor
Clientes
Aula 1
5
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
6
Protocolo Web HTTP e HTTPS
• HTTP ( Hypertext Transfer Protocol )
• HTTPS ( Hypertext Transfer Protocol Secure )
• A WEB roda sobre o protocolo HTTP
• HTTP governa como web browsers requisitam
arquivos de servidores web e como servidores
enviam arquivos de volta
Aula 1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
Inspecionando os cabeçalhos gerados
quando uma requisição HTTP é feita
Aula 1
7
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
Dois principais comandos HTTP
• GET: é usado para buscar dados de um recurso especificado
Aula 1
8
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
9
Dois principais comandos HTTP
• POST: é usado para submeter dados a serem processados para um
recurso especificado
Aula 1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
10
Mais sobre o protocolo HTTP e HTTPS
• HTTP é um protocolo da camada de aplicação do
modelo OSI
• Utilizam o protocolo TCP/IP (que garante entre
outras coisas, que os dados recebidos estejam
corretos)
• A diferença entre HTTP e HTTPS está
na segurança: o HTTPS utiliza dados
criptografados pela rede
Aula 1
Fonte:
Wikipedi
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
11
HTML (versão atual: 5)
• HTML (Hypertext Markup Language) é uma linguagem de
marcação utilizada para criar páginas Web
• Seu objetivo é mostrar como conteúdo da página deva estar
organizado
• O HTTP é o responsável por transferir o conteúdo HTML
• O Cliente (Browser) é o responsável por interpretar o código
HTML transferido pelo protocolo HTTP que é uma resposta do
servidor Web
• Qualquer que seja a linguagem: PHP, Java, ASP para fazer um
website, um arquivo HTML é gerado ao final do processamento.
Aula 1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
HTML (versão atual: 5)
Aula 1
12
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
13
Linguagens Lado Cliente
• Linguagens Lado Cliente: São linguagens que executam
no navegador do Cliente
• Pode-se fazer várias coisas com elas como:
• Validar dados
• Produzir efeitos interativos
• Modificar elementos HTML
• Tratar eventos
• Reduzir o processamento no Lado Servidor
• etc.
• Ex.: Javascript, ActionScript (Flash)
Aula 1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
14
Linguagens Lado Servidor
• Linguagens Lado Servidor: São linguagens que executam
no servidor Web ou servidor HTTP
• Com elas é possível:
• Gerar conteúdo dinâmico para a aplicação
• Armazenar dados em banco de dados
• Processar dados da requisição
• etc.
• Ex.: PHP, Java, Java, Ruby on Rails, ASP, etc.
Aula 1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
Algumas considerações
• Exemplos de Servidores Web: Apache, Internet
Information Services, Lighttpd, nginx
• Padrão W3C
• Determina regras (padrão Web)
• Frameworks
• São utilizados muitas vezes para facilitar e agilizar o
desenvolvimento de aplicações
• IDE (Integrated Development Environment)
• Fornecem ferramentas que facilitam o desenvolvimento de
software
Aula 1
15
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
16
• Após esta ligeira introdução... Vamos utilizar:
• PHP como uma Linguagem Lado Servidor (Versão atual
5.5.6 em 21/11/2013)
• Apache como sendo o servidor HTTP/HTTPS
Aula 1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
Funcionalidades do PHP
• Interoperabilidade e liberdade de escolha:
• Pode ser usado na maioria dos sistemas operacionais
• Suportado pela maioria dos servidores web
• Suporte:
• Em constante atualização
• Boa documentação
• Vários frameworks: Cake PHP, Zend, Yii, CodeIgniter.
• Mais frameworks em http://www.phpframeworks.com/
• Doctrine ORM
Aula 1
17
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
18
Funcionalidades do PHP
• Do ponto de vista de programação: (fácil de aprender)
• Aceita programação procedimental, orientação a objetos ou uma
mistura de ambos.
• Relaciona bem com HTML, XML, XHTML e também trabalha com
saída de imagens, PDF, filmes em Flash, gera conteúdo dinâmico.
• Suporta muitos banco de dados, inclusive NoSQL, PDO
• Serviços com protocolos LDAP, IMAP, SNMP, NNTP, POP3, HTTP,
COM (on Windows). Sockets, WDDX, instancia objetos Java
transparentemente com objetos PHP.
• Manipula texto muito bem. Suporta expressões regulares.
• Suporta vários algorítmos de criptografia
• Mais detalhes:
• http://us3.php.net/manual/en/funcref.php
• http://us3.php.net/manual/en/index.php
Aula 1
21/11/2013 PET Sistemas de Informação | Faculdade de Computação | Universidade Federal de Uberlândia
19
Referências
• Site W3C Schools: http://www.w3schools.com/
• Site W3C: http://www.w3.org/
• Site do PHP: http://php.net/
• Livro: Programming PHP 3rd Edition. Kevin Tatroe, Peter
MacIntyre e Rasmus Lerdorf
• Livro: Object-Oriented PHP, concepts, techniques, and
code, Peter Lavin
Aula 1
Download

Introdução a programação Web - PET-SI UFU