Alguien ha probado YUKIYU?

Es como synaptic en ubuntu pero para gentoo por si alguien no lo sabe.
Ahora sólo me falta saber qué hace synaptic en ubuntu, XDDD.

Es que lo he oído millones de veces pero nunca me he parado a saber qué era... buscaremos.

El nombre suena a personaje manga...

Salu2!
pues otra gui mas para la coleccion jajaja.
Sigo prefiriendo la consola para usar Portage, pero Kuroo empieza a ser una GUI bastante cómoda.
Sí, la verdad que me fui a google y encontré esa y otra página.

Así como para otras cosas no, para manejar portage a mí me resulta más cómoda la consola. Voy a ver el Kuroo ese de todas formas.

Salu2!

P.D: Kuroo... buaaaaah!!! Mierda de Qt! [decaio]
FuckingFreaky escribió:Sí, la verdad que me fui a google y encontré esa y otra página.

Así como para otras cosas no, para manejar portage a mí me resulta más cómoda la consola. Voy a ver el Kuroo ese de todas formas.

Salu2!

P.D: Kuroo... buaaaaah!!! Mierda de Qt! [decaio]


No sé... no veo muy lógico renunciar a programas que te pueden gustar sólo por mantener una "pureza" de bibliotecas. Yo prefiero KDE a cualquier cosa (sólo ver el selector de ficheros de GTK me causa alergia) pero no por eso le hago asco a programas cojonudos como Inkscape, Gimp, o Firefox.

Además que hoy día cuando prácticamente no se venden discos duros de menos de 80GB me parece un poco tontería andar mirando tan estrictamente ese tipo de cosas...

Pero bueno, todo esto por supuesto IMHO y tal [jaja]
Jajaja! No vamos a empezar aquí un GTK VS Qt, ni me voy a poner a explicar por qué no me gusta Qt... Pero vamos, en este caso, si fuera una "killing application", como GIMP ó Firefox... me lo pensaría. Bueno... la verdad es que no, porque si no me pondría K3B, XD. No sé, soy un poco maniacoparanoico con esto de las librerías.

Pero vamos, que por una aplicación para manejar portage que no sé si me va a aportar algo realmente bueno, tampoco me voy a comer el coco. Realmente créeis que merecen la pena este tipo de aplicaciones? Es que no sé realmente lo que me puedo ahorrar... pero bueno, seguramente le dé una oportunidad a alguna.

Salu2!
FuckingFreaky escribió:Jajaja! No vamos a empezar aquí un GTK VS Qt, ni me voy a poner a explicar por qué no me gusta Qt... Pero vamos, en este caso, si fuera una "killing application", como GIMP ó Firefox... me lo pensaría. Bueno... la verdad es que no, porque si no me pondría K3B, XD. No sé, soy un poco maniacoparanoico con esto de las librerías.

Pero vamos, que por una aplicación para manejar portage que no sé si me va a aportar algo realmente bueno, tampoco me voy a comer el coco. Realmente créeis que merecen la pena este tipo de aplicaciones? Es que no sé realmente lo que me puedo ahorrar... pero bueno, seguramente le dé una oportunidad a alguna.

Salu2!


No, no... si no se trata de empezar un VS ni de explicar porqué no te gusta, no tienes porqué explicarlo. Yo entiendo que haya gente que no le gusten del mismo modo que yo también tengo mis gustos. Lo que digo es que llevarlo a rajatabla hasta el extremo de no querer saber nada de aplicaciones sólo por cómo estén construidas me parece ponerse barreras a uno mismo.

Hoy hablamos de Kuroo, que es totalmente prescindible, pero ahí fuera tienes grandes aplicaciones QT, como tú mismo dices K3B, o Amarok, o quién sabe... mañana necesitas hacer algo serio en C++ y resulta que te estás negando la posibilidad de usar KDevelop, uno de los IDEs libres más avanzados sólo porque usa QT. No sé, creo que se me entiende lo que quería decir.
Mientras no te acostumbres a aplicaciones que no vas a poder en otros entornos todo va bien :) Muchas veces esas barreras no 'nos las ponemos' si no que 'nos las ponen'. Por ejemplo las Qt funcionan horriblemente en Alpha (como todo kde) y las GTK de lujo; sin embargo si vas a otros SOs como Windows o MacOSX entonces las GTK empiezan a apestar de lo lindo y las Qt a funcionar 'de miedo'.

Todo depende de a qué te quieras acostumbrar... personalmente no se me ocurriría acostumbrarme a una aplicación como kdevelop porque raramente la voy a encontrar en un sitio donde no tenga kde+(probablemente)x86. Sin embargo vim lo tienes para cualquier plataforma y funciona bien en (casi) cualquier SO.

Una vez más... todo depende de a lo que te quieras acostumbrar :)

Saludos.Ferdy
episode96... A mí no me parece mal no usar una determinada aplicación por cómo esté construída. Es decir... si no hay más remedio, pues no hay más remedio, pero de eso es poco. Yo tengo una filosofía de cómo debería ser el software e intento seguirla. Si por necesidad no me queda maś remedio que usar una aplicación con Qt, que no me gustan, pues la tendré que usar, pero mientras exista algo similar más acorde con lo que pienso, intentaré utilizarlo.

Ferdy, coincido contigo en todo lo que dices. Supongo que mi idea de software va más por ahí. Yo considero un software bien hecho cuando puede correr en varias plataformas y SSOO, sigue unos estándares, etc. Aunque esto parece difícil. Hastsa donde yo conozco y por lo que pareces decir tú, hay realmente poquitas aplicaciones que cumplan todo esto, supongo que porque es bastante más difícil programar así. Y en aplicaciones de usuario ya ni hablemos. Parece realmente difícil construir aplicaciones gráficas y bonitas que corran bien en todos los sistemas y plataformas (en parte por eso me gusta mono, arriesgándome a que me llames de todo :P).

Por cierto, estás emocionado con los Alpha, eh?XD. ¿Tan bien van? ¿Tienes uno? ¿Uso doméstico ó sólo servidor? Todas estas cosas siempre me han intrigado bastante. Ya de paso... me recomiendas alguna página para saber un poquito más de alpha? Sus ventajillas, cosas mejorables y demás...

