Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Prof. MSc. Hugo Souza
Na última aula falamos um pouco da necessidade do surgimento das linguagens de programação, assim como da história recente de evolução das mesmas, como marco para o desenvolvimento de soluções; Abordou-se também os tipos de linguagens mais utilizadas, bem como suas principais especificações para eventuais cenários, ou infraestruturas de software. Vimos algumas datas, e as respectivas linguagens, com os anos de surgimento, além de um breve contexto evolutivo, das primeiras as atuais; Nessas próximas aulas veremos mais detalhadamente algumas informações importantes sobre a linguagem PHP, além de suas principais características;
O surgimento da linguagem PHP: Hypertext Preprocessor dentre os anos de 1993 e 1994 a partir de um projeto de pacotes de expansão de dados conhecido como Common Gateway Interface criados por Rasmus Lerdorf; O intuito na época foi inserir dinamicidade as atuais páginas web que expandiam-se na interação, em que as pessoas começavam a interagir entre elas; Tecnicamente, um segundo objetivo foi substituir os scripts da antiga linguagem Perl por novos dicionários de dados reaproveitáveis;
Em 1995 O PHP sucede de um produto mais antigo, para a nomenclatura denominada PHP/FI. Esse pacote de APIS ficou conhecido na época como PHP Puro, ou PHP versão 2, sem que fossem homologadas; Mais a seguir, dentro os anos de 1996 e 1998,, Zeev Suraski, então pesquisador da tecnologia desenvolveu o terceiro analisador léxico [compilação] da liguagem, modificando-a d e um caráter totalmente estruturado para a leitura e orientação de códigos comuns [objetos]; Essa versão ficou conhecida como PHP 3, sendo em customizada para a falha PHP 4, que seguindo-se dos conceitos de outras linguagens abstraiu configurações tradicionais das estruturadas acarretando-se um fiasco;
O então PHP 4, recompilado e reestruturado por Zeev e Andi Gutmans, sintetizando a nova 'Zend Engine' (conhecidos pelos seus primeiros nomes, Zeev e Andi), culminou com sucesso a correção de vários problemas da antiga versão 3 em meados de 1999; O PHP ficou acompanhado com uma série de novas características com um altíssimo melhoramento da performance desta versão, que inclua, dentre outras características outras características com um suporte mias efetivo para servidores WEb, sessões HTTP, buffer de de entrada ou saída de dados, etc., Entretanto, o problema de handlers que já vinha da versão 3 não havia sido corrigido, deixando a desejar;
Desta forma, depois de várias discussões da comunidade de programadores, em julho de 2004 foi lançado o PHP 5, com a recompilação das APIS do framework; A mudança principal foi a versão da chamada Zend Engine 2.0 com um novo modelo de orientação a objetos e várias outras características, como inclusão do tratamentos de dados e estruturas de dados voltadas para a construção dos chamados webservices; Outro foco foi a inserção de padrões de organização de código, visto que o HTML evoluía a largos passos, vigorando-se esta versão até hoje para as ferramentas como SGBDS, IDES, servidores, etc.;
Dentre outras características fundamentais desta linguagem estão: Linguagem estruturada em módulos; Orientada a objetos por tipificação de dados; Proteção/Subversão de dados com polimorfismo; Fornece visibilidade e encapsulamento de dados; Portabilidade efetiva; Expansível à tecnologias abertas e fechadas; Velocidade x Custo; Fácil acessibilidade e entendimento;
As principais ferramentas de uso PHP atuais divergem um pouco quanto à aceitabilidade das pessoas e empresas. Tanto para ferramentas pagas, quanto para ferramentas livres podemos desenvolver robustos e confiáveis sistemas para internet; Para uma breve explanação das ferramentas de cunho pago, as principais, remetentes ao desenvolvimento corporativo são: Zend Framework: É o conjunto de APIS que rege a implementação e expansão da linguagem PHP 5. É característico por ser uma documentação aberta que prescreve todos os dados relativos a linguagem, semelhantes a um javadoc ;
As ferramentas chamadas de pagas ou fechadas, descritas com principais para o desenvolvimento são: Zend Studio Framework: É a IDE de desenvolvimento com licença concedida aos usuários que pagam para utilizarem uma espécie de extensão do eclipse para o desenvolvimento PHP; É baseado no projeto PDT, pela qual a mesma estipula um conjunto de ferramentas agregadas tais como CVS, SVN, e várias aplicações SGBD que formam o conjunto do chamado PHPDocumentor;
Painel - Zend Studio Framwork
Para o conjunto de ferramentas livres que usaremos na disciplina, abordamos a instalação de praticamente três delas: WAMPP: é um pacote de programas que instala automaticamente o Apache, PHP5, MySQL Database, PHPmyadmin e SQLitemanager, Filezila, Tomcat, etc. responsável por compactar a ligação serviço web ao código definido pelos programadores; É característico por possuir um console pela qual os serviços são iniciados, ou pausados, descartando a configuração manual de pastas, ou arquivos de conexão dentre as ferramentas de desenvolvimento ou armazenamento de dados através do S.O.;
Console do WAMMP Serviços independentes;
Eclipse PDT for PHP: É uma extensão da suíte Eclipse com plugins para reconhecimento da leitura léxica da linguagem PHP com as mesmas funções das versões antecessoras. É de cunho livre, e disponível para download no site da corporação; Netbeans for PHP: Similar ao Netbeans tradicional, esta versão também compatibiliza o desenvolvimento dos formulários, campos e toda a configuração de serviços similar o eclipse. A diferença principal dentre ambas é caracterizada por muitas pessoas como a usabilidade e acesso ao código, itens gráficos, etc. Ambas são de acesso e distribuição gratuitas;
Tela Splash das IDEs;
MySQL: É a suíte de aplicativos conhecida por fornecer um serviço de multiprocessamento e multiusuários em SQL (Structured Query Language) através de uma base de sistematização e gerenciamento de banco de dados (SGBD); Conhecido por ser poderoso e confiável, esta ferramenta integra um pacote de aplicações características por formarem toda a arquitetura de comunicação cliente-servidor para aplicações robustas; Possui versões de cunho gratuito e pago, para fins acadêmicos e corporativos, dependendo do conjunto de serviços que estejam ativados para seu uso;
Tela Splash do Workbench;
Há também outras ferramentas livres, tais como PHP Editor, KOMODO, PHPDesign, PHPEdit, dentre várias outras que possibilitam assim como as citadas a concepção de sistemas com a mesma qualidade e produtividade; Além disso, as aplicações de banco [SGBD] podem variar, mediante as necessidades das empresas em empreitarem melhorias ou quaisquer adaptabilidade as infraestruturas almejadas; De fato, tudo depende da combinação apenas do framework da linguagem compactado a uma IDE compatível ao desenvolvimento sustentável; Como iremos ver nas próximas aulas...
Alguém tem: Dúvidas? Perguntas? Sugestões? Material disponível já no site http://hugovlsouza.com