Quick Form DataBase (QFDB)
-
Upload
everaldo-wanderlei-uavniczak -
Category
Technology
-
view
735 -
download
4
description
Transcript of Quick Form DataBase (QFDB)
Quick Form DataBaseQuick Form DataBase(QFDB)(QFDB)
Everaldo [email protected]
CronogramaCronograma
- O que é?- Características do Desenvolvimento Web- Requisitos de uma Aplicação Web- Etapas do Desenvolvimento Web- O framework- Desenvolvendo com o framework- Status do framework- Objetos QFDB- Regras QFDB- Exemplo de Uso- Implementações Futuras
O que é? É de comer???O que é? É de comer???
- Framework desenvolvido em PHP 5 (5.2)- Implementado em OO- Orientado a Plugins
- Permite desenvolver Aplicações Web através de “montagem” usando “peças” do framework
- Licenciado pela Licensa BSD
Características do Desenvolvimento WebCaracterísticas do Desenvolvimento Web
- Implementados em requisitos vagos- Exigem alterações constantes- Requerem (re-)implementações em fase de produção
Em geral:- Possuem inúmeras semelhanças estruturais e praticamente os mesmos requisitos
Requisitos de uma Aplicação WebRequisitos de uma Aplicação Web
- Exibição de conteúdo atualizado
- Interação com usuários (feedback e/ou conteúdo)
- Painel administrativo
- Exibição de relatórios
Etapas do Desenvolvimento WebEtapas do Desenvolvimento Web
- Modelagem (UML)- Layout (Imagens)- Layout (HTML)- Layout (CSS)- Regras de Negócio server-side (PHP, Python, etc)- Validação dos Dados client-side (JavaScript)- Validação dos Dados server-side (PHP, Python, etc)- Rotinas de Banco de Dados (MySQL, PG, etc)- Segurança
O FrameworkO Framework- Idéia Inicial: Agosto de 2006- Motivação: Reutilizar códigos entre os projetos e automatizar seus processos visando ganhar tempo- Objetivos: * Tornar as aplicações multi-database (abstração DB)
* Geração automática de código HTML e JS
* Automatizar a validação de dados
* Automatizar implementações de segurança
* Permitir adição de plugins carregados dinamicamente
* Reduzir o número de arquivos da aplicação
* Uma única linha alterada para cada implementação
/quickformdb.php/quickformdb_init.php/qfdb_db_interface.php/qfdb_db_mysql.php/qfdb_themes_default.php/objects//objects/qfdbobj_text.php/rules//rules/text/qfdbr_text_max.php/lang//lang//lang/pt-br/
Desenvolvendo com QFDBDesenvolvendo com QFDB
- Modelagem UML
- Layout (Imagens)
- Definições QFDB
- Layuot (HTML)
- Layout (CSS)
- Regras de Negócio server-side (PHP, Python, etc)
- Validação dos Dados client-side (JavaScript)
- Validação dos Dados server-side (PHP, Python,etc)
- Rotinas de Banco de Dados (MySQL, PG, etc)
- Segurança
Status do QFDBStatus do QFDB
1: Constroi formulário para inserção de dados2: Inserir dados no banco de dados3: Formulário para edição de dados4: Atualizar dados no banco de dados
5: Geração de relatório
6-9: Status Livre
Objetos QFDBObjetos QFDB
Plugins que desempenham as ações do framework
/objects/qfdbobj_*.php
$header[] = 'headdoctype ||| 12345 =>';
$header[] = 'headhtml ||| 12345 => html_lang=pt-br ||| html_xmllang=pt-br';
$header[] = 'headcss ||| 12345 => href=main.css &&& qfdb.css';
$header[] = 'headicon ||| 12345 => href=image/favicon.ico';
$header[] = 'body ||| 12345 => ';
$header[] = 'literal ||| 12345 => content= <div style="text-align: center;">';
$header[] = 'table ||| 12345 => border=0 ||| cellpadding=2 ||| cellspacing=2 ||| class=qfdb_table ||| style=margin: auto; width: 900px;';
Regras QFDBRegras QFDB
Validam os dados inseridos pelos usuários a partir dos Objetos QFDB que definem os
campos de formulário
/rules/text/qfdbr_text_range.php$body[] = 'text .... validate=range:::3:::10:::Digite entre 3 e 10 caracteres ';
/rules/text/qfdbr_text_br-cpf.php$body[] = 'text .... validate=br-cpf:::Digite um CPF válido';
As Regras QFDB estão em fase de implementação na versão 0.5
Exemplo de UsoExemplo de Uso
index.phpqfdb_init.phppre.phppos.php/qfdb_0.5//themes//themes/base.css/themes/qfdb.css/themes/img/
Implementações FuturasImplementações Futuras
- Regras QFDB (em andamento)
- Restrições por status
- Nicetitle
- Integração com Ajax usando xajax
- QFDB Wizard: Assistente gráfico
- QFDB Debug - rastreador de erros