Salu2!
Realmente las más portables entre SSOO y plataformas son las escritas en ncurses o Qt (sin usar kdelibs), o las wxWindows. Simplemente que resultan ir mal en alpha por algun bug extraño que como te pille... estas jodido :)

Por cierto, estás emocionado con los Alpha, eh?. ¿Tan bien van? ¿Tienes uno? ¿Uso doméstico ó sólo servidor? Todas estas cosas siempre me han intrigado bastante. Ya de paso... me recomiendas alguna página para saber un poquito más de alpha? Sus ventajillas, cosas mejorables y demás...


Estoy en Gentoo/Alpha, es normal que me preocupe por esas cosas jeje. Si, tengo dos máquinas alpha (dos servidores). Para uso doméstico van muy bien por lo que se; todo depende de la máquina que tengas; yo no usaría algo menor a un ev56 como escritorio. Para iniciarse en alpha, el link de mi firma debería servirte. Si quieres más info, pillanos por #gentoo-alpha o pillame por jabber y tal y te soluciono las dudas que puedas tener (y yo pueda conocer!).

Saludos.Ferdy
¿Realmente merece la pena probar a poner KDE en un Alpha? ¿No es una arquitectura destinada a otro tipo de cosas que no son el escritorio?

Creo que si no tienes el inconveniente de la arquitectura, no merece la pena negarse a instalar una aplicación únicamente porque use un toolkit que no te gusta. Eso sí, si se quiere integración habrá que tirar de un mismo toolkit o ponerse de acuerdo entre diferentes toolkits para que haya esa integración.

FuckingFreaky: si no es mucho preguntar, ¿por qué las librerías QT no van con la filosofía que quieres seguir?

Saludos.
¿Realmente merece la pena probar a poner KDE en un Alpha? ¿No es una arquitectura destinada a otro tipo de cosas que no son el escritorio?


Hombre... realmente a mi si me interesa. Y si, hay máquinas alpha de escritorio y estaciones de trabajo alpha.

Creo que si no tienes el inconveniente de la arquitectura, no merece la pena negarse a instalar una aplicación únicamente porque use un toolkit que no te gusta. Eso sí, si se quiere integración habrá que tirar de un mismo toolkit o ponerse de acuerdo entre diferentes toolkits para que haya esa integración.


Por eso tiendo a usar aplicaciones basadas en slang o ncurses

Saludos.Ferdy
bpeople escribió:FuckingFreaky: si no es mucho preguntar, ¿por qué las librerías QT no van con la filosofía que quieres seguir?
Sé que me vas a odiar... pero allá vamos ;).
1. Ante todo... Qt es horribleeeeeee!!! Dios... se le pueden poner más brillos y pijadas a las aplicaciones Qt? Yo es que me siento como agobiado. Más y más rediseño gráfico, más y más brillo y colorines y pijaditas. Las aplicaciones KDE/Qt tienen a tener todas las vistosidades del mundo que, en mi opinión, acaban afectando mucho a la usabilidad. Prefiero algo más ligero, más directo, más... GTK XD.

2. Segundo... Ahora no sé si seguirá así el tema (dudo que haya cambiado por su origen), pero hasta donde yo sé las Qt no siguen el estándar de C++. Están programadas en C++ pero sin embargo utilizan un montón de funciones propias para realizar operaciones estándar de C++. Han hecho un rediseño de C++ adaptándolo a sus Qt, y eso es algo que no me gusta nada de nada.
Por ejemplo, GTK, están hechas en C, aunque hay "bindings" para distintos lenguajes como GTKmm, que son las destinadas a C++. Bien, tú con GTK puedes utilizar cualquier función estándar de C++ y lo puedes aplicar en la realización de la propia interfaz. Puedes utilizar herencia, polimorfismo, etc. Muchas de estas cosas, ya digo que hasta donde yo vi, en Qt las tienes que hacer con funciones rediseñadas para la ocasión. Soy muy pijo ó muy gilipollas para estas cosas, sí... pero es que me jode muchísimo el tema de saltarse estándares. Si lo podían hacer estándar, ¿por qué no lo hicieron? Soy un aférrimo defensor de éstos, y más en casos así dnode no ha sido por imposibilidad de realizar algo.

3. Esto pasa tanto con una como con otra, pero ya que me he puesto a criticar, lo digo todo. Igual esta crítica es injustificada por no tener ni puñetera idea de programación seria, así que ya me diréis... El caso es que ODIO que se vinculen GTK/Gnome y Qt/KDE. ¿Por qué cuando yo voy a instalar una aplicación preciosa GTK de repente me encuentro conque tengo que instalar tropecientas librerías de Gnome? ¿Por qué para instalar casi cualquier aplicación Qt me tengo que meter el kde-libs pa' dentro? Sencillamente, me jode. Pero ay digo que ésto seguramente sea muy infundado por falta de conocimiento. Pero... realmente es necesaria esa dependencia? No se pueden hacer aplicaciones independientes del escritorio?

Y seguro que ya se me ocurren más :P.
Ferdy escribió:Por eso tiendo a usar aplicaciones basadas en slang o ncurses
Jué, pero qué feooooo!!! Ya sé que para ti es secundario, pero es que a mí me gustan más las pijaditas gráficas mientras no recarguen mucho.

Ferdy, cómo cuánto cuesta una estación alpha? No encuentro sitios con precios por internet!

Gracias. Salu2!
FuckingFreaky escribió: Sé que me vas a odiar... pero allá vamos ;).
1. Ante todo... Qt es horribleeeeeee!!! Dios... se le pueden poner más brillos y pijadas a las aplicaciones Qt? Yo es que me siento como agobiado. Más y más rediseño gráfico, más y más brillo y colorines y pijaditas. Las aplicaciones KDE/Qt tienen a tener todas las vistosidades del mundo que, en mi opinión, acaban afectando mucho a la usabilidad. Prefiero algo más ligero, más directo, más... GTK XD.


Bueno, eso es personal y ahí no me meto. A lo que en GTK/Gnome le suelen llamar usabilidad yo muchas veces le llamo falta de funcionalidad, pero como digo eso es cuestión de gustos y del enfoque que se le quiera dar. Sólo ten en cuenta que no depende tanto del toolkit, sino de lo que el programador quiera hacer con su aplicación.

