Artigo Clube Delphi 113 - RIA com PHP
Neste artigo veremos um exemplo de aplicativos RIA (Rich Internet Application) utilizando o framework ExtJS com PHP. Iremos desenvolver uma aplicação com GridPanel do ExtJS exibindo dados de um Banco de Dados relacional com recursos de paginação, filtro, ordenação e o recurso de ocultar/exibir colunas dinamicamente.
Artigos Delphi Artigo Clube Delphi 113 - RIA com PHP
Neste artigo veremos um exemplo de aplicativos RIA (Rich Internet Application) utilizandoo framework ExtJS com PHP. Iremos desenvolver uma aplicação com GridPanel do ExtJS exibindo dados de um Banco de Dados relacional com recursos de paginação, filtro, ordenação e o recurso de ocultar/exibir colunas dinamicamente.
O framework ExtJS é capaz de facilitar em muito o desenvolvimento de páginas e/ou sistemas baseados na web com interfaces elegantes, dinâmicas, muito funcionais e ainda permite o intercâmbio de dados de maneira eficiente, fácil e ágil, por meio de tecnologias de comunicação como JSON e XML para diversas linguagens, entre elas: PHP, ASP e Java.
No desenvolvimento de aplicações ricas voltadas para a Web, tornando a navegação mais prazerosa ao usuário, carregando as informações de forma mais rápida e deixando que os próprios usuários possam manipular essas informações da maneira que lhe for mais agradável.
A Web 2.0 prega que o usuário é um colaborador do conteúdo do site. Com ela os usuários se tornam mais exigentes buscando sites onde a navegação seja mais dinâmica e semelhante à operacionalização no modelo desktop. Para isso, são usados os recursos do JavaScript, porém para se construir recursos de alto nível com essa tecnologia, não é necessário um conhecimento muito aprofundado da linguagem. Dessa forma algumas bibliotecas são desenvolvidas por grandes empresas e disponibilizadas na web. O ExtJS é uma delas e nesse artigo iremos criar um exemplo utilizando o GridPanel com recursos de paginação e filtragem.
Autores: Lucas Simões Maistro e Raphael Zanon Rodrigues
Para se definir um rich client, deve ser levado em consideração o modelo de interação que esse cliente oferece ao usuário, ou seja, um modelo rico de interação que oferece suporte a uma grande variedade de métodos respondendo de forma intuitiva e dentro de um prazo razoável para o usuário. Existe uma regra prática para definir se uma aplicação é considerada rica. Ela deve ter uma interação com o usuário tão boa quanto a mais atualizada geração de aplicativos desktop.
Rich Internet Aplications (RIA) é um termo que foi usado pela primeira vez em 2001 pela empresa Macromedia (atual Adobe) e se tornou um dos componentes da Web 2.0 (termo criado em 2004 para definir uma segunda geração de comunidades e serviços, tendo como conceito a web como plataforma) e que permite o desenvolvimento de softwares para o ambiente web com as funcionalidades dos softwares desenvolvidos para Desktop, ou seja, permite o desenvolvimento de aplicações mais ágeis que o comum, por realizar comunicação assíncrona com o servidor.
O ExtJS foi criado para ser uma extensão do Yahoo! User Interface (YUI) com o nome de yui-ext, criada por Jack Slocum, possui o código livre e é disponibilizado sob a licença LGPL, também pode ser comprado sob uma licença não-livre e ter acesso a algumas áreas com versões em desenvolvimento e correções ainda não liberadas, tendo o suporte via fórum, e-mail, telefone e no site. Essa biblioteca engloba conceitos de respostas em XML e JSON, utilizadas para construção de aplicações web interativas com AJAX, DHTML e DOM. Com o aumento do reconhecimento entre os desenvolvedores por ser uma extensão bastante rica em componentes de interface e funcionalidades, e com características como alto desempenho com widgets personalizáveis, modelo de componentes extensível e uma API bastante intuitiva, o desenvolvimento dessa biblioteca ganhou ainda mais colaboradores, passando rapidamente por várias versões até chegar a versão final 1.0, com o nome alterado para ExtJS e deixando de ser apenas uma extensão para o YUI. Na próxima versão, a 1.1, o ExtJS deixou de ser uma extensão para YUI e tornou-se um verdadeiro Framework de JavaScript. A partir da versão 1.1.1, browsers como Microsoft Internet Explorer 6+, Mozilla Firefox 1.5+, Apple Safari 2+ e Opera 9+ passaram oficialmente a dar suporte a esse Framework.
Como é possível perceber, pelo fato do ExtJS ser uma biblioteca JavaScript totalmente cross-browser, ele facilita bastante o desenvolvimento de aplicações ricas na web, oferecendo ao desenvolvedor ferramentas bastante completas para a criação de interfaces funcionais, eficientes e elegantes, suportando integração com os frameworks Yahoo! User Interface, Prototype e jQuery, também trabalha integrado com o Adobe AIR e com Google Web Toolkit (GWT), retirando assim, a preocupação do desenvolvedor com a elaboração visual, que é tão importante quanto qualquer outra camada da aplicação.
Além dessas características, o ExtJS possui uma documentação bastante farta, seja com a própria documentação (em inglês), de fácil entendimento e bastante dinâmica, apresentando vários exemplos de funcionalidades ou com uma comunidade bastante ativa de pessoas que o utilizam no Brasil e Estados Unidos.