viernes, 9 de julio de 2021

¿Qué es un lenguaje de programación?

Un lenguaje de programación, consiste en todos los símbolos, caracteres y reglas de uso que permiten a las personas comunicarse con las computadoras. Existen varios cientos de lenguajes y dialectos de programación diferentes. Algunos se crean para una aplicación específica, otros tienen un carácter general. En cualquier caso los lenguajes de programación tienen instrucciones clasificadas por categorías como: Entrada/Salida, Cálculo/Manipulación, Lógica/Comparación, Almacenamiento/Recuperación.

Aunque todos los lenguajes de programación permiten hacer casi las mismas cosas, existen muchas diferencias en los conjuntos de instrucciones que permiten realizar dichas operaciones y en los símbolos definidos para llevar a cabo cada tarea. Existen tres tipos principales de lenguajes de programación: Lenguaje de bajo nivel, lenguaje de medio nivel y lenguajes de alto nivel.

Lenguaje de programación Python
Fuente: Elaboración propia.

La programación consiste en desarrollar programas (software) para procesar información, una computadora es totalmente inútil si no dispone de programas capaces de procesar adecuadamente la información, para que dicha información sea procesada, es necesario pensar, construir y crear un programa  que al ejecutarse complete las tareas para las que fue diseñado. Esta tarea de programar no está exenta de errores, y es allí donde se requiere de personas capacitadas para pensar utilizando la lógica de programación implementada por el lenguaje de programación que se está utilizando, realmente sería imposible dominar todos los lenguajes de programación que existen en el mercado, es por ello que los programadores expertos eligen de entre cientos, uno o algunos que sirvan a los propósitos de sus tareas específicas ya que entre mayor sea su nivel de dominio de los lenguajes seleccionados, más fácil será completar las tareas que le sean asignadas.

Un objetivo fundamental de la programación es que los programas se codifique de modo tal que si un programador inicia el desarrollo de un programa y por algún motivo lo abandona, cualquier otro programador sea capaz de continuar con el trabajo y finalizarlo, por desgracia, no todos los que aprenden a programar siguen las recomendaciones de diseño y codificación, y existe infinidad de programas que son difíciles de mantener funcionando debido principalmente a la falta de método en su diseño.

Existen dos tipos de lenguajes de programación, los lenguajes interpretados y los lenguajes compilados, la diferencia principal radica en que los programas interpretados pueden ejecutarse en diferentes entornos con pocas modificaciones pero generalmente se ejecutan más lento, y los programas compilados son específicos de las plataformas en las que fueron diseñados, en un principio todos los lenguajes solían ser compilados, ya que no existía tanta necesidad de compartir datos fuera de instalaciones específicas; pero hoy día con el ambiente interconectado de trabajo que nos permite disfrutar Internet, la mayor parte de las aplicaciones son interpretadas y pueden ejecutarse independientemente del ambiente de trabajo en el que deseemos visualizarla, como ejemplo están los contenidos manejados por  las aplicaciones de los teléfonos móviles que acceden a datos almacenados en la nube y que pueden ser visualizados en dispositivos muy distintos como son la tableta, el celular, la computadora de escritorio y las televisiones inteligentes.

Criterios de selección de lenguajes de programación.

Dado que existen muchos lenguajes de programación y muchas diferencias entre la orientación de los mismos, es recomendable seguir algunos consejos antes de seleccionar aquel que deseamos aprender.

  • Utilidad. Fácil de aprender.
  • Rendimiento. Velocidad de ejecución de los programas creados.
  • Portabilidad y flexibilidad. Posibilidad de crear aplicaciones que se ejecuten en distintos entornos operativos.
  • Continuidad. Que tenga el respaldo de una amplia comunidad de programadores que permita asegurar que estará disponible mucho tiempo y que será actualizado periódicamente.

Clasificación de los Lenguajes.

Lenguaje de bajo nivel.