FuckingFreaky escribió:
2. Segundo... Ahora no sé si seguirá así el tema (dudo que haya cambiado por su origen), pero hasta donde yo sé las Qt no siguen el estándar de C++. Están programadas en C++ pero sin embargo utilizan un montón de funciones propias para realizar operaciones estándar de C++. Han hecho un rediseño de C++ adaptándolo a sus Qt, y eso es algo que no me gusta nada de nada.
Por ejemplo, GTK, están hechas en C, aunque hay "bindings" para distintos lenguajes como GTKmm, que son las destinadas a C++. Bien, tú con GTK puedes utilizar cualquier función estándar de C++ y lo puedes aplicar en la realización de la propia interfaz. Puedes utilizar herencia, polimorfismo, etc. Muchas de estas cosas, ya digo que hasta donde yo vi, en Qt las tienes que hacer con funciones rediseñadas para la ocasión. Soy muy pijo ó muy gilipollas para estas cosas, sí... pero es que me jode muchísimo el tema de saltarse estándares. Si lo podían hacer estándar, ¿por qué no lo hicieron? Soy un aférrimo defensor de éstos, y más en casos así dnode no ha sido por imposibilidad de realizar algo.


QT usa un "preprocesador" de modo que implementa nuevas construcciones en el lenguaje -principalmente signals y slots-, eso es cierto. Pero decir que eso es saltarse los estándares es como decir que con el preprocesador estándar de C ya no estás creando C por poder definir construcciones que no son C propiamente dicho. Una vez procesado el código que tu escribes por la herramienta moc de QT, el código resultante es 100% C++ puro y duro, y la prueba es que al final es justo ese código C++ lo que compila el compilador GNU.


FuckingFreaky escribió:
3. Esto pasa tanto con una como con otra, pero ya que me he puesto a criticar, lo digo todo. Igual esta crítica es injustificada por no tener ni puñetera idea de programación seria, así que ya me diréis... El caso es que ODIO que se vinculen GTK/Gnome y Qt/KDE. ¿Por qué cuando yo voy a instalar una aplicación preciosa GTK de repente me encuentro conque tengo que instalar tropecientas librerías de Gnome? ¿Por qué para instalar casi cualquier aplicación Qt me tengo que meter el kde-libs pa' dentro? Sencillamente, me jode. Pero ay digo que ésto seguramente sea muy infundado por falta de conocimiento. Pero... realmente es necesaria esa dependencia? No se pueden hacer aplicaciones independientes del escritorio?


Te hablo de KDE/QT que es lo que más conozco. Las aplicaciones QT ya lo dijimos alguna otra vez no dependen de kdelibs. Lo que ocurre es que hay muy pocas aplicaciones que sean sólo QT (ahora mismo sólo se me ocurre Psi). Respecto a si las dependencias son necesarias... a no ser que quieras reinventar la rueda todo el puñetero rato en cada aplicación que escribas, mi respuesta es un rotundo sí. ¿Por qué demonios inventarse un selector de fichero propio si kdelibs ya trae uno? ¿Por qué crear tu propio motor HTML si KDE ya tiene uno? ¿Por qué crear tu propio editor de texto si KDE ya tiene un componente para ello? ¿Por qué crear tu propio parser XML si QT o KDE tienen uno ya hecho? Así puedes seguir hasta que te aburras.

Ahora ten en cuenta que cada uno de esos componentes probablemente están más probados y son más eficientes que los que tú podrías crear tú mismo. Recuerda además que tú estás interesado en crear una aplicación con un objetivo X, pero tu especialidad no son los parsers XML, ni los motores HTML, ni tienes que perder tiempo desviándote del objetivo que a ti te interesa rehaciendo algo que otros ya han hecho.

Por si fuera poco, cada vez que otros actualicen o mejoren esos componentes, tu aplicación automáticamente se va a beneficiar de ello, y eso es justo lo que ocurre en toda aplicación KDE cada vez que mejoran kdelibs/kdebase. Y por eso no tienes más que pasarte por kde-apps.org y verás surgir aplicaciones muy completas en KDE como la espuma, cada vez más, porque el framework de KDE ha alcanzado ya una madurez considerable.

Como ejemplo... el siguiente tutorial aunque ya antiguo te sirve perfectamente. En él se construye un navegador web más que decente con una cantidad de código ridícula. El secreto por supuesto es que todos los componentes importante ya están escritos.

http://developer.kde.org/~larrosa/es/tutorial/index.html

Perdón por el ladrillo, pero espero que haya quedado clara mi postura ;-)
Ferdy, cómo cuánto cuesta una estación alpha? No encuentro sitios con precios por internet!


No te la puedes pagar :) A no ser que busques alguna en el ebay....

Perdón por el ladrillo, pero espero que haya quedado clara mi postura


Si queda clara... pero tienes el problema de la portabilidad. Una aplicación que utilice kdelibs solo va a correr en Linux. En ese sentido los wxWidgets tienen mucha mejor pinta.

Saludos.Ferdy
Ferdy escribió:
Si queda clara... pero tienes el problema de la portabilidad. Una aplicación que utilice kdelibs solo va a correr en Linux. En ese sentido los wxWidgets tienen mucha mejor pinta.

Saludos.Ferdy


¿Por qué? Además de Linux KDE funciona en FreeBSD, Solaris...

http://www.kde.org/download/distributions.php

