Módulo #3_Lenguajes de Programación
OBJETIVOS DE APRENDIZAJE
Identificar y describir los lenguajes de programación de
bajo y alto nivel
.
1
Índice
I. Lenguaje de Programación .................................................................................................... 2
1. Lenguajes de bajo nivel ............................................................................................................... 3
2. Lenguajes de alto nivel ................................................................................................................ 4
3. Lenguajes de Medio nivel ............................................................................................................ 5
4. Generaciones ............................................................................................................................... 6
5. Ejemplos de lenguaje de programación ...................................................................................... 7
5.1. Java ....................................................................................................................................... 7
5.2. C++ ........................................................................................................................................ 7
5.3. C# ..........................................................................................................................................8
5.4. Python .................................................................................................................................. 8
5.5. JavaScript .............................................................................................................................. 9
5.6. Lenguaje de programación PHP .................................................................................... 9
Asignaciones del Módulo #3 ................................................................................................... 9
2
III. Lenguaje de Programación
Es un lenguaje formal que, mediante una serie de instrucciones, le permite a un
programador escribir un conjunto de órdenes, acciones consecutivas, datos y
algoritmos para, de esa forma, crear programas que controlen el comportamiento
físico y lógico de una máquina.
Existen dos tipos de lenguajes claramente diferenciados; los lenguajes de bajo
nivel y los de alto nivel.
1. Lenguajes de bajo nivel
Son lenguajes totalmente dependientes de la máquina, es decir que el programa
que se realiza con este tipo de lenguajes no se puede migrar o utilizar en otras
máquinas.
Al estar prácticamente diseñados a medida del hardware, aprovechan al máximo
las características de este.
Dentro de este grupo se encuentran:
El lenguaje maquina: este lenguaje ordena a la máquina las operaciones
fundamentales para su funcionamiento. Consiste en la combinación de 0's y 1's
para formar las ordenes entendibles por el hardware de la máquina. Este lenguaje
es mucho más rápido que los lenguajes de alto nivel. La desventaja es que son
bastantes difíciles de manejar y usar, además de tener códigos fuente enormes
donde encontrar un fallo es casi imposible.
El lenguaje ensamblador es un derivado del lenguaje maquina y está formado por
abreviaturas de letras y números llamadas mnemotécnicos. Con la aparición de
este lenguaje se crearon los programas traductores para poder pasar los
programas escritos en lenguaje ensamblador a lenguaje máquina. Como ventaja
con respecto al código máquina es que los códigos fuentes eran más cortos y los
programas creados ocupaban menos memoria. Las desventajas de este lenguaje
siguen siendo prácticamente las mismas que las del lenguaje ensamblador,
añadiendo la dificultad de tener que aprender un nuevo lenguaje difícil de probar y
mantener.
3
2. Lenguajes de alto nivel
Son aquellos que se encuentran más cercanos al lenguaje natural que al lenguaje
máquina.
Están dirigidos a solucionar problemas mediante el uso de EDD's.
Nota: EDD's son las abreviaturas de Estructuras Dinámicas de Datos, algo
muy utilizado en todos los lenguajes de programación. Son estructuras
que pueden cambiar de tamaño durante la ejecución del programa. Nos
permiten crear estructuras de datos que se adapten a las necesidades
reales de un programa.
Se tratan de lenguajes independientes de la arquitectura del ordenador. Por lo que,
en principio, un programa escrito en un lenguaje de alto nivel, lo puedes migrar de
una máquina a otra sin ningún tipo de problema.
Estos lenguajes permiten al programador olvidarse por completo del
funcionamiento interno de la maquina/s para la que están diseñando el programa.
Tan solo necesitan un traductor que entiendan el código fuente como las
características de la máquina.
Suelen usar tipos de datos para la programación y hay lenguajes de propósito
general (cualquier tipo de aplicación) y de propósito especifico (como FORTRAN
para trabajos científicos).
3. Lenguajes de Medio nivel
Se trata de un término no aceptado por todos, pero q seguramente habrás oído.
Estos lenguajes se encuentran en un punto medio entre los dos anteriores. Dentro
de estos lenguajes podría situarse C ya que puede acceder a los registros del
sistema, trabajar con direcciones de memoria, todas ellas características de
lenguajes de bajo nivel y a la vez realizar operaciones de alto nivel.
4. Generaciones
La evolución de los lenguajes de programación se puede dividir en 5 etapas o
generaciones.
• Primera generación: lenguaje máquina.
• Segunda generación: se crearon los primeros lenguajes ensambladores.
• Tercera generación: se crean los primeros lenguajes de alto nivel. Ej. C,
Pascal, Cobol…
• Cuarta generación. Son los lenguajes capaces de generar código por si
solos, son los llamados RAD, con lo cuales se pueden realizar aplicaciones
sin ser un experto en el lenguaje. Aquí también se encuentran los lenguajes
4
orientados a objetos, haciendo posible la reutilización d partes del código
para otros programas. Ej. Visual, Natural Adabes…
• Quinta generación: aquí se encuentran los lenguajes orientados a la
inteligencia artificial. Estos lenguajes todavía están poco desarrollados.
5. Ejemplos de lenguaje de programación
5.1. Java
Es uno de los lenguajes de
programación de código abierto
más populares. Java fue
comercializado por primera vez
1995 por Sun Microsystems. Está
detrás de muchas
webs y aplicaciones, de
consolas y súper ordenadores, de
móviles y de hasta Internet.
De hecho, no sé si sabes que Java
es quien impulsa Android, el
sistema operativo más usado del mundo.
Lenguaje multiplataforma, ejecutable en la mayoría de los sistemas operativos.
Software de distribución libre.
Lenguaje completo y dispone de una librería y utilidades amplias.
Lenguaje de ejecución lenta al ser interpretado.
Difícil de aprender debido a su compleja sintaxis.
5.2. C++
Permite la manipulación de objetos y tiene como base el lenguaje C. Se le
reconoce como uno de los
lenguajes de programación
5
multiparadigma (programación
orientada a objetos y
estructurada). Es una de las
herramientas más populares por
su versatilidad y potencia.
Lenguaje muy didáctico, y a través del mismo puedes aprender otros como C#,
Java, PHP.
Muy utilizado en la creación de sistemas operativos, utilidades, bibliotecas…
Permite programar con múltiples estilos, como los estructurados.
Admite la compilación de nuestro código en múltiples plataformas.
El uso de librerías dinámicas se hace muy complicado, ya que la carga y la
liberación de memoria de la librería corre a cargo de los programadores.
No es muy usable para desarrollar páginas web.
Complejo programar bases de datos.
Más pesado que otros programas similares.
5.3. C#
Es un lenguaje creado por Microsoft con seguridad de tipos y orientado a
objetos. Se diseñó para ejecutarse en la plataforma .NET. C# se usa para el
desarrollo de juegos, servicios web XML, componentes distribuidos, aplicaciones
cliente-servidor, etc. La sintaxis de C# es muy reconocida, por lo que si estás
familiarizado con Java o C++ no te será difícil aprenderlo.
Lenguaje muy potente y flexible.
Soporta la mayoría de paradigmas.
Es complicado hacer portabilidades.
Tiene una curva de aprendizaje bastante elevada.
No existe una correcta documentación de la herramienta.
En dinahosting, en la parte de Sistemas Windows, utilizamos programación a bajo
nivel en C y C#, lo que hace que nuestros sistemas internos vayan muy rápido y
necesiten pocos recursos para su ejecución. Esto se traduce en una mayor
funcionalidad de servicios como el Panel de Control, que usa en las
comunicaciones internas entre servidores un lenguaje como C.
6
5.4. Python
Se crea a finales de los 80 y principios de los 90. Su programación se orienta a
objetos y se emplea para hacer aplicaciones genéricas (juegos, web o de
escritorio), en la informática científica y big data, que ahora está muy de moda.
Su código es de distribución libre, por lo que no tendrás que pagar licencias para
usarlo.
Es escalable y flexible.
Funciona en múltiples plataformas (Windows, Mac, Linux).
Soporte de programación de interfaces gráficas de usuario.
Conexión con las bases de datos más usadas.
Se integra fácilmente con lenguajes como C, C++, y Java entre otros.
No dispone de una buena documentación.
Es más lento comparado con otros lenguajes como Java o C.
Difícil de ejecutar múltiples hilos.
7
5.5. JavaScript
Es uno de los lenguajes de programación más
importantes y según datos, lo utilizan un 80% de
los desarrolladores y un 95% de todos los sitios
web. Las ventajas de JavaScript se sitúan en el lado
del front-end, y varios frameworks que soporta
como React y Angular JS tienen un gran potencial
para mejorar la experiencia del usuario en la web.
Se trata en definitiva de un lenguaje ligero,
multiplataforma, estructurado y orientado a
objetos y eventos.
Es un lenguaje de programación seguro y fiable.
De fácil uso y muy completo.
Es ligero y permite la elaboración de múltiples aplicaciones web.
Es compatible con la mayoría de los navegadores.
No proporciona muchos recursos.
Soporta 3D, pero las opciones que ofrece son limitadas.
Puede ser vulnerable, ya que el código de JavaScript está visible para todo el
mundo.
Tienes que descargar completamente el código antes de procesarlo.
5.7 Lenguaje de programación PHP
PHP es de código abierto muy usado en el desarrollo web, ya que puede
incrustarse en HTML. El código se
ejecuta en el servidor, genera HTML y
se lo envía al cliente.
Muy fácil de usar si estás empezando en
esto de la programación, pero muy
completo para los programadores
profesionales.
Se orienta al desarrollo de aplicaciones
web dinámicas.
Es un código seguro y confiable, ya que
el código fuente está oculto para el
navegador y cliente.
Licencia abierta de uso.
Las últimas versiones hacen que PHP sea un lenguaje orientado a objetos muy
potente y con un rendimiento muy mejorado.
8
Necesitas un servidor web para ejecutar una aplicación, aunque las últimas
versiones traen un servidor incorporado.
Debes tener un conocimiento genérico de HTML para trabajar con PHP o con
JSON.
Asignaciones del Módulo #3
1. Confeccione un cuadro comparativo, donde se resalte las ventajas y
desventaja de los lenguajes de programación, explicados en el Módulo#3. Nota
Diaria, Valor 15 puntos
2. Confeccione un cuadro comparativo donde se observe las características
ventajas y desventajas de los lenguajes de alto y bajo nivel según se explica en el
Módulo#3, Nota Diaria, Valor 15 puntos
Nota: Para ambas asignaciones se usted hacer consulta a otras referencias de
investigación.