Ao criar um website. Como você acompanha um conjunto cada vez maior de parâmetros de URL e valores esperados?

5

Um site que estou criando tem crescido cada vez mais. O que significa que há mais parâmetros de URL que são passados da página A para B ou B para C, etc.

Alguém tem alguma dica sobre como acompanhar e usar chaves de parâmetro e valores esperados?

Digamos que uma URL que preciso criar seja www.example.com?type=this&mode=a

Existe algum tipo de sistema que me permita acompanhar facilmente o fato de que a chave de parâmetro "tipo" é de fato "tipo"?

Eu tentei mantê-los todos em uma classe de constantes, mas essa classe rapidamente saiu do controle.

public class URLParameters { 

  public static final String TYPE = "type" ; 
  public static final String MODE = "mode" ; 

  //more "keys"

  public static class Values { 

    public static final String TYPE_THIS = "this" ; 
    public static final String TYPE_THAT = "that" ; 

    public static final String MODE_PRIMARY = "a" ; 
    public static final String MODE_SECONDARY = "b" ;

    //more expected values
  }

}
    
por CrazyPenguin 07.02.2012 / 20:15
fonte

1 resposta

2

Sempre usei objetos acessíveis globalmente que são responsáveis pelo gerenciamento de todas as variáveis. Isso evita a duplicação de código por ter um método singular como CreateQueryString() e propriedades no objeto que são instruídos a procurar por chaves específicas. Isso permite que você coloque uma depuração de dados extra, se precisar, etc. Também permite que você descarte chaves inválidas que possam ter consequências indesejadas se a estrutura que estiver usando estiver vulnerável a ela.

Eu sempre tento manter minhas strings de consulta curtas, mas lembro-me de um trabalho que fiz no FuseBox algumas vezes que tivemos que empregar esse método. Quando você chega até ele, é basicamente o que o FuseBox é. É uma estrutura de objeto que usa strings de consulta estruturada para controlar a apresentação do site. Nossa implementação, no entanto, foi direcionada para funcionalidades globais específicas.

A desvantagem desse método é que ele se torna um requisito de que qualquer página que espera usar uma variável de string de consulta terá que registrar essa variável como uma propriedade no objeto global. Embora isso ajude a evitar a duplicação ou a reutilização de chaves específicas, ainda assim será um pouco entediante e possivelmente até complicado.

    
por 07.02.2012 / 20:23
fonte