cuadrantes-espiral
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Cuadrantes-espiral] IMPORTANTE: Varialbe global $nombreCookie


From: Javier Linares
Subject: Re: [Cuadrantes-espiral] IMPORTANTE: Varialbe global $nombreCookie
Date: Wed, 26 Jun 2002 15:42:14 +0200
User-agent: Mutt/1.2.5i

> Pregunta de no programador: ¿Por qué no se deben utilizar
> variables globales?

Las variables globales son malas por muchos sentidos. Lo primero
es que mezcla los espacios de nombre, dejando de cualquier
función modifique esos valores. Esto puede dar lugar a errores.
Además, los programas se hacen difíciles de manejar e
interpretar. 

No es lo mismo tratar una función que tiene dos parámetros (o
sea, los que se le pasan) que una función a la que no se le pasan
parámetros pero que utiliza valores de variables globales.
Realmente no sabes de dónde viene el valor que contiene esa
variable global, porque puede que cualquier código, cualquier
línea en la última librería que jamás pensarías que estaba allí
está decrementando en uno esa variable por cualquier razón y
todos los bucles están dejando de ejecutarse.

En la fase de depuración el programa jamás dará error porque la
instruccion variable_global--; para decrementar está bien
sintáxicamente, aunque no sea lo que quieres hacer.

Así que también pierdes programas modulares (porque puedes copiar
una parte y que de error porque te hace falta una variable
global) y los haces no-estructurados. 

> Por tanto:
> $nombreCookie es igual al $IdSesion.

Pues no estoy de acuerdo, porque $nombreCookie nunca se ha
igualado a $IdSesion. Más bien $nombreCookie es algo que no se
utiliza para nada y que, en cambio, se utiliza "nombreCookie"
como nombre del a cookie (debería ser algo más.... expresivo).

> Si, ya lo se, soy una chapuzas, menos mal que no soy
> programador, así no me podéis echar nada en cara :)

Bueno, vale :P

> (Lo reconozco: me ha llevado 10 minutos recordar el
> funcionamiento de este asunto, los nombres que le he dado a
> cada cosa tampoco han ayudado... Se aprende a base de golpes,
> ¿no? Pues eso)

Pues sí, si tú mismo que has programado esto y no hace mucho
tarda 10 minutos (teniendo ya en la cabeza cargada tu forma de
programar :)) para el resto se hace algo totalmente
incomprensible. 

De todas formas seguro que la próxima vez lo haces mejor ;)

> Por otra parte, Javier, Debian allá voy: tengo por aquí dos
> ISOs, una Potado y otra Woody. Tengo una tarjeta gráfica
> NVidia, para lo cual creo que se necesita las XFree 4.0, que el
> Potato no trae, ¿cierto?

No deberías seleccionar Potato o Woody según el Software que te
deja instalar. Puedes perfectamente portar las XFree 4.0 a
Potato. Es más bien cuestión de estabilidad:


- Si lo que tienes es una máquina personal que utilizas para ver
  páginas web, contestar correo, jugar un poco y programar de vez
  en cuando instala Woody, sin duda alguna. Es muy difícil que
  algo falle realmente, pero si falla lo solucionarás en un par
  de días.

- Si tienes un servidor, eres bibliotecario y guardas toda la
  clasificación de los libros, eres programador y tienes que
  trabajar todos los días o la producción de una fábrica depende
  de ese equipo, entonces instala Potato.

- Si eres desarrollador, experto en Linux o un verdadero suicida,
  instala Sid, la rama inestable de Debian ;-)


Con Potato vas a tener software relativamente viejo, de hace 4 o
5 años incluso. Con Woody tienes acceso a casi lo último. Digamos
entonces que Woody tiene la estabilidad de Red Hat o Mandrake. Y
Potato tiene la estabilidad de poder estar encendido sin
reiniciar durante 3 años :)

De todas formas, y para confundirte un poco mas :), Woody tenía
que haber pasado a estable el 1 de Mayo, así que ya sí que está
al caer. Es decir, Potato pasará a la historia, Woody será el
estable, habrá un nuevo personaje de Toy Story que será el
siguiente :) de pruebas y Sid (el niño malo :P) seguirá sin
liberarse, sólo para desarrolladores.

Aquí termina la clase de Debian. ¿Alguna pregunta? :)

-- 
Javier Linares                  http://www.adala.org
address@hidden        address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]