Desenvolvimento em PHP<br />Prof. Lucas Simões Maistro<br />lucassimoesmaistro@bol.com.br<br />http://www.twitter.com/luca...
Apresentação<br />Prof. Lucas Simões Maistro<br />Especialista em Sistemas para Internet<br />Bacharel em Administração de...
Tendências do Mercado<br />Sistemas Web<br />Mobilidade<br />Saas<br />Computação em Nuvem (Cloud Computing)<br />
O que é PHP?<br />O PHP é, assim como Java e .NET, uma linguagem de programação e uma plataforma global.<br />Como linguag...
O que é PHP?<br />Cerca de 1000 engenheiros desenvolvem o PHP.<br />O PHP é Software Livre, distribuído sob uma licença na...
Por que usar PHP?<br />
Simplicidade<br />O PHP é uma linguagem com um modelo de desenvolvimento muito simples. <br />O objetivo inicial do PHP er...
Adaptabilidade<br />O PHP usa duas sintaxes: procedura e orientada a objetos. <br />Procedural:<br />utilizada por webmast...
Interoperabilidade<br />Diversas ferramentas suportam a linguagem PHP, por exemplo, Visual Studio (utilizando o framework ...
Dephi for PHP e RadPHP XE<br />
Visual Studio 2010<br />
Portabilidade<br />Disponível para a maioria dos sistemas operacionais, o PHP funciona da mesma maneira que a Maquina Virt...
Uma das linguagens mais utilizadas<br />Fonte: http://www.tiobe.com<br />
Alta Demanda por Profissionais<br />
Esquema de Funcionamento<br />
Primeiro Script<br />
Detalhamento do Script<br />No exemplo, é criada uma variável chamada $texto e atribuído o valor “Primeiro Script”, que po...
Utilizando Formulários em HTML<br />
Detalhamento do Script<br />empty retorna se a variável passada no parâmetro vale null ou “”. <br />null indica variável n...
If..else // while // for<br />if..else <br />while<br />for<br />
Inclusão de outros Scripts<br />
Uso de Vetor (array)<br />
Sessão<br />
Curiosidade - ZIP<br />No site do PHPClasses é possível encontrar classes com funcionalidades incríveis<br />
Curiosidade - ZIP<br />Index.php<br />compactar.php<br />
Curiosidade - Thumbnails<br />Thumbnails são as versões reduzidas das imagens<br />No próprio google é possível encontrar ...
Conectando BD<br />Em programação web deve-se pensar em:<br />Conectar ao banco de dados o mais tardar possível<br />Desco...
Programação Orientada a Objetos no PHP<br />Projetos profissionais exigem alto nível de reusabilidade<br />A melhor maneir...
Conceitos da Orientação a Objetos<br />A orientação a objetos (OO), também conhecida como Programação Orientada a Objetos ...
Conceitos da Orientação a Objetos<br /> Classe<br /> Objeto<br /> Atributos<br /> Métodos<br /> Sobrecarga<br /> Herança<b...
Classe<br />Uma classe define o objeto com comportamento, através de métodos, e quais estados ele é capaz de manter, atrav...
Objeto<br />Objeto é uma instância de uma classe. Um objeto é capaz de armazenar estados através de seus atributos e reagi...
Atributos<br />São dados ou informações do objeto, basicamente a estrutura de dados que vai representar a classe. Exemplos...
 Carro: nome, marca, ano, cor;
 Livro: autor, editora, ano.</li></li></ul><li>Métodos<br />Definem as habilidades dos objetos. <br />Bidu é uma instância...
Sobrecarga<br />É a utilização do mesmo nome para símbolos ou métodos com operações ou funcionalidades distintas. Geralmen...
Herança<br />É o mecanismo pelo qual uma classe (classe-filha) pode estender outra classe (classe-mãe), aproveitando seus ...
Encapsulamento<br />Consiste na separação de aspectos internos e externos de um objeto. <br />Exemplo: você não precisa co...
Abstração<br />É a habilidade de concentrar nos aspectos essenciais de um contexto qualquer, ignorando características men...
Polimorfismo<br />É o princípio pelo qual duas ou mais classes derivadas de uma mesma classe-mãe podem invocar métodos que...
Linguagens com suporte a OO<br />Smalltalk<br />Perl<br />Python<br />Ruby on Rails<br />ColdFusion<br />C++<br />Object P...
Exemplo<br />
Exemplo – Classe Aluno<br />
Exemplo – Classe Aluno – Métodos de Acesso a Dados<br />
Exemplo PHP OO<br />
Padrão MVC (Model-View-Controller)<br />Model<br />Camada de Controle - determina o fluxo da apresentação servindo como um...
Exemplo MVC<br />
PHP e extJS<br />Biblioteca JavaScript<br />Foi criado para ser uma extensão do Yahoo! User Interface (YUI)<br />Por ser J...
PHP e extJS<br />
PHP e jQuery<br />Tudo começou com esse post:<br />Onde o autor descrevia sua insatisfação com a grande quantidade de códi...
PHP e jQuery<br />
PHP e jQuery<br />
Considerações Finais<br />PHP é uma linguagem robusta e dinâmica<br />Altamente profissional<br />O bom desenvolvedor :<br...
Próximos SlideShares
Carregando em…5
×

Apresentação faef

681 visualizações

Publicada em

Mini Curso ministrado no XIV SIMPÓSIO DE CIÊNCIAS APLICADAS DA FAEF

Publicada em: Negócios, Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
681
No SlideShare
0
A partir de incorporações
0
Número de incorporações
5
Ações
Compartilhamentos
0
Downloads
7
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Apresentação faef

  1. 1. Desenvolvimento em PHP<br />Prof. Lucas Simões Maistro<br />lucassimoesmaistro@bol.com.br<br />http://www.twitter.com/lucas_simoes<br />http://blogdopiruca.wordpress.com/<br />
  2. 2. Apresentação<br />Prof. Lucas Simões Maistro<br />Especialista em Sistemas para Internet<br />Bacharel em Administração de Empresas com Habilitação em Análise de Sistemas<br />Engenheiro de Software da Critical Software do Brasil<br />11 anos de experiência em desenvolvimento de software<br />
  3. 3. Tendências do Mercado<br />Sistemas Web<br />Mobilidade<br />Saas<br />Computação em Nuvem (Cloud Computing)<br />
  4. 4. O que é PHP?<br />O PHP é, assim como Java e .NET, uma linguagem de programação e uma plataforma global.<br />Como linguagem de programação, PHP tem uma sintaxe bastante parecida com C, Shell, Perl e Java.<br />Com PHP é possível desenvolver:<br />Aplicações Web dinâmicas (websites, intranets, extranets, etc);<br />Aplicações desktop (PHP-GTK e PHP4Delphi);<br />Rich Clients (PHP-XUL);<br />Web Services (SOAP, XML-RPC, REST);<br />Scripts de linha de comando;<br />Tarefas de segundo plano.<br />
  5. 5. O que é PHP?<br />Cerca de 1000 engenheiros desenvolvem o PHP.<br />O PHP é Software Livre, distribuído sob uma licença na qual os usuários não são obrigados a publicar seu código.<br />A portabilidade é uma das maiores vantagens do PHP, possibilitando sua instalação em vários Sistemas Operacionais como: Windows, Linux, Unix, IBM iSeries, SGI IRIX, RISC OS, Netware Novell, Mac OS X e AmigaOS<br />Utilizado com:<br />Um servidor Web: Apache ou Microsoft IIS;<br />Um SGDB (banco de dados): MySQL, PostgreSQL, Oracle, SQL Server, etc.<br />A maioria das plataformas utilizam Linux, Apache e MySQL.<br />
  6. 6. Por que usar PHP?<br />
  7. 7. Simplicidade<br />O PHP é uma linguagem com um modelo de desenvolvimento muito simples. <br />O objetivo inicial do PHP era tornar possível um desenvolvimento rápido sem um treinamento preliminar. <br />Esse objetivo foi alcançado, fazendo com que a maioria das empresas de hospedagem ofereçam PHP nos seus servidores.<br />
  8. 8. Adaptabilidade<br />O PHP usa duas sintaxes: procedura e orientada a objetos. <br />Procedural:<br />utilizada por webmasters que trabalham na interface com o usuário.<br />Orientada a Objetos:<br />propositalmente similar ao Java e C#, com o objetivo de reduzir os custos com treinamento e encorajar a migração para o PHP.<br />
  9. 9. Interoperabilidade<br />Diversas ferramentas suportam a linguagem PHP, por exemplo, Visual Studio (utilizando o framework .Net) e Delphi;<br />Acesso a qualquer banco de dados relacional;<br />XML<br />Web Services<br />
  10. 10. Dephi for PHP e RadPHP XE<br />
  11. 11. Visual Studio 2010<br />
  12. 12. Portabilidade<br />Disponível para a maioria dos sistemas operacionais, o PHP funciona da mesma maneira que a Maquina Virtual do Java (JVM). <br />Após desenvolver a aplicação, ela irá funcionar imediatamente, sem a necessidade de recompilar, independente de qual sistema operacional está sendo utilizado.<br />
  13. 13. Uma das linguagens mais utilizadas<br />Fonte: http://www.tiobe.com<br />
  14. 14. Alta Demanda por Profissionais<br />
  15. 15. Esquema de Funcionamento<br />
  16. 16. Primeiro Script<br />
  17. 17. Detalhamento do Script<br />No exemplo, é criada uma variável chamada $texto e atribuído o valor “Primeiro Script”, que posteriormente será exibido pelo browser.<br />Toda variável em PHP é iniciada por $.<br />Não há necessidade de declarar o tipo de variável.<br />Quando a página é carregada, o script PHP é interpretado pelo Apache e substituído pelo resultado gerado puramente em Html.<br />Isso pode ser verificado a partir do browser no menu: <br />Exibir / Código fonte<br />
  18. 18. Utilizando Formulários em HTML<br />
  19. 19. Detalhamento do Script<br />empty retorna se a variável passada no parâmetro vale null ou “”. <br />null indica variável não declarada e “” indica que variável tem valor vazio.<br />$_REQUEST retorna o valor contido num campo do formulário. <br />É necessário que a propriedade NAME do INPUT do formulário HMTL tenha o mesmo nome do parâmetro usado em $_REQUEST. <br />$_REQUEST requisita valores enviados pelos métodos GET e POST.<br />Para especificar apenas um dos métodos, utilize $_GET e $_POST.<br />A instrução if é usada para garantir que nada seja apresentado quando a página for carregada pela primeira vez.<br />É possível atribuir o valor do INPUT direto para uma variável do PHP.<br />É preciso configurar register_globals = On no arquivo PHP.INI e reiniciar o servidor Apache.<br />
  20. 20. If..else // while // for<br />if..else <br />while<br />for<br />
  21. 21. Inclusão de outros Scripts<br />
  22. 22. Uso de Vetor (array)<br />
  23. 23. Sessão<br />
  24. 24. Curiosidade - ZIP<br />No site do PHPClasses é possível encontrar classes com funcionalidades incríveis<br />
  25. 25. Curiosidade - ZIP<br />Index.php<br />compactar.php<br />
  26. 26. Curiosidade - Thumbnails<br />Thumbnails são as versões reduzidas das imagens<br />No próprio google é possível encontrar diversas classes e rotinas em PHP que criam esse efeito<br />
  27. 27. Conectando BD<br />Em programação web deve-se pensar em:<br />Conectar ao banco de dados o mais tardar possível<br />Desconectar o quanto antes.<br />
  28. 28. Programação Orientada a Objetos no PHP<br />Projetos profissionais exigem alto nível de reusabilidade<br />A melhor maneira de alcançar esse objetivo é trabalhar orientado à objetos<br />O PHP não poderia ficar fora dessa<br />
  29. 29. Conceitos da Orientação a Objetos<br />A orientação a objetos (OO), também conhecida como Programação Orientada a Objetos (POO) ou ainda em inglês Object-Oriented Programming (OOP) é um paradigma de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos.<br />
  30. 30. Conceitos da Orientação a Objetos<br /> Classe<br /> Objeto<br /> Atributos<br /> Métodos<br /> Sobrecarga<br /> Herança<br /> Associação<br /> Encapsulamento<br /> Abstração<br /> Polimorfismo<br />
  31. 31. Classe<br />Uma classe define o objeto com comportamento, através de métodos, e quais estados ele é capaz de manter, através de atributos. <br />Exemplo de classe: Os seres humanos.<br />
  32. 32. Objeto<br />Objeto é uma instância de uma classe. Um objeto é capaz de armazenar estados através de seus atributos e reagir a mensagens enviadas a ele, assim como se relacionar e enviar mensagens a outros objetos.<br />Exemplo de objetos da classe Humanos: João, José, Maria.<br />
  33. 33. Atributos<br />São dados ou informações do objeto, basicamente a estrutura de dados que vai representar a classe. Exemplos: <br /><ul><li> Funcionário: nome, endereço, telefone, CPF;
  34. 34. Carro: nome, marca, ano, cor;
  35. 35. Livro: autor, editora, ano.</li></li></ul><li>Métodos<br />Definem as habilidades dos objetos. <br />Bidu é uma instância da classe Cachorro, portanto tem habilidade para latir, implementada através do método deUmLatido().<br />Um método em uma classe é apenas uma definição. <br />A ação só ocorre quando o método é invocado através do objeto, no caso Bidu.<br />
  36. 36. Sobrecarga<br />É a utilização do mesmo nome para símbolos ou métodos com operações ou funcionalidades distintas. Geralmente diferencia-se os métodos pela sua assinatura.<br />
  37. 37. Herança<br />É o mecanismo pelo qual uma classe (classe-filha) pode estender outra classe (classe-mãe), aproveitando seus comportamentos (métodos) e estados possíveis (atributos).<br />Mamífero é classe-mãe de Humano (classe-filha).<br />
  38. 38. Encapsulamento<br />Consiste na separação de aspectos internos e externos de um objeto. <br />Exemplo: você não precisa conhecer os detalhes dos circuitos de um telefone para utilizá-lo. A carcaça do telefone encapsula esses detalhes, provendo a você uma interface mais amigável<br />
  39. 39. Abstração<br />É a habilidade de concentrar nos aspectos essenciais de um contexto qualquer, ignorando características menos importantes ou acidentais. Em modelagem orientada a objetos, uma classe é uma abstração de entidades existentes no domínio do sistema de software. <br />
  40. 40. Polimorfismo<br />É o princípio pelo qual duas ou mais classes derivadas de uma mesma classe-mãe podem invocar métodos que têm a mesma assinatura.<br />A decisão sobre qual o método que deve ser selecionado, de acordo com o tipo da classe derivada, é tomada em tempo de execução.<br />
  41. 41. Linguagens com suporte a OO<br />Smalltalk<br />Perl<br />Python<br />Ruby on Rails<br />ColdFusion<br />C++<br />Object Pascal (Delphi)<br />Java<br />C#<br />VB.NET<br />
  42. 42. Exemplo<br />
  43. 43. Exemplo – Classe Aluno<br />
  44. 44. Exemplo – Classe Aluno – Métodos de Acesso a Dados<br />
  45. 45. Exemplo PHP OO<br />
  46. 46. Padrão MVC (Model-View-Controller)<br />Model<br />Camada de Controle - determina o fluxo da apresentação servindo como uma camada intermediária entre a camada de apresentação e a lógica.<br />Controla e mapeia as ações.<br />View<br />Camada de apresentação ou visualização - Não esta preocupada em como a informação foi obtida ou onde ela foi obtida apenas exibe a informação.<br />Inclui os elementos de exibição no cliente: HTML, XML, ASP, Applets.<br />É a camada de interface com o usuário.<br />É usada para receber a entrada de dados e apresentar o resultado.<br />Controller<br />Camada de lógica da Aplicação - É o coração da aplicação. Responsável por tudo que a aplicação vai fazer.<br />Modela os dados e o comportamento por atrás do processo de negócios.<br />Preocupa-se apenas com o armazenamento, manipulação e geração de dados.<br />É um encapsulamento de dados e de comportamento independente da apresentação.<br />
  47. 47. Exemplo MVC<br />
  48. 48. PHP e extJS<br />Biblioteca JavaScript<br />Foi criado para ser uma extensão do Yahoo! User Interface (YUI)<br />Por ser JavaScript pode ser interpretada por qualquer navegador<br />
  49. 49. PHP e extJS<br />
  50. 50. PHP e jQuery<br />Tudo começou com esse post:<br />Onde o autor descrevia sua insatisfação com a grande quantidade de código que se tinha que escrever para obter resultados simples através da linguagem JavaScript e apresentava ao mundo um modelo simplificado de se desenvolver web sites com interfaces ricas.<br />
  51. 51. PHP e jQuery<br />
  52. 52. PHP e jQuery<br />
  53. 53. Considerações Finais<br />PHP é uma linguagem robusta e dinâmica<br />Altamente profissional<br />O bom desenvolvedor :<br />Conhece várias linguagens<br />Nã0 se apega a tecnologia<br />Se apega a boas práticas e resultados<br />Está atento diariamente ao que está acontecendo<br />Recomendação de estudo:<br />Muita orientação a objetos<br />Padrões de Projeto<br />Extreme Program<br />Metodologias Ágeis<br />
  54. 54. Muito Obrigado!!!<br />

×