Tecnologias Aplicadas na Implementação

Como se vê na arquitectura geral do Pico, o sistema é baseado numa filosofia "data-centered" em que o cerne é uma Base de Dados onde reside toda a informação de configuração de cada uma das Actividades disponíveis (para além dos dados do utilizador) .

De modo a preservar o baixo custo da solução e o recurso às mais modernas tecnologias de interacção decidiu-se desenvolver o Pico como uma aplicação Web em que o sistema é formado por páginas HTML dinâmicas e com animação e a sua apresentação é realizada pelos browsers www convencionais.

Assim o Pico foi desenvolvido em Flash, com PHP e MySQL.

Para tal é necessário instalar em cada máquina um servidor http (Apache, ISS, OmniHTTP Server, etc.), um gestor de bases de dados (MySQL) e um processador de PHP para permitir a geração e utilização de páginas dinâmicas.

As aplicações acima descritas, existem para os mais variados sistemas operativos (nomeadamente MS Windows e Linux) e, como correspondem cada uma a pacotes de software diferentes e independentes, requerem igualmente processos de instalação e configuração devidamente organizados (primeiro o servidor web, depois o PHP e por fim o servidor de bases de dados). Como nas várias máquinas cada caso é um caso, este processo de instalação e configuração dos vários pacotes de software podia ser um pouco demorado e em algumas situações complicado se surgissem alguns problemas a nível de má instalação e/ou conflito. Para evitar essas situações e ser o mais práticos possíveis, procuramos na Internet e encontramos um pacote de software para MS Windows que incluía tudo o que a nossa aplicação necessitava para poder correr off-line e independente de uma ligação à Internet. A descrição desse pacote, bem como de cada um dos seus componentes, é feita a seguir.

Pacote de Software EasyPHP

O easyPHP é um pacote de software para máquinas que possuam um sistema operativo MS Windows que permite de uma forma fácil, prática e rápida instalar um conjunto de aplicações que permitem transformar essa máquina num servidor http local ou para a Internet (servidor Apache) com um motor de bases de dados MySQL e capacidade de executar scripts em PHP. Pode-se, caso seja necessário ou desejável, optar por instalar mais uma aplicação, chamada PhpMyAdmin, para que se torne muito fácil a configuração e gestão das bases de dados que se queira criar.

O easyPHP mostrou-se bastante útil e compatível com as aplicações deste projecto até então já desenvolvidas e, para além deste facto, comportou-se bastante bem nas várias máquinas onde foi instalado com o intuito de testar a sua compatibilidade (máquinas com MS Windows 95, 98, ME, 2000 e XP).

Este pacote reune vários componentes. De seguida fazemos uma ligeira descrição do funcionamento de cada um desses componentes.


Servidor Apache

O Apache é um dos mais conhecidos e populares servidores Web e permite que sejam instaladas novas funcionalidades através de add-ins tais como CGI, SSL e PHP. Para além destas vantagens, o Apache é um dos vários pacotes de software grátis disponibilizados pela Apache Software Foundation.

Como servidor web, o Apache permite que a máquina onde está instalado guarde documentos e informação para posteriormente serem disponibilizados em outras máquinas que façam os respectivos pedidos de acesso através do protocolo http.


PHP

O PHP (PHP: Hypertext Preprocessor) é uma linguagem de scripting "embebida" dentro do HTML (Hyper Text Markup Language) Open Source muito utilizada e com capacidades únicas para o desenvolvimento de aplicações web. Grande parte da sua sintaxe foi retirada das linguagens C, Java e Perl, às quais foi acrescentado um conjunto de novas funcionalidades exclusivas do PHP. O principal objectivo desta linguagem é permitir aos programadores de sites web escrever de uma forma rápida e prática páginas criadas dinamicamente através do acesso a informação contida em bases de dados.

Uma das maiores vantagens que o PHP possui é o facto de nos fornecer um vasto leque de recursos para fazer acesso a mais de vinte servidores de bases de dados (entre estes o MySQL) e trabalhar com a informação daí retirada.

Ao contrário do Java Script, que corre na máquina do utilizador, o PHP corre no servidor, ou seja, a máquina do utilizador não executa qualquer processamento, apenas recebe e mostra o resultado do script processado pelo servidor, o qual acaba por devolver, ao cliente que faz o pedido da consulta a uma página, um documento HTML que resultou de substituir os comandos PHP pelo seu resultado.


MySQL

O servidor MySQL é um sistema de gestão de bases de dados onde é armazenado todo um conjunto de informação estruturada. Pode conter qualquer tipo de informação, desde uma lista de produtos de um site comercial até grandes blocos de informação de um grande grupo empresarial. Para adicionar, aceder ou processar a informação armazenada num computador é necessário um sistema de controlo e gestão que funcione independentemente ou como parte de outras aplicações (por exemplo aplicações em PHP).

O MySQL é um servidor de bases de dados SQL (Structured Query Language) muito rápido, multi-processos, multi-utilizador e robusto. É um sistema de bases de dados relacionais onde a informação é armazenada em várias tabelas separadas em vez de estar toda numa partição grande e única, o que lhe confere mais rapidez de acesso e flexibilidade. As tabelas estão interligadas por relações bem definidas, sendo possível, desta forma, combinar informação de várias tabelas em cada pedido.

Aliado a estas últimas vantagens, o MySQL é totalmente grátis e open source.

PhpMyAdmin

O PhpMyAdmin é uma ferramenta de administração do MySql e que, tal como o próprio nome indica, foi totalmente desenvolvido em PHP para que possa funcionar independentemente da plataforma em que se encontre o servidor web. Através do PhpMyAdmin, podemos:

Para além destas funcionalidades, permite igualmente exportar toda a informação de uma base de dados para vários formatos (SQL, XML, etc) para, por exemplo, realizar uma cópia de segurança de toda a informação existente na base de dados.

Flash

O Flash é um programa gráfico vectorial utilizado para se criar animações interactivas desenvolvido pela Macromedia. Os arquivos executáveis gerados pelo Flash, chamados "SWF" (Small Web File), podem ser visualizados numa página web usando um navegador web, ou utilizando o Flash Player. O programa Macromedia Flash é um software vocacionado para a animação vectorial para a Web. Permite animações que ultrapassam o simples GIF animado, atingindo graus elevados de interactividade e associando texto, áudio, vídeo, imagem, etc.

Através de código (ActionScript) permite um nível avançado de controlo da informação e de integração com outras aplicações e linguagens de programação, nomeadamente, ASP, consultas de bases de dados, etc.

O Macromedia Flash apresenta as seguintes vantagens: