sábado, 2 de junho de 2012

Moodle é um Framework de Ensino Online

    A Plataforma Moodle não é apenas um sistema de gestão de ensino online. É também  um framework de desenvolvimento PHP.
    O ambiente de desenvolvimento do Moodle  disponibiliza ao  programador PHP um conjunto de diretrizes a serem seguidos e bibliotecas prontas para serem reaproveitadas de forma similar a outros frameworks PHP como Zend Framework e cakePHP.
   
Diretrizes de  desenvolvimento do Moodle
    Os diretrizes de  desenvolvimento são um conjunto de regras que o programador PHP deve seguir para criar módulos/plugins seguindo o padrão do framework Moodle. Segue um breve resumo das principais diretrizes de desenvolvimento:
  • Estrutura de arquivos – Define a estrutura de organização de pastas e arquivos padrões que os plugins devem ter para que possam ser reconhecidos automaticamente pelo core do sistema Moodle.
  • Tabelas da base de dados – Define as especificações para gerar tabelas do banco de dados de forma automática durante a instalação de um plugin.
  • Sistema de permissão - Define como os plugins devem tratar as permissões para serem gerenciadas pelo core do Moodle.
  • Internacionalização de idiomas – Define como os plugins devem  tratar as mensagens e textos, que são  exibidos  na interface do usuário, para que estes  tenham suporte multilíngues e possam ser gerenciados pelo core do Moodle.
  • Padronização de nomes – Define as regras sobre o nome do plugin. O nome do plugin funciona como uma chave de identidade para o core do sistema Moodle. A estrutura de alguns arquivos do plugin deve seguir o padrão de nomes para garantir a acoplagem ao core do Moodle.

Biblioteca de código do Moodle
    Ao implementar o código no ambiente Moodle, o programador pode reduzir o tempo de trabalho ao reaproveitar as  várias bibliotecas disponibilizadas  na Plataforma Moodle. A  seguir será apresentada alguns APIs acompanhado de uma breve descrição e link que aponta para a documentação oficial do Moodle.
  •   API do banco de dados - É um conjunto de funções para manipular o acesso ao banco de dados configurado no ambiente Moodle. Para mais detalhes, acesse o link: http://docs.moodle.org/dev/Data_manipulation_API
  •  API do formulário – O formlib do Moodle possibilita efetuar o gerenciamento de formulários: define tipo de entrada de dado, campos obrigatórios, captura e crítica os dados inseridos. Para mais detalhes, acesse o link: http://docs.moodle.org/dev/Form_API
  •  API de Acesso- Esse API  oferece um conjunto de funções que controla permissão de acesso do usuário no ambiente Moodle. Para mais detalhes, acesse o link: http://docs.moodle.org/dev/Access_API
  •  API de Autenticação - Esse API  tem  um conjunto de funções que efetue cadastro e autenticação do usuário. Para mais detalhes, acesse o link: http://docs.moodle.org/dev/Authentication_API
  •  API do String – Define as regras como estruturar arquivos nos plugins para gerenciar string, ou seja, mensagens e texto exibidos na interface do usuário com suporte multilíngues. Para mais detalhes, acesse o link:  http://docs.moodle.org/dev/String_API
  •  Theme – Define a estrutura de arquivos que o plugin do theme (interface gráfica) deve contemplar. Por outro lado, especifica as funções do core do Moodle para gerenciar theme. Para mais detalhes, acesse o link:  http://docs.moodle.org/19/en/Theme_basics
    Moodle não é meramente um website. É um ambiente de desenvolvimento com uma arquitetura voltado para o ensino online. É um framework de desenvolvimento modular que oferece ao usuário a possibilidade de adicionar novas funcionalidades.  A distribuição padrão do Moodle traz o core do sistema e alguns módulos já acoplados. Há inúmeros outros módulos disponíveis na internet que podem ser baixados e instalados no Moodle.

    Do ponto de vista técnico, o Moodle é um ambiente aberto. Pode ser ajustado para atender qualquer demanda pedagógica criando novos módulos/plugins. Para isso, basta seguir as diretrizes de desenvolvimento. Ainda o trabalho pode ser facilitado ao usar os APIs do  Moodle.