Documentação Função Atribuir
Função atribuir sob o ponto de vista de quem usa e de quem constroi
1
. O que a função faz (owner)
Deve ser capaz de atribuir um valor a elementos de um conjunto na visualização de uma pagina qualquer do apoie.org.
Parametros:
informações que são passadas para a função e retornadas pela função
Entrada:
informações que são passadas para a função
Valor: o que será atribuido ao elemento de um conjunto Ex.: 5, 'Maria', false, true .... etc
Conjunto: nome do conjunto Ex.: 'Expandir', 'Doc' .... etc
Elementos: id de elementos do conjunto Ex.: 'indice', ' Lead IndTopico ' .... etc
Saída:
não retorna nenhum valor
em qual caso ?????
executa "conjunto.id = valor;" para cada elemento
Exemplo:
Não mostrar na pagina apoie.org o indice do dominio da pagina3
valor= falso elementos=indice conjunto=expandir
Teste de aceitação
:
http://apoie.org#atribuir(false, 'Expandir', ' indice ')
2
. Relacionamentos com outras funções
3
. Tipos de usuario externo
Quem usa
(como)
teste de usabilidade
teste de documentação
Quem constroe
(como)
código da função
relacionamento com outras funções - ambiente em que será inserida a função
efeito colateral - como contornar a mudança de estado no programa
teste unitário da função
teste integrado da função
Quem é o dono
(porque, quando e onde)
necessidade - origem da solução
4
. Function atribuir em ação
<html>
<head>
<script><head>
<meta content="text/html; charset=UTF-8" http-equiv="content-type">
<title></title>
<script type="text/javascript">
function str2array
(str) // converter lista em string para array
{if (typeof str == 'string') {
var re = /\s*(\w+)\s+(\w+)/;
while (re.test(str)) str = str.replace(re, "$1,$2");
str = str.replace(/\s*/g, "");
if (str === '') return;
str = str.split(",");}
return str;}
f
unction atribuir
(valor, conjunto, elementos) // atribui um valor a elementos de um conjunto
{
var array = str2array(elementos); // converte para array se for string
alert("..2.elementos");
for (var id in array) // para cada elemento do conjunto
eval(conjunto +"['" + array[id] + "'] = " + valor);
}// conjunto.id = valor;
</script>
</head>
<body>
<script type="text/javascript">
//escrever no browse o resultado da função atribuir para valor=false; conjunto='Chave'; elementos=' indice geral ';
var valor=false;
var conjunto='Chave';
var elementos=' indice geral ';
var id=1;
alert("..1 ");alert(id);alert("..valor= ");alert(valor);alert("..conjunto ");alert(conjunto);alert("..elementos= ");alert(elementos);
var resultado=
atribuir
(valor, conjunto, elementos);
alert("..3.resultado");
alert("..4 ");alert(id);alert("..valor= ");alert(valor);alert("..conjunto ");alert(conjunto);alert("..elementos= ");alert(elementos);
</script>
</body>
5
. Teste unitario do codigo
Copiar o codigo abaixo para o endereço
http://www.w3schools.com/js/tryit.asp?filename=tryjs_function_return
ou
http://apoie.org/PAI.html#entra('JanelaEdicao');
6
. Teste unitário da função
Teste funcional
http://apoie.org#atribuir(false, 'Expandir', ' indice ');
Teste de documentação
http://apoie.org/FuncaoConfigurar.js
=> atribuir
TDD
testador de expressão regular
expressão regular => \s*(\w+)\s+(\w+)/
texto a pesquisar => false, 'Expandir', ' indice '
testador =>
http://www.fflch.usp.br/dl/li/x/?p=612
resultado => false, 'Expandir', ' indice '
7
. Teste integrado da função
http://apoie.org
8
. Teste Usabilidade
Na
Url
http://apoie.org#atribuir(false, 'Expandir', ' indice ');
http://apoie.org/Scrum.html#Preparar.geral="Chave.documentacao=true;";Acabar.geral="atribuir(false, 'Chave', ' documentacao moldura ');";
Dentro de outra função
function Inic(xml)
{
try {atribuir(false, 'Chave', ChaveApag);} catch (err5) { }
try {atribuir(false, 'Expandir', ExpandirApag);} catch (err7) { }
if (xml !== '') Iniciar(xml);
if (PrimeiraVez++ === 0) {
try {eval(window.location.hash.substr(1));}
catch (err34){} }
document.getElementsByTagName('body')[0].style.display= 'block';
F5('Inic'); }
function FiltroNaUrl(
fim) { var id, aux, Lig, Apag, txt;
aux = Lig = Apag = txt = '';
for (id in Chave) {
if (pertence(id, ChaveApag)) {if (ver(id)) Lig += ' ' + id;}
else if (!ver(id)) Apag += ' ' + id;}
if (Lig !== '') txt += "atribuir(true, 'Chave', '" + Lig + " ');" + fim;
if (Apag !== '') txt += "atribuir(false, 'Chave', '" + Apag + " ');" + fim;
Lig = Apag = '';
for (id in Expandir) {
if (pertence(id, ExpandirApag)) {
if (verDet(id)) Lig += ' ' + id;}
else if (!verDet(id)) Apag += ' ' + id;}
if (Lig !== '') txt += "atribuir(true, 'Expandir', '" + Lig + " ');" + fim;
if (Apag !== '') txt += "atribuir(false, 'Expandir', '" + Apag + " ');" + fim;
return txt;}
Inserindo codigo pela janela de codigo
Copiar o codigo atribuir(false, 'Expandir', ' indice ');
para a janela em
http://apoie.net.br/desenvolvimento/WFuncAtribuir.html#atribuir(true, 'Chave', ' editarCodigo ');atribuir(false, 'Chave', ' Corpo ');atribuir(false, 'Chave', ' rodape')
;
Com isto o indice irá desaparecer.
link Arquivo origem:
WFuncAtribuir.xml
. Email Sugestão WD11 que substitui WD10
Documentação Função Atribuir {8}
O que a função faz (owner)
Relacionamentos com outras funções
Tipos de usuario externo
Function atribuir em ação
Teste unitario do codigo
Teste unitário da função
Teste integrado da função
Teste Usabilidade
Índice Local {9}
Projeto Apoie {6}
Projeto Apoie
Projeto PAS Produzir + Aprender + Simplificar
Serviço Web
Relacionamentos entre Personagens
Base de Conhecimento {5}
Conhecimento
Dado
Informação consolidada
Página Pronta - site apoie.org
Pulo do Gato
Contato Projeto Apoie
Linguagem
{5}
Javascript {3}
Referências e Ferramentas
Sintaxe
Cheat Sheet
Erlang Quick Sort
LDC {2}
LDC
LDC - Sintaxe
Definição {9}
Erlang
Python 3.0
Ruby 1.9.1 - Sintaxe
Ruby 1.9.1 - Léxico
Shell
Lua
PHP
XML
Lazy BNF
If
Dojo {4}
Coding Dojo
Coding Dojo - Formatos
Soluções Coding Dojo {6}
Dojo #34: Expressão Aritmética
Dojo #33: Impedimento
Dojo #32: Sequência Numérica
Dojo #31: Tráfego
Dojo #29: Boliche
Dojo #28: Jogo da Vida
Dojo Rio
Qualidade {2}
5W {3}
5W2H
5W1H
5W2H - 5W1H - Modelo
PDCA
Componente {5}
Componente
ExibirLinguagem.htm
Gerar Páginas
Lista
Tabela de Decisões
Paletas {10}
Paleta - Mais utilizadas
Paleta - Apoie
Paleta - Apresentação e Componentes
Paleta - Diagramas
Paleta - Diagrama Sintático
Paleta - Dojo
Paleta - Logos
Paleta - Projetos
Paleta - Setas
Paleta - Tecnologia
Evento {4}
Pendência
Estados de Componentes
Scrum
Prioridade
Método {5}
Oficina
Serviço Web
Warnier/Orr Basics
Apresentar Problema Resolvido
Simples x Complexo
Imposto de Renda