Python PyQt vs Kivy (Spanish)
Tags: python, pyqt, spanish, espanol
Published: 2019-11-07 14:46:40

<a href="https://kivy.org/#home">Kivy</a> es una librería Python destinada a ser utilizada para establecer aplicaciones ricas en medios con tecnología multitáctil. El objetivo es permitir un diseño de interacción rápido y sencillo, junto con la creación rápida de prototipos, código reutilizable y funcionalidades desplegables. 

Kivy está diseñado en Python basado en OpenGL, y puede ser utilizado con varios dispositivos de entrada como un ratón, ratón dual, TUIO, productos de Apple, y muchos más. Junto con <a href="https://riverbankcomputing.com/software/pyqt/intro/">PyQt</a>, estos dos están etiquetados como frameworks full-stack y herramientas de desarrollo móvil multiplataforma. 
 
Tanto para PyQt como para Kivy no puedes simplemente saltar, necesitas saber los <a href="https://pythonbasics.org">bases de Python</a>.

## PyQt vs. Kivy - ¿cuál usar?

Ambos marcos tienen varias ventajas, dependiendo de cuáles sean sus objetivos de programación. 

PyQt5 (<a href="https://pythonbasics.org/pyqt-hello-world/">Tutorial</a>) es el que funciona tanto en Android como en iOS, junto con el software ya establecido como Windows, Linux o varias plataformas UNIX. 

De todos modos, para determinar cuál es mejor para su proyecto, debe tener en cuenta la siguiente información sobre PyQt vs. Kivy.
 
## Las ventajas de usar Kivy

Kivy (<a href="https://kivy.org/doc/stable/tutorials/pong.html#getting-started">Tutorial</a>) representa una librería Python de código abierto diseñada para el rápido desarrollo de una aplicación que requiere interfaces de usuario innovadoras. Estos incluyen las funcionalidades multitáctiles que son esenciales para las aplicaciones móviles.

<img src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fi.ytimg.com%2Fvi%2FcSxUujtxnOM%2Fmaxresdefault.jpg&f=1&nofb=1" alt="kivy with mobile look">

Kivy funciona sin problemas en Linux, Windows, OS X, Android y Raspberry Pi. Y una ventaja significativa del uso de los sistemas operativos de Kivy es que puede ejecutar el mismo código en todas las plataformas compatibles. 

Además, el lenguaje Kivy es excelente para ofrecer a la sintaxis del programa Kivy una mejor representación de todas las funcionalidades presentes en el programa, incluyendo clases, clases heredadas o configuración de widgets. 

Todo esto se consigue en forma de árbol, que es algo más preciso y organizado que otras herramientas de programación de aplicaciones. 

<img src="https://res.cloudinary.com/practicaldev/image/fetch/s--s8_lu9hD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://kivy.org/slides/tf_process_montage.png">

Una desventaja de usar Kivy con lenguaje kV podría ser que este lenguaje por sí solo no es adecuado para compilar su código, también. Por lo tanto, necesitará mezclar los lenguajes py y kV para acceder a aplicaciones complejas con la ayuda de algoritmos específicos.
 
## Ventajas de usar PyQt

<a href="https://riverbankcomputing.com/software/pyqt/intro/">PyQt</a> representa un conjunto de conexiones Python v2 y v3 para el marco de trabajo de la aplicación Qt. Puede ser utilizado en todas las plataformas que soportan Qt, como Windows, OS X, Linux, iOS y Android. En la mayoría de los casos, PyQt5 está vinculado a Qt v5, mientras que PyQt4 está soportado por Qt v4, y crea en estrecha relación con Qt v5. 

<img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UGDPh6f1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/uoaczf4y6i6u4xdyexoo.png">

PyQt se basa en fijaciones, que se fijan mediante un conjunto de módulos Python de más de 1.000 clases. 

La mayoría de las empresas que desarrollan aplicaciones confían mucho en PyQt, ya que ofrece una amplia gama de funcionalidades y herramientas para la adaptabilidad. 

Sin embargo, debido al vasto conocimiento y a la fuerte curva de aprendizaje que se necesita, la mayoría de los programadores centran su atención en la programación de Kivy, que es fácil de usar. 
 
<img src="https://res.cloudinary.com/practicaldev/image/fetch/s--M8MsZdQc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://external-content.duckduckgo.com/iu/%3Fu%3Dhttp%253A%252F%252Fi.stack.imgur.com%252Fq788I.jpg%26f%3D1%26nofb%3D1">

De todos modos, a la hora de elegir entre Kivy y PyQt, todo se trata del conocimiento del programador y de su capacidad de adaptación. Ambos frameworks funcionan muy bien para distintas aplicaciones, pero al mismo tiempo, Kivy es el que proporciona un rápido desarrollo de aplicaciones que representan grandes interfaces de usuario y funcionalidades.