Este tipo de lenguaje son específicos de la máquina en la que se encuentran, generalmente son los más eficientes para realizar las tareas en el equipo, pero nos obligan a la dependencia absoluta de la plataforma en la que programamos. Generalmente no son muy amigables con el programador y obligan al mismo a tener un amplio conocimiento del hardware.

Lenguaje de medio nivel.

Este tipo de lenguajes son más amigables con el usuario pero permite al mismo seguir teniendo un amplio dominio de la plataforma en la que programa, aunque no es tan fácil migrar al 100 por ciento, un programa a cualquier otro equipo sin modificar partes del código.

Lenguaje de alto nivel.

Este tipo de lenguajes son muy amigables con el programador y le permiten moverse de forma casi transparente entre diferentes plataformas, el programador gana en portabilidad, pero pierde en cuanto a dominio del equipo ya que muchas cosas que en otros lenguajes podía gestionar de forma directa, en este tipo de lenguajes quedan ocultos a su dominio y por lo general los programas creados en este tipo de lenguajes tienen un menor desempeño.

Ejemplos de lenguajes de programación. 

Lenguaje C, C++, C#

Estos lenguajes de programación derivan uno del otro pero, tienen diferencias muy claras.

Lenguaje C

Fue creado por Dennis Ritchie a principios de 1970, se basa en el paradigma de la programación estructurada. Pretende ser un lenguaje de propósito general que dé al programador control total sobre sus programas, permitiendo la programación a bajo nivel, pero a la vez, proporcionando estructuras de control de alto nivel que faciliten las tareas de programación. Se usó por primera vez en sistemas UNIX, en 1978 alcanzó gran popularidad y se convirtió en el lenguaje de referencia para la comunidad informática.

Lenguaje C++

Creado por Bjarne Stroustrup durante la primera mitad de los años 1980 con el fin de dotar a C de mecanismos que le permitieran usar el paradigma de la programación orientada a objetos. Su nombre original era C con clases, pero finalmente se decidió hacer un juego entre el nombre del lenguaje y uno de sus operadores más comunes (autoincremento ++) quedando su nombre como C++; inicialmente era totalmente compatible con C, es decir cualquier programa escrito en C se ejecutaba en C++, aunque lo contrario no siempre era cierto. Actualmente esa compatibilidad es menor, pero aún es significativa.

Lenguaje C#

Creado por Anders Hejlsberg en el año 2000 como una versión mejorada de C++ (C++++) C#; su objetivo es permitir la programación a alto nivel, la idea es que las capacidades de bajo nivel de C y C++ rara vez son utilizadas por los programadores, para los que el riesgo de manipular directamente la memoria y otros recursos es algo innecesario y peligroso; nace como un intento de Microsoft por hacer frente a la popularidad de Java, lenguaje que había arrebatado gran cantidad de adeptos a C y C++, debido a su facilidad de uso; además, se decidió hacerlo el lenguaje nativo de la plataforma .Net de Microsoft (Windows), originalmente C# estaba fuertemente basado en C++, pero con el paso del tiempo se ha ido separando y aún cuando mantiene compatibilidad, ya no es completa. C# es uno de los lenguajes más populares para programar aplicaciones para Windows.

