A Plataforma Moodle nao e apenas um sistema de gestao de ensino online. E tambem 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 sao um conjunto de regras que o programador PHP deve seguir para criar modulos/plugins seguindo o padrao do framework Moodle. Segue um breve resumo das principais diretrizes de desenvolvimento:Estrutura de arquivos Define a estrutura de organizacao de pastas e arquivos padroes que os plugins devem ter para que possam ser reconhecidos automaticamente pelo core do sistema Moodle. Tabelas da base de dados Define as especificacoes para gerar tabelas do banco de dados de forma automatica durante a instalacao de um plugin. Sistema de permissao - Define como os plugins devem tratar as permissoes para serem gerenciadas pelo core do Moodle. Internacionalizacao de idiomas Define como os plugins devem tratar as mensagens e textos, que sao exibidos na interface do usuario, para que estes tenham suporte multilingues e possam ser gerenciados pelo core do Moodle.Padronizacao 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 padrao de nomes para garantir a acoplagem ao core do Moodle. Biblioteca de codigo do Moodle Ao implementar o codigo no ambiente Moodle, o programador pode reduzir o tempo de trabalho ao reaproveitar as varias bibliotecas disponibilizadas na Plataforma Moodle. A seguir sera apresentada alguns APIs acompanhado de uma breve descricao e link que aponta para a documentacao oficial do Moodle. API do banco de dados - E um conjunto de funcoes 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 formulario O formlib do Moodle possibilita efetuar o gerenciamento de formularios: define tipo de entrada de dado, campos obrigatorios, captura e critica 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 funcoes que controla permissao de acesso do usuario no ambiente Moodle. Para mais detalhes, acesse o link: http://docs.moodle.org/dev/Access_API API de Autenticacao - Esse API tem um conjunto de funcoes que efetue cadastro e autenticacao do usuario. 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 usuario com suporte multilingues. 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 grafica) deve contemplar. Por outro lado, especifica as funcoes do core do Moodle para gerenciar theme. Para mais detalhes, acesse o link: http://docs.moodle.org/19/en/Theme_basics Moodle nao e meramente um website. E um ambiente de desenvolvimento com uma arquitetura voltado para o ensino online. E um framework de desenvolvimento modular que oferece ao usuario a possibilidade de