Incluso lo han hecho ya funcionar en OpenSolaris ( http://dot.kde.org/1121719390/ ) y para QT4 están pensando en portar kdelibs a windows...
episode96 escribió:Bueno, eso es personal y ahí no me meto. A lo que en GTK/Gnome le suelen llamar usabilidad yo muchas veces le llamo falta de funcionalidad, pero como digo eso es cuestión de gustos y del enfoque que se le quiera dar. Sólo ten en cuenta que no depende tanto del toolkit, sino de lo que el programador quiera hacer con su aplicación.
Pero las Qt van muy destinadas a ese tipo de diseño... Esto es totalmente personal, ni bueno ni malo, pero yo cada vez soy más simplista. Me gustan las aplicaciones gráficas, pero sencillas y nada "bloated" (será posible de que no me acuerde de la palabra equivalente en español?xD). Pero bueno, esto no es ni bueno ni malo, simplemente personal.

episode96 escribió:QT usa un "preprocesador" de modo que implementa nuevas construcciones en el lenguaje -principalmente signals y slots-, eso es cierto. Pero decir que eso es saltarse los estándares es como decir que con el preprocesador estándar de C ya no estás creando C por poder definir construcciones que no son C propiamente dicho. Una vez procesado el código que tu escribes por la herramienta moc de QT, el código resultante es 100% C++ puro y duro, y la prueba es que al final es justo ese código C++ lo que compila el compilador GNU.
Sí, pero el tema es que a la hora de programarlo... por lo que yo he entendido, cosas que podrías hacer con funciones estándar de C, tienes que hacerlas con funciones definidas por Qt. Y lo que no recuerdo ya de Qt es si utilizaba absolutamente todas las posibilidades de polimorfismo, herencia, encapsulamiento, etc... No lo recuerdo ya, la verdad.
Te pongo varios extractos de la doc de GTKmm (sí, muy imparcial no es, XD), pero por ver si te aclara ó me aclaras algo ;), que ya digo que no soy ni mucho menos experto.


Why not just use Qt if you like C++ so much?


gtkmm developers tend to prefer gtkmm to Qt because gtkmm does things in a more C++ way. Qt originates from a time when C++ and the standard library were not standardised or well supported by compilers. It therefore duplicates a lot of stuff that is now in the standard library, such as containers and type information. Most significantly, they modified the C++ language to provide signals, so that Qt classes can not be used easily with non-Qt classes. gtkmm was able to use standard C++ to provide signals without changing the C++ language.

How does gtkmm compare to Qt?
1. gtkmm uses pure C++. Qt requires extensions to C++ that are parsed by the moc pre-processor.
2. gtkmm uses std::string, std::list, std::vector, iterators, etc. Qt has it's own Qt-specific containers.
3. With gtkmm normal C++ memory management can be used. Qt demands that all widgets are dealt with as pointers, and that deletion of widgets is surrendered to parent widgets.
4. Arrangement of widgets seems to be simpler in gtkmm. In Qt, Containers and Layouts are separate classes, and child widgets must be added to both.
5. The gtkmm API tends to be more explicit. The behaviour of Qt classes is often dependent upon the implicit effects of confusingly-overridden constructors.

Does the gtkmm API use C types, such as structs?
No, we wrap almost all parameters as C++ classes. which use C++ memory management. If you find parameters that use C types without good reason then we want to know about it.

Does gtkmm support all the C++ goodies like inheritance, polymorphism, etc?
Yes. gtkmm objects are normal C++ objects which implement the GTK+ inheritance model through C++ inheritance. You can do with the gtkmm widgets everything that you can do with any other C++ class.

Does gtkmm use Standard C++ (STL) containers such as std::string and std::list?
Yes, we believe in reusing standard C++ code wherever possible. This might not be obvious at first because:
1.gtkmm has Glib::ustring which has almost the same interface as std::string. This new type exists because the C++ standard does not support UTF8-encoded strings.
2. The gtkmm API uses types such as Glib::ListHandle which can be assigned to almost any standard C++ container, such as std::list or std::vector. These intermediate types have been used instead of forcing you to use any particular container.
In addition, some widgets, such as Gtk::TreeView, have interfaces which are very similar to the standard containers. For instance, you can iterate through the selected rows.


episode96 escribió:Te hablo de KDE/QT que es lo que más conozco. Las aplicaciones QT ya lo dijimos alguna otra vez no dependen de kdelibs. Lo que ocurre es que hay muy pocas aplicaciones que sean sólo QT (ahora mismo sólo se me ocurre Psi). Respecto a si las dependencias son necesarias... a no ser que quieras reinventar la rueda todo el puñetero rato en cada aplicación que escribas, mi respuesta es un rotundo sí. ¿Por qué demonios inventarse un selector de fichero propio si kdelibs ya trae uno? ¿Por qué crear tu propio motor HTML si KDE ya tiene uno? ¿Por qué crear tu propio editor de texto si KDE ya tiene un componente para ello? ¿Por qué crear tu propio parser XML si QT o KDE tienen uno ya hecho? Así puedes seguir hasta que te aburras.

Ahora ten en cuenta que cada uno de esos componentes probablemente están más probados y son más eficientes que los que tú podrías crear tú mismo. Recuerda además que tú estás interesado en crear una aplicación con un objetivo X, pero tu especialidad no son los parsers XML, ni los motores HTML, ni tienes que perder tiempo desviándote del objetivo que a ti te interesa rehaciendo algo que otros ya han hecho.

Por si fuera poco, cada vez que otros actualicen o mejoren esos componentes, tu aplicación automáticamente se va a beneficiar de ello, y eso es justo lo que ocurre en toda aplicación KDE cada vez que mejoran kdelibs/kdebase. Y por eso no tienes más que pasarte por kde-apps.org y verás surgir aplicaciones muy completas en KDE como la espuma, cada vez más, porque el framework de KDE ha alcanzado ya una madurez considerable.
Sí, sé que Qt no va necesariamente acompañado de KDE, aunque van muy unidos, como bien dices, porque la inmensa mayoría ha congeniado con ese tándem Qt/KDE.
Vale, siempre he pensado si habría alguna razón más para usar kde-libs que la que mencionas... Así que ahora viene mi pregunta... Por lo poco que yo sé hay multitud de librerías (y algunas muy buenas) disponibles por ahí para hacer las mismas cosas que puedes hacer con kde-libs. Es decir... que necesitas parser XML, pues hay librerías independientes para ello... y así con "casi" todo. La diferencia es que mientras en uno sólo necesitar meter la librería en cuestión, ya presente en la mayoría de distribuciones de por sí, con kde-libs te metes un pedazo paquete del cual a lo mejor no usas ni un 20%. Esto no sé si es así, pero de serlo, me parece mucho más eficiente y mejor lo otro. La mayoría de esas librerías están portadas a otros sistemas ó son más fácilmente portables que pasar todo kde-libs. Aparte del tamaño y utilización de las propias librerías.
No dudo que a la hora de programar sea mucho más rápido y más fácil (como tu ejemplo, gracias por el link, lo había visto hace tiempo cuando busqué info sobre Qt y GTK :)) hacerlo con kde-libs que con librerías independientes, pero en mi opinión el software deberái estar portado ó al menos preparado para poder hacerlo si alguien quiere/necesita hacerlo.

