¿Qué es mejor para los principiantes aprender el lenguaje C primero o Python?
Python es un lenguaje de programación escrito por el famoso "Tío Tortuga" Guido van Rossum durante el periodo navideño de 1989 para acabar con la aburrida Navidad.
Actualmente, existen casi más de 600 lenguajes de programación en el mundo, pero sólo existen unos 20 lenguajes de programación populares. Si ha oído hablar de las clasificaciones TIOBE, podrá hacerse una idea de la popularidad aproximada de los lenguajes de programación. Este es el cuadro de cambios de los 10 lenguajes de programación más utilizados en los últimos 10 años:
En general, estos lenguajes de programación tienen sus propios méritos. El lenguaje C es un lenguaje compatible con el hardware que se puede utilizar para escribir sistemas operativos. Por lo tanto, el lenguaje C es adecuado para desarrollar programas que buscan velocidad de ejecución y aprovechan al máximo el rendimiento del hardware. Y Python es un lenguaje de programación de alto nivel que se utiliza para escribir aplicaciones.
Cuando comienzas el desarrollo de software real en un lenguaje, además de escribir código, también necesitas muchas cosas básicas ya preparadas que se hayan escrito para ayudarte a acelerar el progreso del desarrollo. Por ejemplo, si desea escribir un cliente de correo electrónico, si comienza desde abajo y escribe el código relacionado con los protocolos de red, probablemente no se desarrollará en un año y medio. Los lenguajes de programación de alto nivel generalmente proporcionan una biblioteca de códigos básicos relativamente completa a la que puede llamar directamente, como la biblioteca SMTP para protocolos de correo electrónico y la biblioteca GUI para entornos de escritorio. Desarrolle un correo electrónico sobre la base de estas bibliotecas de códigos existentes. El cliente se puede desarrollar en cuestión de días.
Python nos proporciona una biblioteca de códigos básicos muy completa, que abarca una gran cantidad de contenidos como redes, archivos, GUI, bases de datos, textos, etc. Se llama vívidamente "baterías integradas (baterías incluidas). )". Desarrolladas en Python, muchas funciones no necesitan escribirse desde cero, solo use las ya preparadas.
Además de las bibliotecas integradas, Python también tiene una gran cantidad de bibliotecas de terceros, que son cosas desarrolladas por otros para que usted pueda usarlas directamente. Por supuesto, si el código que desarrolla está bien encapsulado, también puede usarse como una biblioteca de terceros para que otros lo usen.
Muchos sitios web grandes se desarrollan utilizando Python, como YouTube, Instagram y Douban nacional. Muchas grandes empresas, incluidas Google, Yahoo, etc., e incluso la NASA (Administración Nacional de Aeronáutica y del Espacio) utilizan Python ampliamente.
Uncle Gui posiciona a Python como "elegante", "claro" y "simple", por lo que los programas de Python siempre parecen simples y fáciles de entender. Los principiantes que aprenden Python no solo comenzarán fácilmente, sino que también profundizarán. en el futuro, puede escribir esos programas muy, muy complejos.
En general, la filosofía de Python es ser simple y elegante, intentar escribir código que sea fácil de entender e intentar escribir la menor cantidad de código posible. Si un programador senior te muestra que ha escrito un código oscuro que a menudo tiene decenas de miles de líneas, puedes reírte de él tanto como quieras.
¿Qué tipos de aplicaciones es adecuado desarrollar Python?
La primera opción son aplicaciones de red, incluidos sitios web, servicios en segundo plano, etc.;
La segunda es muchos gadgets de necesidades diarias, incluidas las tareas de script requeridas por los administradores del sistema, etc.;
El otro es volver a empaquetar programas desarrollados en otros idiomas para facilitar su uso.
Finalmente, hablemos de las deficiencias de Python.
Cualquier lenguaje de programación tiene defectos y Python no es una excepción. Habiendo dicho las ventajas, ¿cuáles son las desventajas de Python?
La primera desventaja es que se ejecuta lentamente, lo cual es muy lento en comparación con los programas en C. Debido a que Python es un lenguaje interpretado, su código se traducirá línea por línea a código de máquina que la CPU pueda entender durante la ejecución. Este proceso de traducción lleva mucho tiempo, por lo que es muy lento. El programa C se compila directamente en código de máquina que la CPU puede ejecutar antes de ejecutarse, por lo que es muy rápido.
Pero una gran cantidad de aplicaciones no necesitan una velocidad de ejecución tan rápida, porque los usuarios simplemente no pueden sentirla.
Por ejemplo, si desarrolla una aplicación de red para descargar MP3, el tiempo de ejecución del programa C es de 0,001 segundos, mientras que el tiempo de ejecución del programa Python es de 0,1 segundos, lo que es 100 veces más lento. Sin embargo, debido a que la red es más lenta, hay que esperar 1 segundo. ¿Crees que el usuario puede sentir la diferencia entre 1.001 segundos y 1,1 segundos? Esto es como un coche de carreras de F1 y un taxi normal conduciendo por el tercer anillo de Beijing. La velocidad del auto de carreras de F1 es de hasta 400 kilómetros por hora, debido al atasco en el Tercer Anillo, la velocidad es de solo 20 kilómetros por hora, por lo tanto, como pasajero, su velocidad percibida es siempre de 20 kilómetros. por hora.
La segunda desventaja es que el código no se puede cifrar. Si desea publicar su programa Python, en realidad publica el código fuente. Esto es diferente del lenguaje C. El lenguaje C no necesita publicar el código fuente. Solo necesita publicar el código de máquina compilado (es decir, el xxx común). .exe que ve en Windows). Es imposible deducir el código C del código máquina. Por lo tanto, los lenguajes compilados no tienen este problema, mientras que los lenguajes interpretados deben liberar el código fuente.
Esta desventaja se limita a cuando el software que desea escribir necesita venderse a otros para ganar dinero. La buena noticia es que en la era actual de Internet, cada vez hay menos modelos de negocio que se basan en la venta de licencias de software, y cada vez hay más modelos que se basan en la venta de sitios web y aplicaciones móviles. Este último modelo no requiere proporcionar la fuente. código a otros.
Además, el movimiento de código abierto que ahora está en pleno apogeo es consistente con el espíritu de libertad y apertura en Internet. Hay innumerables códigos fuente abiertos excelentes como Linux en Internet. La eficacia del código que escribimos tiene un "valor comercial" muy grande. La razón más importante por la que las grandes empresas no están dispuestas a abrir su código es que el código está muy mal escrito. Una vez que sea de código abierto, nadie se atreverá a utilizar sus productos.
Por supuesto, Python tiene otras pequeñas deficiencias, ignórelas, no las enumeraré una por una