Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: h0oke en 1 Abril 2010, 23:49 pm



Título: Python Interfaces
Publicado por: h0oke en 1 Abril 2010, 23:49 pm
Qué recomendarían? Python + QT o Python + TCL/TK.

Sé que la principal diferencia es que el primero debe ser compilado, y el segundo es interpretado, con la que estaría muy en juego la velocidad...


Título: Re: Python Interfaces
Publicado por: leogtz en 1 Abril 2010, 23:58 pm
También está Gtk, no he probado ninguna opción, pero el otro día viendo un script con Gtk, se me hizo bastante sencillo usar Gtk.


Título: Re: Python Interfaces
Publicado por: O-LLOS-O en 2 Abril 2010, 10:32 am
Yo ahora estoy aprendiendo PyQt y est bastante bien mira te dejo unos links con tutoriales:


<b>PyQt4</b>->http://zetcode.com/tutorials/pyqt4/
<b>PyGTK</b>-->http://zetcode.com/tutorials/pygtktutorial/
<b>wxPython</b>-->http://zetcode.com/wxpython/



Título: Re: Python Interfaces
Publicado por: ^Tifa^ en 3 Abril 2010, 18:27 pm
Qué recomendarían? Python + QT o Python + TCL/TK.

Sé que la principal diferencia es que el primero debe ser compilado, y el segundo es interpretado, con la que estaría muy en juego la velocidad...

PyQt No tiene que ser compilado  ;)  Lo que ocurre es que PyQt ya se programa directamente con POO incluida (Puesto que las librerias QT estan meramente hechas en C++) pero, el modulo Qt para Python es un binding me parece, no trabajas de forma directa leyendo las librerias de Qt (Como harias con el lenguaje C++) sino mas bien son un simple binding en fin...  :P    No tienes que compilar nada, recuerda que todo lo lee el interprete de Python.

Python/Tk Tiene 2 maneras de ser programado con este, de forma estructurada o Orientada a Objetos (POO), es bastante simple de programar con este (Sobretodo si ya previamente manejas algun binding en otro lenguaje con Tk).

AHora por estetica mas que todo, si yo decidiese programar aplicaciones graficas en Python procederia a utilizar el binding Qt. Mas por estetica (Me gusta como se ven los widgets de Qt) sobre los widgets de Tk.

 ;)


Título: Re: Python Interfaces
Publicado por: h0oke en 3 Abril 2010, 20:15 pm
Muy cierto eso último  ;D


Título: Re: Python Interfaces
Publicado por: frog-er en 3 Abril 2010, 20:24 pm
Se que nada que ver aqui esta pregunta aqui pero para PHP es igual el uso de la libreria GTK para programar interfaces que en Python ???


Título: Re: Python Interfaces
Publicado por: ^Tifa^ en 3 Abril 2010, 20:44 pm
Se que nada que ver aqui esta pregunta aqui pero para PHP es igual el uso de la libreria GTK para programar interfaces que en Python ???

Explicate un pelin mejor para yo no responder algo que a lo mejor no era lo que solicitabas.  :P


Título: Re: Python Interfaces
Publicado por: leogtz en 3 Abril 2010, 21:04 pm
Creo que para PHP también gtk y Qt.


Título: Re: Python Interfaces
Publicado por: ~ Yoya ~ en 3 Abril 2010, 21:09 pm
a mi no me gusta programar interfaces en lenguajes scripting, prefiero lenguajes compilados...


Título: Re: Python Interfaces
Publicado por: leogtz en 3 Abril 2010, 21:16 pm
a mi no me gusta programar interfaces en lenguajes scripting, prefiero lenguajes compilados...
¿Por qué no?


Título: Re: Python Interfaces
Publicado por: Blitzkrieg' en 3 Abril 2010, 21:28 pm
Yo los lenguajes de Scripting los uso para cositas sencillas y rapidas, para todo lo demas existe MasterCard  :-X


