PDA

Ver la Versión Completa : Clases y herencia


dec
16-01-2007, 10:18:33
Hola,

Quisiera escribir un serie de clases en JavaScript que llevaran a cabo o pusieran más sencillas la realización de determindas tareas que acaso son recurrentes en distintas aplicaciones. Sé que existen muy buenas clases o "frameworks" por ahí, como pueda ser jQuery (http://jquery.com/).

Resumiendo, quisiera saber qué os parece la siguiente forma de hacer las cosas. Mi preocupación estriba en las instrucciones que resalto en negrita. Por otro lado se nota mi carencia de conocimientos respecto de la programación orientada a objetos y más aún si cabe en lo tocante a esta en JavaScript.


Jc = function()
{
this.version = '1.0';
}
// Jc

JcBase = function()
{
this.el = function(id){
return document.getElementById(id);
}
}
// JcBase

JcInterfaz = function()
{
this.Ocultar = function(id){
this.el(id).style.display = 'none';
}

this.Mostrar = function(id){
this.el(id).style.display = 'block';
}
}
JcInterfaz.prototype = new JcBase();
// JcInterfaz

Jc.prototype = new JcBase();
Jc.prototype = new JcInterfaz();

$ = new Jc();

El caso es que el código anterior funciona... o eso me parece a mí. Es decir, puedo hacer uso del objeto "$" y acceder a los métodos "Ocultar" y "Mostrar", así como a la propiedad "version", y huelga decir que la llamada al método "el" funciona desde los métodos "Ocultar" y "Mostrar. Ahora, no me queda claro el asunto.

No sé si debería enfocar las cosa de otro modo. Es decir, no sé si debería "instanciar" la clase "JcInterfaz" para hacer uso de sus métodos y no utitilizar la clase "Jc"... dudo porque si supongo una nueva clase "JcAjax" que quieras hacer uso de algún método de la clase "JcInterfaz"... ¿De qué clase debería heredar "JcAjax"? Porque si heredara de "JcBase" no contaría con los métodos de la clase "JcInterfaz".

En fin. A ver qué podéis decirme al respecto. Sé que podría tratar de hacerme con los mandos de "jQuery", por ejemplo, porque además veo que hace uso de "cosas" como "XPath" de la que tan solo he oído hablar y leí algo en su momento pero que parece da muy buenos resultados. No se trata de que quieras reinventar la rueda, pero, leches, uno se quiere dar el gusto de hacer algo por su cuenta y riesgo. :)

En fin. Qué os voy a decir que no sepáis ya. Gracias de antemano pataliebres. :eek: :p :D

dec
16-01-2007, 10:53:36
Hola,

Joroba... la verdad es que a uno le da por escribir... y luego echa un vistazo a cosas como jQuery y mira un par de tutoriales... y se queda alucinado de los cocos que hay por ahí, la hostia. ¿Pero vosotros habéis visto jQuery (http://jquery.com/)? No me extraña que se diga en su página Web que es "cambiará tu forma de escribir JavaScript"... La virgen santa bendita. :)