[javaEScript] duda sobre visibilidad y ámbito de funciones

carlos campderrós gilipollas.desconcertante en gmail.com
Mie Ago 16 18:06:12 PDT 2006


Buenas madrugadas a los noct=E1mbulos, buenas noches a los americanos y bue=
nos
d=EDas a los que se despiertan,

(los que no se sientan po=E9ticos, por favor, pasen directamente al
desenlace).

<introducci=F3n>
Tenemos a un muchacho llamado Carlos que se gana el pan haciendo webs
(programaci=F3n de lado cliente y servidor, css y html) y cosas as=ED. Hasta
ahora realmente no hab=EDa tenido que hacer grandes cosas en javascript, por
lo que acostumbraba a tener todo el c=F3digo en un simple .js o, v=E1lgame =
dios,
incluso empotrado en el mismo html. Sin embargo, ahora se encuentra en un
proyecto que es 90% javascript y digamos que el c=F3digo va creciendo y
creciendo, y se hace inmantenible en un solo archivo .js.
</introducci=F3n>

<cuerpo>
Carlos, siguiendo con sus ideas desconcertantes, piensa en qu=E9 puede hacer
=E9l para mejorar la situaci=F3n, y que sus jefes se fijen en =E9l y decidan
aumentarle el sueldo. Pronto se da cuenta que ser=EDa raro que sus jefes se
fijen en =E9l, pero m=E1s raro ser=EDa que le suban el sueldo, as=ED que de=
cide solo
pensar en que hacer para tener un c=F3digo medianamente mantenible, y que lo
siga siendo cuando =E9ste crezca en demas=EDa. Y lo primero, y en su inexpe=
rta
opini=F3n, lo mejor que se puede hacer, es separar el c=F3digo en varios
ficheros .js, y llamarlos todos desde el html.
</cuerpo>

<desenlace>
=A1(E/Ho)rror! =A1No funciona! A altas horas de la madrugada nuestro h=E9ro=
e (ejem
ejem) se da cuenta que no puede llamar a la funci=F3n
getPreviousSiblingsByTagName(...) definida en DOMNavigation.js desde dentro
de la funci=F3n addItemToList(...) definida en utils.js (y otros casos
similares). Carlos se pregunta qu=E9 opciones tiene:
   a) meterlo todo en un solo fichero .js
   b) hacer algo llamado clases, pero que le parece que seguir=E1 fallando
(hacer clase DOMNavigation, clase Utils, e instanciar objetos de estas
clases en archivoPrincipal.js, aunque tiene serias dudas de que esto
funcione (parece que tendr=EDa que seguir igual, y en
archivoPrincipal.jsdesconocer lo que es una clase DOMNavigation).
   c) dedicarse al parch=EDs profesionalmente.
   d) dormir un poco y esperar que con la luz del sol las cosas parezcan m=
=E1s
claras
   e) otra opci=F3n desconocida para =E9l

As=ED pues, ten=E9is alguna idea o lectura que recomendarle? Os lo agradece=
r=E1
eternamente : )
</desenlace>

-- =

Si no puedes deslumbrar con tu inteligencia,
desconcierta con tus gilipolleces
------------ pr=F3xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: /pipermail/javaescript-scriptia.net/attachments/20060817/99355fe3/atta=
chment.htm


Más información sobre la lista de distribución javaEScript