Ferdy escribió:No te la puedes pagar A no ser que busques alguna en el ebay....
Oye! Y por qué tú sí y yo no? Eh, eh! Tú que sabes si soy yo el tío al que le han tocado los 115 millones de € de los euromillones?XD. No, la verdad que no, pero vamos que es más por curiosidad que por otra cosa. Las que he visto por ebay tampoco son excesivamente caras, pero claro supongo que serán patatilla porque tampoco me he patado demasiado.

Ferdy escribió:Si queda clara... pero tienes el problema de la portabilidad. Una aplicación que utilice kdelibs solo va a correr en Linux. En ese sentido los wxWidgets tienen mucha mejor pinta.
Hay una cosa que no entiendo de wxWindows... ¿Se supone que con sólo escribir la interfaz una vez ya la puedes portar sin problemas a los distintos sistemas? Las librerías son propias? Vamos, es que no acabo de ver muy bien la diferencia entre wxGTK y GTK, por ejemplo, y eso de que se vea nativo en cada sistema.


En fin... es un ideal imposible eso de tener bonitas aplicaciones gráficas corriendo en multitud de sistemas y arquitecturas? Mono quizá pueda con ello, pero me preocupa el rendimiento que se pierde.

Salu2!
Oye! Y por qué tú sí y yo no? Eh, eh! Tú que sabes si soy yo el tío al que le han tocado los 115 millones de � de los euromillones?. No, la verdad que no, pero vamos que es más por curiosidad que por otra cosa. Las que he visto por ebay tampoco son excesivamente caras, pero claro supongo que serán patatilla porque tampoco me he patado demasiado.


Quién te ha dicho que yo si me las puedo pagar ? :) Debería haber dicho que probablemente no te la vendieran así como así... a particulares es complicado comprarlas nuevas (por pasta y porque por alguna razón no te las venden jeje).

En el eBay solo he visto un par de ofertas buenas (una DS10 y una Miata), el problema es que no los mandaban fuera de los USA. El resto de alpha's yo no me pensaría gastar mucho dinero (i.e. ev4 o ev45 si me apuras).

Hay una cosa que no entiendo de wxWindows... ¿Se supone que con sólo escribir la interfaz una vez ya la puedes portar sin problemas a los distintos sistemas? Las librerías son propias? Vamos, es que no acabo de ver muy bien la diferencia entre wxGTK y GTK, por ejemplo, y eso de que se vea nativo en cada sistema.


Las wxWindows proveen librerías multiplataforma para más cosas que no solo la GUI, eso es lo que las hace tan interesantes. Por otro lado, wxGTK es el 'backend' que usan las wxWindows en Linux. ( AFAIK )

Saludos.Ferdy
FuckingFreaky escribió: Pero las Qt van muy destinadas a ese tipo de diseño... Esto es totalmente personal, ni bueno ni malo, pero yo cada vez soy más simplista. Me gustan las aplicaciones gráficas, pero sencillas y nada "bloated" (será posible de que no me acuerde de la palabra equivalente en español?xD). Pero bueno, esto no es ni bueno ni malo, simplemente personal.


Pues ya me dirás porqué van destinadas a ese diseño. Te aseguro que Qt no te crea de la nada mágicamente widgets con cien botones él solito, ni te pone automáticamente colores chillones ni tiene conciencia propia ni nada de eso ;-)
A mí 'bloated' me parece la última palabra de moda, y ya no me dice nada :P

FuckingFreaky escribió: Sí, pero el tema es que a la hora de programarlo... por lo que yo he entendido, cosas que podrías hacer con funciones estándar de C, tienes que hacerlas con funciones definidas por Qt. Y lo que no recuerdo ya de Qt es si utilizaba absolutamente todas las posibilidades de polimorfismo, herencia, encapsulamiento, etc... No lo recuerdo ya, la verdad.
Te pongo varios extractos de la doc de GTKmm (sí, muy imparcial no es, XD), pero por ver si te aclara ó me aclaras algo ;), que ya digo que no soy ni mucho menos experto.



Si vas a usar Qt, lógicamente emplearás el mecanismo de Signals / Slots propio de Qt para programar tu interfaz. Yo no considero esto negativo por lo siguiente:

1) Es sencillo y cómodo de usar.
2) Hasta donde yo sé, C++ no tiene ninguna manera "estándar" que defina de otro modo lo que Qt logra con Signals / Slots, así que de alguna manera tenían que hacerlo. No sé apenas nada de WxWidgets, no sé cómo lo habrán implementado ellos.
3) Como he dicho, en el fondo es una abstracción que al final crea código C++ puro y duro.

Respecto a herencia, contenedores, y demás críticas que hacen en la página de WxWidgets ... usar Qt no te obliga necesariamente a nada. Todas las características de C++ están disponibles, por supuesto (herencia, polimorfismo...). Tienes libertad para usar QString o std::string según te de la gana. Irónicamente, muchos de los contenedores propios de Qt son más portables que los contenedores estándar STL, porque los compiladores tienen sus pequeñas diferencias a la hora de implementar la STL. Ya que tu aplicación va a depender de Qt de todos modos, ¿por qué no usar contenedores Qt si son útiles? Si te fijas, incluso en el texto que me has citado la gente de WxWidgets admite usar también "extensiones" a C++:

gtkmm has Glib::ustring which has almost the same interface as std::string. This new type exists because the C++ standard does not support UTF8-encoded strings.


Y es que en la práctica, no vas a poder limitarte a usar STL. Por eso existen librerías muy completas que complementan al estándar C++ como
Boost, y algunas de las caracteristicas que ahora se implementan en ellas son tan útiles que serán incorporadas probablemente a la próxima revisión del estándar C++. ¿También se "saltan el estándar" por eso? ;)


