Conceitos fundamentais: Uma avaliação prática do framework CodeIgniter

   A avaliação prática do framework CodeIgniter é realizada tendo como base uma aplicação já
utilizada no mercado, onde a função é o cadastro de candidato em concursos públicos, a partir de um formulário, conforme os padrões do edital, esta aplicação sofre alterações de pequeno e grande porte para ficar conforme os parâmetros do concurso que será realizado, como não utiliza padrão de desenvolvimento vem a custar um grande tempo para essas customizações, além de gerar problemas de entendimento de métodos utilizados no próprio sistema.   A partir destes problemas gerados, o entendimento por parte dos desenvolvedores fica trabalhoso, pela falta de documentação e organização do código fonte, com isso o aproveitamento do código anterior fica reduzido, e consequentemente aumentando o período para finalizar as atualizações.

Introdução: Uma avaliação prática do framework CodeIgniter

 

  Nossa motivação em realizar o artigo com o tema foi da necessidade de avalizar uma possível agilidade junto ao desenvolvimento de algumas aplicações em linguagem PHP, que já estão em uma fase de produção, mas precisam melhorar sua estrutura, para um padrão de projeto novo, facilitando a manutenção e atualização de códigos-fontes e bibliotecas.

Arquitetura geral de aplicação web PHP


O aplicativo deve ser executado simultaneamente entre o cliente e o servidor web. Através do browser, é solicitado todo código HTML e JavaScript para ser processado, o navegador se comunica com o servidor, enviando e recebendo diversos valores. O código PHP é interpretado, realizando operações de inserções ou consultas no banco de dados. O esquema abaixo demonstra as relações entre as arquiteturas.

Segue abaixo um esquema com a arquitetura básica de uma aplicação web em PHP:



Biblioteca FPDF

A biblioteca FPDF, é uma classe da linguagem PHP, que permite gerar arquivos PDF. De acordo com Antunes Lamim (2010), o FPDF é uma biblioteca flexível, sendo possível modificar unidades de medida, formato da pagina, margens, cabeçalhos, cores, quebra de linhas entre outras opções que permitem a modificação do conteúdo gerado.

Compatível com a versão cinco e quatro da linguagem PHP, o FPDF não utiliza a biblioteca padrão da linguagem, PDFlib, que já vem embutida no servidor web, isso compromete um pouco na performance em gerar o documento. Mas o nível de personalização que o FPDF permite, e sua facilidade de documentação no site do criador e em toda comunidade livre, contribui por sua utilização em aplicativos que precisam gerar arquivos com informações provenientes de consultas a banco de dados ou preenchimento de formulários (PLATHEY, 2008).

PHP: Conexão com o banco de dados MySQL

Qualquer página PHP que utilize uma sintaxe de SQL para fazer qualquer operação com o MySQL, deve possuir as funções nativas da linguagem para criar a conexão com o banco de dados. O código descrito possui a função para conexão com o MySQL e outra para selecionar a base de dados. É incluído tratamento em caso de erro através do try e catch, que realiza a tentativa de conexão, e em caso de falha exibe a mensagem de erro.

Adobe Dreamweaver

Segundo Remoaldo (2008), o Adobe Dreamweaver é um software para desenvolvimentos de sites e aplicativos para web, possui um editor HTML e suporte para tecnologias PHP, Ajax, ASP, JSP entre outras.
Conta com uma interface que auxilia o desenvolvimento de código, reconhecendo padrões de comandos. No seu método de design é possível criar campos e botões de uma maneira simples e intuitiva. Com a opção preview, é possível executar o código digitado chamando o navegador padrão ou outro, para ler o arquivo salvo, este botão se torna acessível e prático para que se possa verificar a compatibilidade.

Banco de dados MySQL

MySQL é um sistema gerenciador de banco de dados (SGBD) relacional, existindo uma versão com licença comercial e outra de código aberto com licença General Public License (GPL). Foi desenvolvido por vários anos, pelos programadores Davi Axmark, Allan Larsson e Michael Widenius. MySQL foi publicado em 1996, posteriormente adquirido pela Sun Microsystems, e em abril de 2009 pela Oracle, hoje já possui 10 milhões de instalações pelo mundo, incluindo empresas do setor privado, entidades do governo e laboratórios de pesquisas espaciais (STROPARO, 2010).
Este banco de dados tem como principal característica sua velocidade. Um banco de dados permite armazenar e consultar os dados armazenados. O serviço MySQL controla o acesso a estes dados, permitindo que vários usuários, consigam incluir ou consultar grandes quantidades de informações ao mesmo tempo. O MySQL é multiusuário e multitarefa, utiliza linguagem padrão Structured Query Language (SQL).

Segurança em aplicação Web em PHP

A segurança lógica em uma aplicação web é indispensável, mesmo conectado em uma rede mundial, os dados devem estar íntegros garantindo sua confidencialidade, conforme descreve Figueiredo (1999 p. 1):

Com o rápido crescimento da web e com a diversificação de sua utilização, a segurança se tornou um ponto de importância crucial, principalmente para quem tem a web como um dos principais apêlos comerciais.

Sessões em PHP

O PHP Group (2010), mantedor oficial do projeto da linguagem PHP, define as sessões como uma maneira de preservar dados subseqüentes, permitindo a construção de aplicações personalizadas. Os dados criados são exclusivos para um único acesso, são considerados como parâmetros validos para conceder acessos e modificações especiais.

Cascading Style Sheets (CSS)

CSS é uma linguagem para construção de aparência em documentos escritos em linguagem de marcação. Foi desenvolvido pela W3C com o objetivo de padronizar a customização de conteúdo web. Remoaldo (2008) afirma que o estilo e características visuais de uma página devem ser completamente descritos na linguagem CSS. A linguagem deve ser incorporado ao HTML, diretamente ou através de um link para um arquivo “.css”.