2023-09-05
“Un lenguaje de programación crea instrucciones de manera simbólica y legible para el ser humano, para ser interpretadas y ejecutadas en una máquina.”
Al conjunto de instrucciones descritas en el lenguaje, se le denomina sintaxis, el cual permite diferenciar entre uno y otro lenguaje de programación al momento de ser escrita por el usuario. La sintaxis de un lenguaje de programación contiene los siguientes elementos:
Los lenguajes de programación se pueden clasificar según su nivel de abstracción y su tipo de sintaxis. El nivel de abstracción se refiere al grado de cercanía o lejanía que tiene un lenguaje con respecto a la máquina o al problema a resolver. Los lenguajes de bajo nivel son aquellos que se expresan en términos de las instrucciones y los datos que maneja el hardware, como el lenguaje ensamblador o el código máquina. Los lenguajes de alto nivel son aquellos que se expresan en términos más cercanos al dominio del problema, como el lenguaje C, Java o Python. Estos lenguajes facilitan la escritura, la lectura y el mantenimiento del código, pero requieren de un proceso de traducción o interpretación para que la máquina pueda ejecutarlos.
Adicionalmente, los lenguajes de programación se pueden clasificar por su sintaxis, estos son a grandes rasgos estructurados y no estructurados, dependiendo de si el lenguaje sigue una organización jerárquica y modular de los bloques de código, o si permite saltos arbitrarios entre ellos.
Los lenguajes estructurados facilitan la legibilidad, la depuración y el mantenimiento del código, mientras que los lenguajes no estructurados ofrecen mayor flexibilidad y control al programador, pero también mayor complejidad y riesgo de errores.
Los lenguajes de programación son sistemas de símbolos y reglas que permiten crear programas informáticos, es decir, instrucciones que una computadora puede seguir para realizar una tarea específica. Existen diferentes formas de clasificar los lenguajes de programación según diversos criterios, como su nivel de abstracción, su paradigma, su sintaxis, etc.
Como se mencionó anteriormente, el lenguaje de programación crea las instrucciones de manera simbólica; sin embargo, para que un computador pueda entenderlas, deben ser convertidas a lenguajes de nivel máquina para que la ejecución se complete. Estos conversores de lenguaje se pueden clasificar en:
Cuando diseñamos un programa debemos tomar en cuenta qué característica y secuencia en la estructura se debe llevar. Los paradigmas de la programación brindan un principio empírico para el correcto diseño de programas. Cada uno de estos paradigmas tiene su ventaja y desventajas, así como sus aplicaciones más adecuadas. Existen muchos paradigmas, inclusive algunos programas pueden abarcar más de un paradigma, para fines prácticos se consideran dos de los más importantes:
Los objetos y las clases son conceptos fundamentales en la programación orientada a objetos. Un objeto es una entidad que tiene un estado (atributos) y un comportamiento (métodos). Una clase es una plantilla que define las características y el comportamiento común de todos los objetos de un mismo tipo. Los objetos se crean a partir de las clases mediante el proceso de instanciación. Cada objeto tiene una identidad única, un estado propio y puede interactuar con otros objetos mediante mensajes.
En un lenguaje de programación, las clases se definen mediante una sintaxis específica que indica el nombre de la clase, los atributos, los métodos y otras propiedades. Los objetos se crean mediante la palabra clave new o una función constructora que asigna valores iniciales a los atributos y devuelve una referencia al objeto. Los atributos y los métodos se acceden mediante el operador punto o la notación de corchetes, dependiendo del lenguaje. Algunos lenguajes permiten definir modificadores de acceso (publico, privado o restringido) para controlar la visibilidad de los atributos y los métodos desde otras clases.
“Un objeto es una instancia de una clase, es decir, una representación concreta de un concepto abstracto. Una clase es una estructura que define las propiedades y los métodos de los objetos que pertenecen a ella. Los objetos se crean a partir de las clases mediante un proceso llamado instanciación.”
Le herencia y el polimorfismo son dos conceptos fundamentales de la programación orientada a objetos. La herencia permite definir clases que heredan los atributos y métodos de otras clases, lo que facilita la reutilización y la organización del código. El polimorfismo permite que un objeto pueda comportarse en diferentes formas según el contexto, lo que aumenta la flexibilidad y la abstracción del código.
Un ejemplo de herencia sería el siguiente:
Se tiene la clase Vehículo que contiene los siguientes atributos: color, marca, modelo. También contiene métodos como: arrancar, frenar, acelerar.
A partir de esta clase, podemos definir clases child que heredan estos atributos, como: Coche, Moto, Bicicleta, etc.
Cada clase child adicionalmente puede tener sus propios atributos y métodos específicos, retomando el ejemplo anterior, adicionalmente podríamos agregar algunos atributos como número de puertas, cilindrada, tipos de freno, etc.
Un ejemplo de polimorfismo:
Se tiene la clase Animal, puede contener un método llamado hacer_sonido, que imprime el sonido que hace el animal.
A partir de esta clase, podemos definir clases child que heredan estos atributos, como: Perro, Gato, Pato, etc.
En este caso cada clase child puede redefinir el método hacer_sonido para imprimir el sonido específico de cada animal, como el ladrido al perro, el maullido al gato y el graznido al pato. Así, si se tiene una lista de animales y se llama al método para cada uno de ellos, se obtendrá el sonido correspondiente a cada tipo de animal.
Texto creado bajo la licencia de Raiko EngineLink. Queda estrictamente prohibida la replicación de este y todos los contenidos creados fuera de esta plataforma. ©, Todos los derechos reservados. Descubre cómo hacemos esto.