Título: Re: Python Interfaces
Publicado por: ~ Yoya ~ en 3 Abril 2010, 21:43 pm
a mi no me gusta programar interfaces en lenguajes scripting, prefiero lenguajes compilados...
¿Por qué no?
Porque tengo mas dependencias y necesitaria instalar algunos modulos/librerias que no vienen por defecto, pero en un lenguaje compilado es mas portatil.


Título: Re: Python Interfaces
Publicado por: gabymar en 3 Abril 2010, 21:46 pm
a mi me gusta GTK.
   Saludos : Gaby


Título: Re: Python Interfaces
Publicado por: ^Tifa^ en 3 Abril 2010, 22:27 pm
a mi no me gusta programar interfaces en lenguajes scripting, prefiero lenguajes compilados...
¿Por qué no?
Porque tengo mas dependencias y necesitaria instalar algunos modulos/librerias que no vienen por defecto, pero en un lenguaje compilado es mas portatil.

Enserio??? y si programo en C/GTK una interfaz en Linux y compilo en mi Linux, piensas que esa aplicacion es totalmente compatible con otra version Linux??? Suponte que en mi Linux tengo GTK 1.x y la aplicacion la hice con esta libreria... que me dices si porto el codigo fuente a otro Linux que tiene GTK 2.x (conflictos a la hora de compilar, sobretodo porque hay muchas funciones de GTK que estaran obsoletas  :xD ) y sea como sea debe existir las librerias GTK en mi otro Linux.. y que me dices si utilizo llamadas al sistema en mi codigo, y ese codigo fuente lo paso a Windows?  :-X 

Que es mas grande (en cuestion de tamanio) el paquete completo de librerias Qt o GTK o un binding para php, perl, python, etc de Qt o GTK???

Siempre he considerado mas facil de portar  una aplicacion scripting que una compilada. Por un lado entiendo que a lo mejor no te guste la aplicacion scripting porque todo dios ve el codigo fuente legible, pero existen mecanismos para ese codigo fuente en lenguaje scripting compilarlo a objeto y asi nadie ve tu codigo (o no de una forma tan directa ). Tambien entiendo tu punto sobre la rapidez de desenvolvimiento que manejaria una interfaz compilada en tu hardware, que una interfaz interpretando lineas de codigo para ejercer algo (Es mas rapido para el computador leer un binario compilado que esperar que un interprete lea lineas de instrucciones y las convierta a binario para el computador lol  :xD ) Pero considerando la tecnologia actual, donde los equipos se desenvuelven con mayor velocidad que antes (por poseer mas ram, mas velocidad de procesador , etc) ya las interfaz hechas en scripting estan pasando a historia la cuestion de lentitud de segundos para ejercer una funcion vs la respuesta de la misma funcion en un lenguaje compilado.

PD: Y si Leo existen esos bindings para PHP.


Título: Re: Python Interfaces
Publicado por: ~ Yoya ~ en 3 Abril 2010, 22:48 pm
jajaja, pero no puedo ejecutar un programa en GTK codeado en un lenguaje scripting como puede ser perl con las dependencias por defecto, porque nececitare instalar los modulos.

Si programas para x version de GTK, obviamente funcionara para dicha version porque es para esa version que lo programas. El entorno que hablo esque puedas llevar dos archivos, uno scripting y otro compilado. y en una pc puedes ejecutar el ejecutable en cambio en otra aunque tienes el interpretador no puedes ejecutarlo por falta de dependencias y si no tienes intalado el interprete por defecto la jodes XD.

Y no es buena idea compilar un source codeado en un lenguaje scripting porque pesera mucho mas que sin compilar y claro, es una ventaja de los lenguajes interpretados  que no ocupan mucho tamaño....


Título: Re: Python Interfaces
Publicado por: ^Tifa^ en 4 Abril 2010, 00:34 am
Citar
El entorno que hablo esque puedas llevar dos archivos, uno scripting y otro compilado.