FuckingFreaky escribió: Sí, sé que Qt no va necesariamente acompañado de KDE, aunque van muy unidos, como bien dices, porque la inmensa mayoría ha congeniado con ese tándem Qt/KDE.
Vale, siempre he pensado si habría alguna razón más para usar kde-libs que la que mencionas... Así que ahora viene mi pregunta... Por lo poco que yo sé hay multitud de librerías (y algunas muy buenas) disponibles por ahí para hacer las mismas cosas que puedes hacer con kde-libs. Es decir... que necesitas parser XML, pues hay librerías independientes para ello... y así con "casi" todo. La diferencia es que mientras en uno sólo necesitar meter la librería en cuestión, ya presente en la mayoría de distribuciones de por sí, con kde-libs te metes un pedazo paquete del cual a lo mejor no usas ni un 20%. Esto no sé si es así, pero de serlo, me parece mucho más eficiente y mejor lo otro. La mayoría de esas librerías están portadas a otros sistemas ó son más fácilmente portables que pasar todo kde-libs. Aparte del tamaño y utilización de las propias librerías.
No dudo que a la hora de programar sea mucho más rápido y más fácil (como tu ejemplo, gracias por el link, lo había visto hace tiempo cuando busqué info sobre Qt y GTK :)) hacerlo con kde-libs que con librerías independientes, pero en mi opinión el software deberái estar portado ó al menos preparado para poder hacerlo si alguien quiere/necesita hacerlo.


Ninguna librería se ve a ajustar nunca exactamente a lo que tú pides, salvo que la hagas tú mismo para un propósito específico. KDElibs se hizo pensando en un objetivo muy claro que era construir aplicaciones gráficas de escritorio, y aunque no he mirado el código (algún día [jaja] ) es de suponer que habrán puesto énfasis en que tenga una interfaz coherente y uniforme para acceder a todo lo que ofrece. Además tienen funcionalidad para aplicaciones de escritorio que ellos mismos han implementado (Kparts, KIO-Slaves...). Eso va a facilitar la vida del programador y le va a permitir que con sólo usar QT/kdelibs tenga prácticamente todo lo que necesita para construir su aplicación. Tienes que verlo desde el punto de vista del programador. El usuario, por pedir, pediría que todos los programas no tuvieran un sólo bug, que todo su código fuente ocupe menos de 300Kbs, que sean rapidísimos y que funcionen en un 386 con 4MB de RAM, pero está claro que eso no puede ser así. Por supuesto a ti como usuario puede que no te compense tener qt + kdelibs sólo para ejecutar K3B, pero eso ya es otro cantar. No creo que alguien que use un *Box y un puñado de terminales vaya a usar K3B para tostar un CD, pero eso ya va como digo en función del tipo de usuario. Simplemente un usuario así y un entorno de escritorio como KDE son cosas incompatibles ;)

Respecto a la portabilidad, puedes ver en el enlace que he puesto arriba que KDE funciona en muchas plataformas distintas.
episode96 escribió:Pues ya me dirás porqué van destinadas a ese diseño. Te aseguro que Qt no te crea de la nada mágicamente widgets con cien botones él solito, ni te pone automáticamente colores chillones ni tiene conciencia propia ni nada de eso
A mí 'bloated' me parece la última palabra de moda, y ya no me dice nada
Jajaja! A mí es que, qué quieres que te diga, un simple botón Qt me parece ya bloated de por sí, XD. Y lo de bloated, es que esa mañana llevaba todo el rato leyendo en inglés y no me salía "sobrecargado" ó "hinchado" ;).

episode96 escribió:1) Es sencillo y cómodo de usar.
2) Hasta donde yo sé, C++ no tiene ninguna manera "estándar" que defina de otro modo lo que Qt logra con Signals / Slots, así que de alguna manera tenían que hacerlo. No sé apenas nada de WxWidgets, no sé cómo lo habrán implementado ellos.
3) Como he dicho, en el fondo es una abstracción que al final crea código C++ puro y duro.
Hombre, si no hay otra forma de hacerlo y es tan beneficioso ese sistema... la cosa puede cambiar mucho. Pero no entiendo que si como tú dices al final todo eso crea código C++ puro y duro, ¿cómo es que no se puede hacer de una manera estándar de por sí?

episode96 escribió:Respecto a herencia, contenedores, y demás críticas que hacen en la página de WxWidgets ... usar Qt no te obliga necesariamente a nada. Todas las características de C++ están disponibles, por supuesto (herencia, polimorfismo...). Tienes libertad para usar QString o std::string según te de la gana. Irónicamente, muchos de los contenedores propios de Qt son más portables que los contenedores estándar STL, porque los compiladores tienen sus pequeñas diferencias a la hora de implementar la STL. Ya que tu aplicación va a depender de Qt de todos modos, ¿por qué no usar contenedores Qt si son útiles? Si te fijas, incluso en el texto que me has citado la gente de WxWidgets admite usar también "extensiones" a C++:
Sí, si yo te admito que para algo que no tiene el estándar, puedo ver justificable según qué cosa el hacerlo con "código alternativo" ó no.
El tema está en que hasta donde yo sé, tú no puedes derivar un widget de otro en Qt con la herencia estándar de C++, me equivoco? Entre ese tipo de cosas que no se pueden hacer y las que se pueden hacer pero se hacen al estilo Qt... no acaba de convencerme. Es decir... vale, yo puedo usar el "qstring" ese ó "string" normal... ¿qué necesidad hay de hacerlo tal como dice Qt? No nos engañemos... la gente que programa para qt, acabará utilizando todas esas funciones que empiezan por "q", incluso a pesar de que las estándar hagan lo mismo. Y eso al final acaba en un código, en mi opinión, mucho menos claro. Me parece enredarlo todo sin necesidad.

episode96 escribió:Y es que en la práctica, no vas a poder limitarte a usar STL. Por eso existen librerías muy completas que complementan al estándar C++ como
Boost, y algunas de las caracteristicas que ahora se implementan en ellas son tan útiles que serán incorporadas probablemente a la próxima revisión del estándar C++. ¿También se "saltan el estándar" por eso?
Jajaja! Qué putón que eres... ;). Eso sería actualizar el estándar, y a partir de ahí esas cosas pasarían a utilizarse de forma estándar. Sería algo universal y sería algo que todo el mundo podría seguir. Pero es que estás poniendo Qt en el mismo saco que Boost. Aunque no sémucho de ésta última, creo que la diferencia reside en que mientras las qt hacen cosas a la "qt way" ya posibles de forma estándar, las boost se basan en el estándar para ampliar funcionalidad. No es lo mismo inventar algo nuevo que pueda ser incorporado al estándar, que pasar del estándar para hacerlo a tu forma... Al menos así es como he entendido yo la diferencia, aunque puedo estar perfectamente equivocado.

