por
pobrecito hablador
el Jueves, 01 Diciembre de 2005, 11:43h
(#650868)
bueno, quizas sea ser un poco puntilloso, pero me gustaria aclarar tus aclaraciones (sin tratar de ser formal al 100% y eso, que al fin y al cabo yo no soy ingeniero doctorado, todo lo mas un aficionado).
-Sobre lo primero que dices, glib se escribio para incrementar la portabilidad de gtk(aislando y definiendo tipos,etc ), con en tiempo ( y eso es un merito que hay que reconocer a gtk) y debido a que en gtk se persigue usar una filosofia orientada a objetos (OO), se ha incluido en gtk una gran cantidad de funcinalidad presentes en los lenguajes OO . Para una proxima version se espera incluir Introspeccion (algo presente en los lenguajes OO de ultima generacion). Ahora bien, hay que diferenciar el que se pueda programar usando una filosofia OO y que el lenguaje ofrezca funcionalidad OO. En el primer caso aunque se tengan librerias que faciliten la tarea (glib, GObject...), el lenguaje seguira sin dar soporte a la filosofia OO, esto quiere decir que la sintaxis y por tanto el compilador, no dan soporte semantico a los conceptos presentes en la POO (por ejemplo el concepto clase, tendras que simularlo tu, o la llamada a un metodo de instancia, tendras que pasar el objeto como parametro mediante un puntero o quizas una direccion (*objeto o &objeto, ni idea la verdad), el manejo de memoria, etc), y por mas que la libreria te ayude el compilador seguira sin tener ni idea de que es un metodo, una clase, etc. Claro que tambien se puede tener un lenguaje OO y programar sin usar una filosofia OO, pero eso no se suele hacer nunca (salvo cuando se aprende el lenguaje o en alguna cuestion puntual).
- Respecto al segundo punto, gtk no esta portado a ningun lenguaje (portar quiere decir otra cosa), sino que tiene enlances (blindings o warppers) que permiten usar la libreria desde otro lenguaje distinto al que se escribio (son conceptos distintos). Cuando dices portado, da la impresion de que gtk a sido "reescrito en esos lenguajes" y eso no es asi. Lo que se hace por explicarlo de alguna forma en escribir una capa puente entre la libreria (ya compilada) y el lenguaje de forma que se exponga la funcionalidad de esta y sea posible enlazar el programa escrito en el otro lenguaje y la libreria (mas o menos es asi, sin entrar en detalles tecnicos).
Re:mas guerritas de FUD KDE vs Gnome.
(Puntos:0)-Sobre lo primero que dices, glib se escribio para incrementar la portabilidad de gtk(aislando y definiendo tipos,etc ), con en tiempo ( y eso es un merito que hay que reconocer a gtk) y debido a que en gtk se persigue usar una filosofia orientada a objetos (OO), se ha incluido en gtk una gran cantidad de funcinalidad presentes en los lenguajes OO . Para una proxima version se espera incluir Introspeccion (algo presente en los lenguajes OO de ultima generacion). Ahora bien, hay que diferenciar el que se pueda programar usando una filosofia OO y que el lenguaje ofrezca funcionalidad OO. En el primer caso aunque se tengan librerias que faciliten la tarea (glib, GObject...), el lenguaje seguira sin dar soporte a la filosofia OO, esto quiere decir que la sintaxis y por tanto el compilador, no dan soporte semantico a los conceptos presentes en la POO (por ejemplo el concepto clase, tendras que simularlo tu, o la llamada a un metodo de instancia, tendras que pasar el objeto como parametro mediante un puntero o quizas una direccion (*objeto o &objeto, ni idea la verdad), el manejo de memoria, etc), y por mas que la libreria te ayude el compilador seguira sin tener ni idea de que es un metodo, una clase, etc. Claro que tambien se puede tener un lenguaje OO y programar sin usar una filosofia OO, pero eso no se suele hacer nunca (salvo cuando se aprende el lenguaje o en alguna cuestion puntual).
- Respecto al segundo punto, gtk no esta portado a ningun lenguaje (portar quiere decir otra cosa), sino que tiene enlances (blindings o warppers) que permiten usar la libreria desde otro lenguaje distinto al que se escribio (son conceptos distintos). Cuando dices portado, da la impresion de que gtk a sido "reescrito en esos lenguajes" y eso no es asi. Lo que se hace por explicarlo de alguna forma en escribir una capa puente entre la libreria (ya compilada) y el lenguaje de forma que se exponga la funcionalidad de esta y sea posible enlazar el programa escrito en el otro lenguaje y la libreria (mas o menos es asi, sin entrar en detalles tecnicos).
Un saludo.