BASIC (Beginners' All-purpose Symbolic Instruction Code)

El lenguaje BASIC surge con la finalidad de hacer fácil la programación para los principiantes, su nombre es un acrónimo en inglés de “código simbólico de instrucciones de propósito general para principiantes”, fue originalmente diseñado en 1964 por John Kemeny y Thomas Eugene Kurtz para estudiantes y profesores no científicos, de este lenguaje  han derivado cientos de versiones en todas las plataformas existentes, muchos nuevos lenguajes de programación, ya no directamente relacionados con BASIC, toman su modelo como  Gambas en GNU/Linux o Microsoft Visual Basic .NET en Windows.

Una de las desventajas más notables de BASIC era no manejar el acceso directo a archivos, sino depender de una aplicación externa para acceder a ellos.

Los ocho principios de BASIC:

  • Facilidad de uso.
  • Propósito general.
  • Capacidad de añadir características avanzadas, sin complicar el lenguaje.
  • Ser interactivo.
  • Proveer mensajes de error claros y amigables.
  • Desempeño.
  • No requerir conocimientos del hardware donde se ejecuta.
  • Proteger al usuario del sistema operativo.

Visual Basic

Con la llegada de Microsoft Visual Basic que usaba todas las sentencias, forma de manejo y tipos de datos de Basic, pero con mayor potencia, Visual Basic se convirtió en uno de los lenguajes más utilizados para desarrollar soluciones en la plataforma Windows para el año 2002 se estimaba que cerca del 70% de los programas desarrollados para Windows se programaba en Visual Basic; en 2002, y con la introducción de la plataforma .NET, Visual Basic se orienta a Objetos y se convierte en multiplataforma. Hoy día es parte de la suite de programación conocida como Visual Studio, y comparte muchas instrucciones comunes con otros lenguajes basados en .NET, más que conservar las estructuras del Basic original.

Java

El lenguaje para la programación en Java, es un lenguaje orientado a objeto, de una plataforma independiente, fue desarrollado por la compañía Sun Microsystems en 1995, con la idea original de usarlo para la creación de paginas WEB. Java permite crear complementos tipo Apps que se ejecutan en un navegador o bien aplicaciones independientes más complejas como procesadores de textos, o juegos.

La programación JAVA permite crear aplicaciones orientadas a una arquitectura cliente/servidor, lo que hace capaz a un programa de ejecutarse en múltiples ordenadores simultáneamente, ejecutando un mismo proceso, es decir distribuyendo el trabajo.

JavaScript

Lenguaje de programación interpretado del lado cliente (principalmente), está orientado a objetos, basado en prototipos, imperativo, débilmente tipado y dinámico. Se utiliza principalmente como parte de los navegadores (lado cliente) para dotar de funcionalidad a la páginas Web y permitir que sean dinámicas. Fue creado en 1995 por Netscape Communications Corp (Mozilla Foundation).

Todos los navegadores modernos interpretan el código JavaScript integrado en las páginas Web. Para interactuar con una página Web se provee JavaScript bajo el Modelo de Objetos Documento. Actualmente JavaScript se usa para interactuar con los servidores de Internet en conjunto con otras tecnologías del lado servidor como Ajax.

Python

Es un lenguaje de programación interpretado cuya filosofía es un código legible. Se trata de un lenguaje multiparadigma, soporta programación imperativa y orientada a objetos, así como en menor medida programación funcional. Es un lenguaje de tipado dinámico y multiplataforma. Posee licencia de código abierto.

Fue creado en 1991, por Guido van Rossum, su nombre proviene de la adicción de su creador por los humorista británicos Monty Python.

Filosofía de Python

  • Bello es mejor que feo.
  • Explícito es mejor que implícito.
  • Simple es mejor que complejo.
  • Complejo es mejor que complicado.
  • Plano es mejor que anidado.
  • Disperso es mejor que denso.
  • La legibilidad cuenta.
  • Los casos especiales no son tan especiales como para quebrantar las reglas.
  • Lo práctico gana a lo puro.
  • Los errores nunca deberían dejarse pasar silenciosamente.
  • A menos que hayan sido silenciados explícitamente.
  • Frente a la ambigüedad, rechaza la tentación de adivinar.
  • Debería haber una - y preferiblemente sólo una - manera obvia de hacerlo.
  • Aunque esa manera puede no ser obvia al principio a menos que usted sea holandés.
  • Ahora es mejor que nunca.
  • Aunque nunca es a menudo mejor que ya mismo.
  • Si la implementación es difícil de explicar, es una mala idea.
  • Si la implementación es fácil de explicar, puede que sea una buena idea.
  • Los espacios de nombres (namespaces) son una gran idea ¡Hagamos más de esas cosas!.

Bibliografía.

Fundamentos de la computación, (N/D), Instituto Politécnico Nacional, Unidad profesional de ingeniería y ciencias sociales y administrativas.

No hay comentarios.:

Publicar un comentario