1.1. apresentação

Propaganda
Desenvolvimento Web
Prof. Guilherme Keller
1.1. APRESENTAÇÃO
Professor Guilherme Keller
Formação:
Técnico em Processamento de Dados – Liceu Noroeste
Tecnólogo em Informática – FASP
Pós-graduação em Gestão de projetos e Desenvolvimento de sistemas - FASP
Contatos:
www.guilhermekeller.com.br
[email protected]
Metodologia de ensino e avaliação:
- Aulas:
Expositivas em sala
Práticas no laboratório
Listas de exercícios
Desenvolvimento de um site
- Lista de chamada:
Cada aluno deve assinar a lista, não sendo permitido assinar pelos colegas.
- Horários:
Os alunos devem respeitar os horários de início e término das aulas.
- Celular:
Não é permitido o uso de celular em sala de aula.
Durante a aula o aluno deve manter o celular desligado ou em modo silencioso.
- Avaliação:
A nota será composta por duas provas unificadas.
O aluno terá direito a fazer prova de recuperação.
O professor não poderá dar trabalhos, exercícios ou qualquer tipo de atividade para
compor ou ajudar na média dos alunos.
A disciplina no curso e integração com outras disciplinas.
Tecnologias que iremos aprender em 2010:
- PHP (Hypetext Preprocessor)
- JSP (Java Server Pages)
DW é uma disciplina que tem como pré-requisito o aluno ter os conhecimentos de ITW, se
integrando com LP horizontalmente, principalmente no segundo semestre quando veremos
JSP.
Bibliografia:
Básica
WELLING, Luke. PHP e MySQL : Desenvolvimento Web. Campus: Rio de Janeiro, 2005.
NIEDERAUER, Juliano. Desenvolvendo Websites com PHP. 2Ed. Novatec: São Paulo, 2004.
KOLB, Mark A. Desenvolvendo na Web com Java Server Pages. Ciência Moderna: Rio de
Janeiro, 2000.
Gonçalves, Edson. Desenvolvendo Aplicações Web com JSP, SERVLETS, JAVASERVER
FACES, HIBERNATE, EJB 3 PERSISTENCE E AJAX. Ciência Moderna: 2007.
Desenvolvimento Web
Prof. Guilherme Keller
Complementar
SOARES, Walace. PHP 5.0 : conceitos, programação e integração com Banco de Dados. 5Ed.
Érica: São Paulo, 2004.
ROCHA, Cerli Antonio. Desenvolvendo websites dinâmicos : PHP, ASP, JSP. Campus: Rio de
Janeiro, 2003.
TODD, Nick. JavaServer Pages : o guia do desenvolvedor. Campus: Rio de Janeiro, 2003.
ANSELMO, Fernando. Tudo sobre a JSP : com o NetBeans em aplicações distribuídas. Visual
Books: Florianópolis, 2005.
Sugestão de leitura on-line
W3C. Word Wide Web Consortium. Disponível online em: [http://www.w3.org/]
PHP. Site Oficial PHP Hypertext Preprocessor. Disponível online em: [http://www.php.net/]
MySQL. MySql: Developer Zone. Disponível online em: [http://dev.mysql.com/]
Objetivos
Gerais:
Entender o funcionamento de um Web Site composto por páginas dinâmicas e componentes;
Selecionar a melhor solução técnica para o desenvolvimento de um WEB Site composto de
páginas dinâmicas e otimizar recursos de segurança através de um projeto específico;
Analisar, Projetar e desenvolver (programar) um sistema para Internet composto por páginas
dinâmicas.
Específicos:
- Adotar boas práticas de nível mundial no desenvolvimento Web (Web Standards).
- Compreender a parte conceitual e prática de linguagens e padrões para internet de forma a
elaborar páginas e projetos utilizando recursos disponíveis.
- Aplicar o conteúdo aprendido na implementação e desenvolvimento de projetos profissionais
para internet.
- Aprender a empregar os recursos das linguagens de marcação e de programação de scripts
no desenvolvimento de projetos para internet.
Ementa...
2.1. CONCEITOS:
Conceituando páginas dinâmicas em ambiente Web.
Conceituando Páginas Dinâmicas
A linguagem HTML não é uma linguagem de programação, e sim, uma linguagem descritiva
que tem como objetivo dar formato ao conteúdo de sites como, por exemplo, textos e imagens.
O HTML não permite realizar cálculos matemáticos, tomadas de decisão ou criar páginas a
partir de uma base de dados. A partir desta deficiência do HTML, se fez necessário o emprego
de outras linguagens, capazes de responder de maneira inteligente às demandas do
navegador permitindo a automatização de determinadas tarefas, além de interagir com o
usuário. Páginas criadas dentro deste contexto são chamadas de páginas dinâmicas.
Aplicações do lado do cliente e do lado do servidor
O navegador é uma espécie de aplicação capaz de interpretar as ordens recebidas na forma
de código HTML fundamentalmente e convertê-las nas páginas que são o resultado de tal
Desenvolvimento Web
Prof. Guilherme Keller
ordem. Quando clicamos sobre um link hipertexto, na verdade o que acontece é que
estabelecemos uma petição de um arquivo HTML residente no servidor o qual é enviado e
interpretado pelo navegador, ou seja, do lado do cliente.
Entretanto, se a página que pedimos não é um arquivo HTML, o navegador é incapaz de
interpretá-la. É por isso que, se quisermos empregar linguagens acessórias para realizar um
site web, é absolutamente necessário que seja o próprio servidor que os execute e interprete
para logo enviá-los ao cliente (navegador) na forma de arquivo HTML totalmente legível por
ele, de forma que, quando clicamos sobre um link a uma página que contém um script em uma
linguagem compreensível unicamente pelo servidor, o que ocorre na verdade é que tal script é
executado pelo servidor e o resultado dessa execução dá lugar à geração de um arquivo HTML
que é enviado ao cliente.
Sendo assim, podemos falar de linguagens de lado de servidor que são aquelas linguagens
que são reconhecidas, executadas e interpretadas pelo próprio servidor e que se enviam ao
cliente em um formato compreensível para ele. Por outro lado, as linguagens de lado cliente,
como por exemplo HTML e JavaScript, são aquelas que podem ser diretamente interpretadas
pelo navegador e não necessitam de um pré-tratamento.
Cada um destes tipos tem é claro, suas vantagens e seus inconvenientes. Assim, por exemplo,
uma linguagem de lado cliente é totalmente independente do servidor, sendo executada mais
rapidamente. Já uma linguagem do lado servidor é independente do cliente, o que é muito
menos rígido em relação a mudança de um navegador a outro ou em relação às versões do
mesmo. Por outro lado, os scripts são armazenados no servidor de quem os executa e traduz a
HTML, o que permanecem ocultos para o cliente. Este fazer pode ser sem dúvida, uma forma
legítima de proteger o trabalho intelectual realizado.
Para escrever uma página dinâmica podemos fazer da mesma forma que se fizéssemos em
HTML. Na verdade, o código está constituído exclusivamente de texto e o único que temos que
fazer portanto é salvar o arquivo texto com uma extensão que possa ser reconhecida
posteriormente pelo servidor. Assim, por exemplo, as páginas de ASP são reconhecidas por
sua extensão "asp" do mesmo modo que as de PHP. Visto que se trata unicamente de arquivos
texto, é possível criar páginas dinâmicas a partir do Bloco de Notas ou qualquer outro
processador de texto. Também podemos utilizar os editores clássicos empregados para o
HTML a pesar de que neste caso, estamos obrigados a trabalhar em modo editar e não em
modo gráfico.
Uma vez o programa realizado, o passo imediato é o de executá-lo. As linguagens do lado
servidor executam os scripts no próprio e enviam o resultado em forma de código HTML ao
cliente (navegador). Então, é óbvio que para provar o programa é necessário subir por FTP os
arquivos que o compõem no servidor e fazer a petição desde o navegador ou ter um servidor,
como Apache, por exemplo, instalado na máquina.
2.2. EVOLUÇÃO DAS TECNOLOGIAS DE CONTEÚDO DINÂMICO:
Common Gateway Interface
O servidores de HTTP mais antigos não incluíam qualquer mecanismo embutido para gerar
respostas dinamicamente. Ao invés disso, forneciam interfaces para chamar outros programas
para traduzir as solicitações no conteúdo em tempo de execução. O primeiro padrão para
conteúdo dinâmico na web se baseava na Common Gateway Interface (CGI) que especificava
um mecanismo para os servidores passarem as solicitações para programas externos, escritos
em linguagens como Perl por exemplo.
ColdFusion
Desenvolvimento Web
Prof. Guilherme Keller
O ColdFusion, da Allaire, é uma ferramenta de desenvolvimento de aplicações web que
permite criar páginas web dinâmicas, através da integração entre elementos como: banco de
dados, ambiente web e aplicações de e-mail, além de permitir aplicações Java. O Cold Fusion
utiliza-se de uma linguagem denominada CFML (Cold Fusion Markup Language). Baseada em
tags, como o HTML, tornando-se uma linguagem de fácil aprendizado.
Active Server Pages
O ASP é uma tecnologia que se utiliza de linguagens script como VBScript, JScript, PerlScript
ou Python processadas no servidor para geração de conteúdo dinâmico na Web. Ele roda
nativamente em servidores Windows, através do serviço chamado de IIS (Internet Information
Service) - o servidor web da Microsoft.
Server-Side JavaScript
JavaScript é uma linguagem de programação baseada em scripts orientada a objetos, criada
para ser usada embutida em outro produto/aplicação, tal como WEB Browsers e WEB Servers
(ditos client-side e server-side, respectivamente).
As aplicações server-side JavaScript, provêm capacidade para elaboração das regras e objetos
do negócio (business object) através de acessos a possíveis bancos de dados do sistema.
PHP
PHP originalmente era o acrônimo de Personal Home Page, mas devido ao crescimento de seu
escopo e funcionalidades, se nome mudou para Hypertext PreProcessor. O PHP é uma
linguagem de conteúdo dinâmico que emprega uma sintaxe do tipo do C, está disponível para
diversas plataformas e é Open Source, resultado de contribuições de programadores do mundo
inteiro.
Java Servlets
Devido à importância da geração de conteúdo dinâmico para o desenvolvimento da web, foi
natura que a Sun propusesse extensões para Java em seu domínio. Da mesma forma que a
Sun introduziu applets como pequenas aplicações baseadas em Java para adicionar
funcianalidade interativa aos navegadores, em 1996 a Sun introduziu servlets como pequenas
aplicações baseadas em Java para adicionar funcionalidade dinâmica a servidores web.
Java Server Pages
A tecnologia JSP foi criada para contornar algumas limitações no desenvolvimento com
Servlets. Em um Servlet a formatação da página HTML resultante do processamento de uma
requisição se mistura com a lógica da aplicação em si, dificultando a alteração dessa
formatação, em uma página JSP essa formatação se encontra separada da programação,
podendo ser modificada sem afetar o restante da aplicação.
Assim, um JSP consiste de uma página HTML com alguns elementos especiais, que conferem
o caráter dinâmico da página. Esses elementos podem tanto realizar um processamento por si,
como podem recuperar o resultado do processamento realizado em um Servlet, por exemplo, e
apresentar esse conteúdo dinâmico junto a página JSP.
Referências:
KOLB, Mark A. Desenvolvimento na Web com Java Server Pages. Rio de Janeiro: Ciência
Moderna, 2000.
http://www.criarweb.com
Download