Disculpame Yoya, pero donde dijiste eso  :huh:   :huh:  yo lei que tu escribiste:

Citar
a mi no me gusta programar interfaces en lenguajes scripting, prefiero lenguajes compilados...

Deduje por tu afirmacion anterior, que solo te gusta de manera compilada... pero no he visto donde indicaste portar los 2 (compilado y scripting).

Citar
y en una pc puedes ejecutar el ejecutable en cambio en otra aunque tienes el interpretador no puedes ejecutarlo por falta de dependencias y si no tienes intalado el interprete por defecto la jodes XD.

Con lo anterior estas diciendo... que si yo compilo en mi Linux una aplicacion hecha con C/GTK donde me base en la libreria GTK 1.x puedo copiar esa aplicacion a otra distribucion Linux y todo funcionara de lujo? (Recurdarte, que las aplicaciones requieren dependencias, si yo no tengo todas las librerias necesarias para ejecutar una aplicacion sea esta compilada o scripting, no va a funcionar. ) En ambos casos (compilado y scripting) vas a necesitar por obligacion las dependencias o librerias en la PC donde quieras ejecutar esa aplicacion, a no ser claro esta que compiles de manera embebida librerias y codigo fuente.. y hacer esto es poseer una aplicacion final ENORME. En ambos casos puedes copiar perfectamente todas las dependencias requeridas de una aplicacion scripting tambien, y crear un archivo que verifique que modulos existen o no disponibles en tu PC y los que falten que el script de forma automatica lo descargue he instale (en los interpretes al menos en Perl obtener dependencias no es nada complicado sobretodo si usas CPAN). Sin embargo, una aplicacion que requieras compilar, puedes hacer el script claro esta que busque en tu PC las dependencias no existen la busque y la descargues.. pero no es tarea general del programador hacer esto, por ende el usuario debera buscar las dependencias por internet una por una y mucho cuidado con no romper librerias de su sistema a la hora de actualizar o desactualizar una dependencia (No ocurre lo mismo en lenguaje scripting partiendo que los modulos para interfaz grafica en este caso, no dependen de librerias del sistema, esto es bueno para evitar romper cosas de tu sistema o conflictos).

Citar
Y no es buena idea compilar un source codeado en un lenguaje scripting porque pesera mucho mas que sin compilar y claro, es una ventaja de los lenguajes interpretados  que no ocupan mucho tamaño....

No es una buena idea por el tamano, pero ahi caemos otra vez en lo que expuse anteriormente, quieres que tu aplicacion compilada funcione donde sea? deberas embeber todas las librerias no estandares y compilar dicha aplicacion que tambien terminaria en un descomunal tamanio. O descargar de manera manual todas las dependencias en cada PC donde vayas a ejecutar dicha aplicacion, el proceso puede ser mas incomodo y largo porque es a mano buscando en Google, cuando en una aplicacion scripting basta con abrir la consola CPAN y indicar que paquetes quieres y esta sola indaga en el repositorio todas las dependencias de este y de forma automatica baja he instala.

Un saludo.


Título: Re: Python Interfaces
Publicado por: ~ Yoya ~ en 4 Abril 2010, 00:42 am
Que xica xD.
Citar
a mi no me gusta programar interfaces en lenguajes scripting, prefiero lenguajes compilados...
Citar
El entorno que hablo esque puedas llevar dos archivos, uno scripting y otro compilado.
Lo que trato de decir esque un lenguaje compilado es mas portátil que un lenguaje interpretado.
Y para programar en interfaces yo prefiero un lenguaje compilado por la razón que son mas PORTÁTILES.
Ya que no siempre vienen por defecto el interprete instalado....



Título: Re: Python Interfaces
Publicado por: ^Tifa^ en 4 Abril 2010, 02:00 am
Bueno se respeta tu opinion ~Yoya~  aunque no la comparta yo al menos 100%   :rolleyes:   :rolleyes: