Bruno Lustosa Pereira
[email protected]
PEAR Calendar
Uma API para a construção
de calendários
PHP Conference Brasil
2006-12-02 - São Paulo
PEAR Calendar
O repositório PEAR
●
●
●
●
O PEAR é um repositório de componentes reutilizáveis
feitos em PHP.
O repositório possui componentes para os mais diversos
fins. Ex: Autenticação, email, BD, imagens, etc.
Componentes devem seguir rigorosos padrões de
codificação, garantindo a qualidade do código.
Existe um sistema de bug tracking no site do PEAR,
facilitando o processo de correção de erros.
PEAR Calendar
Instalação do componente
●
●
●
O componente pode ser baixado diretamente do
repositório, em http://pear.php.net/
Instalação simples, só é preciso ter a base do PEAR
instalada.
A documentação do componente é boa, e o pacote já
vem com diversos exemplos.
PEAR Calendar
O que é o componente
●
●
●
●
●
Construção de calendários como estruturas de dados.
Componente provê somente a estrutura, sem se
preocupar com a saída dos dados.
Alta granularidade: possível criar objetos para
representar períodos desde um segundo até um ano.
Navegação pelo calendário bem simples usando um
iterador.
Decorador facilita a inclusão de novas funcionalidades.
PEAR Calendar
Principais vantagens
●
●
●
●
PEAR: Código de boa qualidade, e bem testado.
Desenvolvedor não se preocupa com a construção do
calendário, e sim com o objetivo final do sistema.
Atualizações e correções feitas pelos mantenedores do
componente.
A geração é facilmente encapsulada em uma classe,
podendo-se usar um sistema de templates (como o
Smarty) para a saída em HTML.
PEAR Calendar
Decoradores
●
●
●
Mecanismo para adicionar funcionalidade ao calendário
sem precisar estender a classe.
Pacote já provê alguns decoradores úteis. Ex: geração
de URLs para "anterior" e "próximo", transformação do
número do dia ou mês em nome.
Criação de novos decoradores é simples.
PEAR Calendar
Exemplos de calendários
●
Alguns dos exemplos a seguir foram retirados
diretamente da documentação, e outros de
aplicações desenvolvidas por mim.
PEAR Calendar
Calendário anual
●
●
Interface para permitir
que o hotel marque as
datas onde a agência não
pode fazer reservas.
Código para o calendário
muito simples, com a
saída via Smarty.
PEAR Calendar
Calendário mensal
PEAR Calendar
Agenda diária
●
●
Exemplo do próprio
pacote.
Mostra a agenda do dia.
PEAR Calendar
Mais informações
●
●
http://www.lustosa.net/ - Site pessoal, com os slides e
alguns calendários de exemplo.
http://pear.php.net/package/Calendar - Site do
componente no repositório PEAR.
Download

PEAR Calendar: uma API para a construção de