Aunque Python tienen muchas ventajas, también tiene algunos puntos debiles. Por ejemplo, las limitaciones de Python se reducen al diseño, el riesgo de romper el código utilizado en los sistemas de producción y alienar partes considerables de su gran base de usuarios. Además, no es posible correrlo en un navegador. ¿Por qué?
Por esa razón y muchas otras más no menos importantes, es que te recomendamos este curso de python profesional, el cual lo imparten de manera presencial o en linea, con instructores expertos en este lenguaje de programación.
El intérprete de Python y su interfaz binaria de aplicación (ABI) en lenguaje C y la interfaz de protocolo de aplicación (API) han obstaculizado la innovación para ejecutrar navegador. Si bien los desarrolladores de JavaScript pueden incrustar su código en un navegador y hacer que cada pestaña ejecute su propio motor de JavaScript, Python no puede debido a la ABI actual, que está expuesta a extensiones de Python como NumPy. Esto evita que tenga dos versiones de su intérprete en el mismo espacio de proceso en lo que se conoce como "bloqueo de intérprete global".
Si tiene dos intérpretes, compartirían el mismo objeto. Entonces, si la 'pestaña uno' modificara un objeto, la 'pestaña dos' también observaría esa modificación. Por el momento, ejecutar Python en un navegador es impopular de todos modos, esa limitación tiene otras ramificaciones para su futuro y uso como lenguaje de programación general.
Hubiera sido bueno si pudiéramos ejecutar múltiples procesos y tener uno anclado a un núcleo de CPU y hacer el paso de mensajes para obtener el bloqueo del intérprete global. Pero básicamente la exposición de esta API C evita una amplia gama de estas cosas.
Para implementar esto, tendría que quitar o cambiar la API C, lo que rompería el ecosistema más grande de Python: NumPy, skippy y todo el entorno de aprendizaje automático. Aunque muchos opinan que los esfuerzos para eliminar el bloqueo del intérprete global fallan porque causarían problemas a extensiones como NumPy, otros piensan que en poco tiempo habrá desarrollos interesantes.
Es menos un desafío técnico central que uno de hacer que suficientes personas se preocupen lo suficiente por una innovación para un grupo que podría ser dolorosa para otro grupo en el ecosistema. Si lo que estás haciendo va a quebrar a NumPy, y eso no va a beneficiar a la comunidad de NumPy, no está claro si obtendrás el respaldo para ejecutar python en navegadores eso.
En cambio, la comunidad de Python se ha movido hacia el aprendizaje automático y la ciencia de datos, que está menos preocupada por los problemas de rendimiento de Python porque pueden superarse moviendo código a una GPU o un clúster donde muchos procesos se ejecutan de forma independiente. Eso significa que Python ya no se usa en juegos de computadora, no se compila en el navegador y también se usa con menos frecuencia en aplicaciones web.
Sin embargo, algunas empresas de desarrollo del calibre de Windows ya estan trabajando en software especializado para solucionar esta limitante. Si crees que esta es una buena modificación para Python, imcluso podrías crear tu PEP sobre el tema.
Diseño Web Grupo Codesi