episode96 escribió: Ninguna librería se ve a ajustar nunca exactamente a lo que tú pides, salvo que la hagas tú mismo para un propósito específico. KDElibs se hizo pensando en un objetivo muy claro que era construir aplicaciones gráficas de escritorio, y aunque no he mirado el código (algún día ) es de suponer que habrán puesto énfasis en que tenga una interfaz coherente y uniforme para acceder a todo lo que ofrece. Además tienen funcionalidad para aplicaciones de escritorio que ellos mismos han implementado (Kparts, KIO-Slaves...). Eso va a facilitar la vida del programador y le va a permitir que con sólo usar QT/kdelibs tenga prácticamente todo lo que necesita para construir su aplicación. Tienes que verlo desde el punto de vista del programador. El usuario, por pedir, pediría que todos los programas no tuvieran un sólo bug, que todo su código fuente ocupe menos de 300Kbs, que sean rapidísimos y que funcionen en un 386 con 4MB de RAM, pero está claro que eso no puede ser así. Por supuesto a ti como usuario puede que no te compense tener qt + kdelibs sólo para ejecutar K3B, pero eso ya es otro cantar. No creo que alguien que use un *Box y un puñado de terminales vaya a usar K3B para tostar un CD, pero eso ya va como digo en función del tipo de usuario. Simplemente un usuario así y un entorno de escritorio como KDE son cosas incompatibles
No creo yo que haya que tomarse tan a la ligera las demandas de un usuario... Supongo que sí, que es mucho más faćil programar todo con Qt+kdelibs , y puede que sea muy útil en muchos casos. Lo que pasa es que cuando igual de todo eso que ofrece kdlibs vas a utilizar sólo un 5%... realmente compensa? Es que con esto no sé si digo una barbaridad (por falta de conocimientos), pero... cuando cualquier programa requiere cualquier componente de kdelibs... ha de cargarse el paquete completo? Es que lo que pienso es que muchas veces se pueda dar el caso de utilizar un paquete muy grande que haya que cargar y cargar todo el rato, para realmente utilizar poquísimo de él. Entonces vería mucho más lógico utilizar una librería más pequeña y más destinada a ese propósito que tiene uno.
Como ya digo no sé si es una burrada, porque igual kdelibs puede cargar en memoria sólo las partes que necesita un programa... bueno, no sé, me estoy haciendo un lío con esto, ya lo explicaré mejor.

De todas formas me encantan todos estos temas e hilos, porque siempre acabo sabiendo cosillas interesantes ;).

Gracias! Salu2!
Si se me permite entrar en la discusión y tal, sólo comentar alguna cosa:

Lo de que Qt es "sobrecargado" y GTK+ "sencillo" me parece que no tiene sentido. Yo tengo KDE 3.4 con el tema Plastik, y las aplicaciones se ven bastante sencillitas, los botones, normalitos, con su icono. Alguna sombrita por aquí, algún detallito por allá. Pero desde luego no es un festival de fuegos artificiales.

Por otro lado, yo he visto muchas veces capturas de pantalla de Gnome, con todo sobrecargado a lo bestia, pero exagerado, con unas fuentes estrambóticas y unos colores horribles.

Lo que significa, básicamente, que todo depende del tema que hayas instalado para tus librerías. Más claro el aire.

A partir de ahí, yo ya no puedo entender que a alguien le caiga mal Qt, o GTK+. Yo intento usar aplicaciones Qt en la medida de lo posible, porque ténicamente es el mejor toolkit. De la misma manera que por extensión, KDE es técnicamente el mejor escritorio, K3B la mejor GUI para tostar discos, amaroK el mejor reproductor de música, etc. Pero por eso también navego más con Mozilla y menos con Konqueror, no se me caen los anillos usando Gimp de vez en cuando, etc. A partir de ahí, la "excusa" de que Qt usa C++ con "trampa", no me parecen válidas.

El hecho de usar C con pseudo-objetos como hace GTK+ me parece más chapucero. Cosa que en la práctica se nota, el código en GTK+ es mucho más guarro y difícil de leer. Eso sí, es más fácil que en arquitecturas menos usadas funcione mejor que Qt, porque no tiene por en medio la librería de C++, que siempre tendrá más posibles problemas de compatibilidad que librería estándar de C.

Los horrendos diálogos y enormes botones que trae por defecto GTK+ (con el siempre cachondo botón de Aceptar al lado contrario del que usa todo el mundo) me parecen aún peor.

Y por supuesto, viva la integración entre aplicaciones en el escritorio y vivan las kdelibs, que han permitido que todas las aplicaciones en kde se comuniquen entre sí como si las hubiera hecho la misma persona, tal y como ya se ha comentado en el hilo.

Si ya digo, que puestos a sacar defectos... buf, los que se quieran y más.

salu2

P.S.: el talibán Qtero ataca de nuevo XD
FuckingFreaky escribió: Jajaja! A mí es que, qué quieres que te diga, un simple botón Qt me parece ya bloated de por sí, XD. Y lo de bloated, es que esa mañana llevaba todo el rato leyendo en inglés y no me salía "sobrecargado" ó "hinchado" ;).

Eso son tus ojos. No todos los tenemos igual ;)


FuckingFreaky escribió: Hombre, si no hay otra forma de hacerlo y es tan beneficioso ese sistema... la cosa puede cambiar mucho. Pero no entiendo que si como tú dices al final todo eso crea código C++ puro y duro, ¿cómo es que no se puede hacer de una manera estándar de por sí?


¿A qué llamas manera estándar? Te repito que el estandar C++ no especifica nada sobre cómo hacer ese tipo de cosas en una interfaz gráfica. Es un atajo, simplemente, como lo es una macro de C definida en tu programa que luego un preprocesador sustituye por código C corriente. ¿Por qué te parece tan extraño, negativo y fuera del "estándar" que Qt adopte esta idea cuando se lleva haciendo décadas?

