coding ground

Tipos de lenguajes de programación

Los lenguajes de programación han evolucionado a lo largo del tiempo para aumentar su rendimiento y facilitar el trabajo a los programadores. Cada vez más existen lenguajes de programación que son más “user friendly” y más fáciles de programar.

Muchas veces el que se programe más rápido y los programas sean más sencillos de realizar provoca que los mismos sean más lentos y que ocupen más espacio.

Veamos las características de los Lenguajes de Programación existentes en la actualidad:

Lenguaje máquina.

- Sus instrucciones son complejas e ininteligibles. Se componen de combinaciones de unos y ceros.

- No necesita ser traducido por lo tanto es el único lenguaje que entiende directamente el ordenador.

- Fue el primer lenguaje utilizado. Los expertos en su momento debían tener un dominio profundo del hardware para poder entender así este lenguaje de programación.

- Difiere para cada procesador. Las instrucciones no son portables de un equipo a otro.

- Salvo excepciones hoy día nadie programa en este lenguaje.

Lenguaje de medio nivel o ensamblador:

- Dada la dificultad y poca portabilidad del lenguaje máquina, el ensamblador lo sustituyó para facilitar la labor de programación.

- Sigue estando cercano al hardware pero en lugar de unos y ceros se programa usando mnemotécnicos. Los mnemotécnicos son instrucciones más inteligibles por el programador que permiten comprender de una forma más sencilla qué hace el programa.

- Este lenguaje necesita compilarse, traducirse al lenguaje máquina para poder ejecutarse.

- Se trabaja con los registros del procesador y direcciones físicas. En lenguajes de nivel más alto ya se utilizan variables y estructuras más sofisticadas.

- Es difícil de comprender y programar.

- Dada la dificultad y poca portabilidad del lenguaje máquina, el ensamblador lo sustituyó para facilitar la labor de programación.

Lenguajes de alto nivel:

- La mayoría de los lenguajes de programación actuales pertenecen a esta categoría.

- Tienen una forma de programar más intuitiva y sencilla.

- Más cercano al lenguaje humano que al lenguaje máquina. (por ejemplo: WHILE var DO….DONE).

- Suelen tener librerías y funciones predeterminadas que solucionan algunos de los problemas que se le suelen presentar al programador.

- En ocasiones ofrecen frameworks para una programación más eficiente y rápida.

- Suelen trabajar con mucha abstracción y orientación a objetos. De esa manera es más fácil la reutilización y el encapsulamiento de componentes.

Un framework es un conjunto de conceptos, estructuras, funciones, componentes, etc. Todo este conjunto de elementos son la base para personalizarlas y adaptarlas a las necesidades de la aplicación. De esa manera se van construyendo las aplicaciones. Un ejemplo de framework es bootstrap. Utilizado en twitter y liberado para que cualquiera pueda realizar páginas y aplicaciones web con sus componentes.

Dependiendo de la forma de en la que son ejecutados se puede hacer otra clasificación:

Lenguajes compilados.
Necesitan de un programa traductor (compilador) para convertir el código fuente en código máquina. Este tipo de programas se ejecutan de forma más rápida que los interpretados o los virtuales. Además del compilador, existe un programa llamado enlazador o linker que permite unir el código objeto del programa con el código objeto de las librerías.

Lenguajes interpretados.
No se genera código objeto. El intérprete es un programa que tiene que estar cargado en memoria y se encarga de leer cada una de las instrucciones, interpretarlas y luego ejecutarlas. Las instrucciones se traducen “on the fly” y solamente se traducen las instrucciones que se van ejecutando en vez de interpretar todo el programa.

Lenguajes virtuales.
Son lenguajes más portables que los lenguajes compilados puesto que el código que se genera tras la compilación es un código intermedio o bytecode. Este código puede ser a su vez interpretado por una máquina virtual instalada en cualquier equipo. Tienen una ejecución lenta pero su versatilidad de poder ejecutarse en cualquier entorno los hace muy apreciados.

Ordena los siguientes lenguajes según la clasificación anterior

  • AngularJS
  • PHP
  • Java
  • JavaScript
  • Ruby
  • Python
  • Cobol
  • C
  • Pascal
  • TurboPascal
  • C++
  • Objetive C
  • Visual Basic
  • Swift
  • Ensamblador
  • Fortran
  • ADA
  • Prolog
  • Tcl
  • Simula
  • Smalltalk
  • Perl
  • Verilog
  • Scala
  • Lisp
  • Node.JS
  • Deja un comentario

    Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

    Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>