¿Cuáles son los lenguajes informáticos más utilizados? ¿Alguien puede clasificarlos por orden de dificultad?
1. C
La ventaja del lenguaje C es que tiene una alta eficiencia operativa y está cerca del lenguaje de máquina. Es especialmente adecuado para los siguientes tipos de programas:
1. Programas que requieren una velocidad de ejecución muy alta.
2. Programas estrechamente relacionados con el kernel del sistema operativo.
3. Programas que deben ser portados a múltiples sistemas operativos.
Además, existe una razón importante para aprender el lenguaje C, es decir, puede ayudarnos a aprender a pensar en problemas a nivel de hardware. Si quieres hacer de la programación tu carrera, debes aprender C.
La mayor desventaja de C es que durante el proceso de programación, hay que dedicar mucho tiempo a pensar en cuestiones muy complejas de gestión de recursos de hardware que no tienen ninguna relación con el problema que se desea resolver.
2. C++
C++ se lanzó a mediados de la década de 1980, admite OO (programación orientada a objetos) y originalmente estaba destinado a ser un reemplazo del lenguaje C.
Pero no logra hacer nada, por las siguientes razones:
1. No resuelve el problema de administración de memoria, aunque es mejor que C.
2. La estandarización falló. Cada compilador solo admite un subconjunto de su propia elección, lo que resulta en un menor rendimiento multiplataforma que C.
3. Demasiado detallado y complicado. La complejidad de C++ supera la complejidad de C y OO combinados.
4. OO no aporta muchas ventajas, pero sí algunos efectos secundarios, como capas de pegamento gruesas y un tamaño de código enorme.
En general, las ventajas de C++ son la eficiencia del programa y las capacidades de programación orientada a objetos. Lo malo es que fomenta diseños complejos.
3. Shell
Los programas Shell son fáciles de escribir y se pueden desarrollar muy rápidamente para tareas sencillas.
A medida que un programa crece, se vuelve menos adecuado, más difícil de mantener y se vuelve muy propietario (sólo utilizable en su propia máquina) porque el shell tiene que llamar a varios programas externos, no hay garantía de que todos La máquina tiene estos programas instalados igualmente.
El Shell más común es bash. Algunas de sus reglas de sintaxis son muy confusas y pueden producir código difícil de leer. Además, el shell sólo se puede utilizar en Unix y no puede ser multiplataforma.
Los mejores usos de Shell son los siguientes:
1. Realizar tareas simples de administración del sistema.
2. Escriba un script de inicialización cuando se inicie el sistema.
3. Como contenedor para programas desarrollados en otros lenguajes.
4. Perl
Perl fue lanzado en 1987 y es básicamente un Shell mejorado.
Sus mayores puntos fuertes son sus poderosas capacidades de procesamiento de texto, su incomparable soporte de expresiones regulares y soporte interno para un conjunto completo de API de Unix, lo que reduce significativamente la necesidad de C.
Las principales deficiencias de Perl son que algunas partes son feas e irremediables, y otras son demasiado complejas. Cuando el tamaño del programa aumenta, se deben cumplir estrictamente las convenciones para garantizar la modularidad y la controlabilidad del diseño, lo que dificulta el mantenimiento.
5. Python
Python fue lanzado en 1991. Es un lenguaje de programación estrechamente integrado con el lenguaje C.
Las ventajas de Python son que es muy limpio y elegante, fomenta un código claro y legible y es fácil de aprender y usar. Ofrece la posibilidad de programación orientada a objetos, pero no impone esta elección a los diseñadores; ; tiene una excelente modularidad. Las características, como Java, son adecuadas para proyectos grandes y complejos que requieren desarrollo colaborativo. En muchos sentidos, es más sencillo que Java. Además, el estándar Python incluye soporte para muchos protocolos de red, lo que lo hace muy adecuado para tareas de administración de redes.
Las principales desventajas de Python son la baja eficiencia y la lentitud. No sólo no puede competir con C/C++ en términos de velocidad de ejecución, sino que también es inferior a otros lenguajes de scripting importantes. Sin embargo, esto en realidad no es un problema grave. A veces, los retrasos en la red o el disco compensarán por completo el tiempo consumido por el propio Python. Y debido a que Python es particularmente fácil de combinar con C, los módulos de Python críticos para el rendimiento se pueden convertir fácilmente al lenguaje C para aumentar la velocidad.
En general, para proyectos pequeños y proyectos que dependen en gran medida de expresiones regulares, Python no es tan expresivo como Perl. En cuanto a proyectos más pequeños, Python es excesivo y el shell puede ser más adecuado.
6. Java
Java fue lanzado en 1995 con dos objetivos de diseño.
Uno es escribir una vez, ejecutar en cualquier lugar (escribir una vez, ejecutar en cualquier lugar), que no depende de una plataforma específica, el otro es incrustar programas interactivos (applets) en páginas web, que se pueden usar en ejecutar cualquier navegador. Debido a una serie de errores de su propietario, Sun Microsystems, el primer objetivo no se logró del todo y el segundo fue un completo fracaso. Pero Java sigue siendo muy poderoso en la programación de sistemas y aplicaciones, lo suficiente como para desafiar a C y C++.
La ventaja de Java es que es más pequeño y simple que C++, puede administrar automáticamente la memoria, admite sintaxis similar a C y programación OO, y también está bien integrado con programas C.
La desventaja de Java es que algunas partes son demasiado complejas. Por ejemplo, el uso de clases internas y clases anónimas producirá código muy confuso e incomprensible. Algunas partes no son completamente funcionales y no pueden usar las interfaces funcionales. proporcionado por el sistema operativo, por ejemplo, leer y procesar archivos de texto en Java no es tan fácil como en otros lenguajes. Además, la confusión entre el entorno de configuración y la versión de Java también es un dolor de cabeza.
En general, excepto para la programación de sistemas y algunas programaciones que requieren alta velocidad de ejecución, Java es una mejor opción que C++. En comparación con Python, Java puede tener una ventaja en proyectos a gran escala, pero no es absoluta.