FuckingFreaky escribió: Sí, si yo te admito que para algo que no tiene el estándar, puedo ver justificable según qué cosa el hacerlo con "código alternativo" ó no.
El tema está en que hasta donde yo sé, tú no puedes derivar un widget de otro en Qt con la herencia estándar de C++, me equivoco?


Pues sí, te equivocas. Todo widget Qt es un objeto normal y corriente en C++. Por supuesto puedes heredar de él si te da la gana. Pero no me creas a mí. Como ya te dije, cógete cualquier ejemplo Qt por tonto que sea y verás cómo al final todo ha de compilarlo g++.

FuckingFreaky escribió:Entre ese tipo de cosas que no se pueden hacer y las que se pueden hacer pero se hacen al estilo Qt... no acaba de convencerme. Es decir... vale, yo puedo usar el "qstring" ese ó "string" normal... ¿qué necesidad hay de hacerlo tal como dice Qt? No nos engañemos... la gente que programa para qt, acabará utilizando todas esas funciones que empiezan por "q", incluso a pesar de que las estándar hagan lo mismo. Y eso al final acaba en un código, en mi opinión, mucho menos claro. Me parece enredarlo todo sin necesidad.


Claro que vas a usar objetos de Qt, de eso se trata. Tienes varios motivos para hacerlo: el de la portabilidad que ya comenté, más funcionalidad que la ofrecida en las clases estándar orientada específicamente a una GUI, o simplemente mayor facilidad de uso. Si no quieres que tu aplicación acabe ligada a Qt... no uses Qt. Pero con ese mismo argumento te cargas todas las librerías existentes. ¿Vas a hacerlo tú todo de cero en C puro y duro en lugar de emplear las estructuras ya predefinidas en glibc y GTK? ¿A que no? Creo que tienes una idea de "estándar" equivocada. Si Qt redefiniera "string" en el espacio de nombres std implementándolo a su bola (no definiendo iteradores compatibles STL, por ejemplo) estaría de acuerdo contigo, pero no es el caso. Simplemente Qt te ofrece objetos útiles adicionales para que sean funcionales y cómodos de usar, que es lo que una buena biblioteca debe ofrecer entre otras cosas.


FuckingFreaky escribió: Jajaja! Qué putón que eres... ;). Eso sería actualizar el estándar, y a partir de ahí esas cosas pasarían a utilizarse de forma estándar. Sería algo universal y sería algo que todo el mundo podría seguir. Pero es que estás poniendo Qt en el mismo saco que Boost. Aunque no sémucho de ésta última, creo que la diferencia reside en que mientras las qt hacen cosas a la "qt way" ya posibles de forma estándar, las boost se basan en el estándar para ampliar funcionalidad. No es lo mismo inventar algo nuevo que pueda ser incorporado al estándar, que pasar del estándar para hacerlo a tu forma... Al menos así es como he entendido yo la diferencia, aunque puedo estar perfectamente equivocado.


¿Y si lo que Boost ofrece no se incorpora al estándar ya es malo usarlo? Boost te ofrece más opciones al igual que lo hace Qt. Repito de nuevo, Qt no redefine C++ como lenguaje.

FuckingFreaky escribió: No creo yo que haya que tomarse tan a la ligera las demandas de un usuario...


¿De qué usuario estamos hablando? No vas a poder contentar a todos. Como ya he dicho en mi anterior mensaje, ni KDE ni Qt están destinados a gente que quiere usar aplicaciones de terminal.

FuckingFreaky escribió: Supongo que sí, que es mucho más fácil programar todo con Qt+kdelibs , y puede que sea muy útil en muchos casos. Lo que pasa es que cuando igual de todo eso que ofrece kdlibs vas a utilizar sólo un 5%... realmente compensa? Es que con esto no sé si digo una barbaridad (por falta de conocimientos), pero... cuando cualquier programa requiere cualquier componente de kdelibs... ha de cargarse el paquete completo? Es que lo que pienso es que muchas veces se pueda dar el caso de utilizar un paquete muy grande que haya que cargar y cargar todo el rato, para realmente utilizar poquísimo de él. Entonces vería mucho más lógico utilizar una librería más pequeña y más destinada a ese propósito que tiene uno.
Como ya digo no sé si es una burrada, porque igual kdelibs puede cargar en memoria sólo las partes que necesita un programa... bueno, no sé, me estoy haciendo un lío con esto, ya lo explicaré mejor.


Evidentemente kdelibs es un nombre genérico que agrupa a todo ese conjunto de bibliotecas. Por supuesto está dividida en módulos, y se enlazan y cargan con tu programa según sea necesario. Y créeme... las librerías compartidas se inventaron por algo y no son nada nuevo. Lo que pasa es que en Linux podemos elegir y hay mucho donde elegir. Si usaras un SO donde vinieran preinstaladitas y fueran necesarias para todo no te darías ni cuenta y no te estarías planteando esto. Claro que entonces serías otro tipo de usuario != al que eres ;)
Briareos_H escribió:P.S.: el talibán Qtero ataca de nuevo XD


Jur, pensé que yo era el único QT-radical de por aquí. Con todo el tema de este de EOL caido perdí el hilo de vista, pero vamos, Briareos ha expuesto más o menos lo mismo que pensaba decir.

Si QT te parece recargado, cambia o bien el tema de KDE en el Centro de Control o el tema propio de las QT con qtconfig.

Gimp y alguna otra GTK-app (xmms) me hacen instalar las gtk2 e incluso gtk1 para que funcionen y no entiendo por qué, porque con qt sólo tengo una única versión instalada. No me hace gracia instalar tanta librería, pero tampoco es que las odie.

Por supuesto, QT/KDE/KWin puede parecer muy recargado y con infinidad de cosas al lado de otros como Fluxbox, pero no olvidemos que es sólo un WM, y no un DE. A partir de ahí, es todo un mundo, y si no es por temas de portabilidad y otras historias como le pasa a Ferdy, no hay razón para desconsiderar a KDE como el DE más completo e integrado del momento.

Saludos.
24 respuestas