• Publicidad

PHP::Session - Autor: Eial

Aquí encontrarás todo lo que sea específicamente acerca de módulos de Perl. Ya sea que estás compartiendo tu módulo, un manual o simplemente tienes una duda acerca de alguno.

Re: Faltó un mejor diseño

Notapor Invitado » 2005-06-28 14:27 @644

Saludos,

Estuve revisando el código del módulo y bueno, aquí van mis conclusiones, que aclaro, son ajenas a las finalidades del autor del módulo, es decir, el autor de un módulo generalmente crea para dar solución a un problema, y quizás su problema tenía como solución crear algún tipo de gestor de sesiones similar a la forma en la que PHP las maneja:

1) La primera es, quizás fue creado por fines educativos, ya que no veo por qué competir con los módulos *::Session, que son mucho mejor elaborados y profesionales ( incluyendo el diseño/API ) que cualquiera hecho en PHP.

2) Faltó documentación, si los intentos de POD que vienen en los archivos de código fuente se toman como documentación, entonces falta aprender POD.

3) El código fuente esta muy pobremente legible, aquí van algunos ejemplos:
    a) Modificación directa del arreglo default ( @_ ) ( BAD! )
    b) Uso de etiquetas cuando puede ser evadido.
    c) Uso excesivo de eval en forma de bloque.
    d) Muy mal estilo utilizado en el uso de expresiones regulares.
    e) Uso de funciones poco portables, que pueden ser sustituidas por módulos existentes.
    f) Ugh no se diga esto:
    Código: Seleccionar todo
    if ($_ =~ /^([^=]+)=(?:\s*"([^"]*)"|\s*'([^']*)'|([^;]*))/) {if (!$_[1]) {$H{$stack}=+{$1=>$2\
    ,%{$H{$stack}}};}else{$H{$1}=[$2,@{$H{$1}}];}}

    g) Sustituir Serialize.pm por Data::Dumper o Storable;
    h) Session.pm usa variables globales de manera masiva.
    i) MySql.pm es propenso a SQL Injection, es poco legible y no usa placeholders.
4) Falta de planeación del módulo?

Amén.

Saludos,
Invitado
 

Publicidad

Volver a Módulos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados