Programación Imperativa vs. Declarativa: Conceptos Clave y Paradigmas

Clasificado en Informática

Escrito el en español con un tamaño de 2,54 KB

Programación Imperativa y Declarativa

Programación Imperativa

Describe la programación en términos del estado del programa y sentencias que cambian dicho estado. Los programas imperativos son un conjunto de instrucciones que le indican al computador cómo realizar una tarea.

Programación Declarativa

Está basada en el desarrollo de programas especificando un conjunto de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones. Describe el problema y detalla la solución. La solución es obtenida mediante mecanismos internos de control, sin especificar cómo encontrarla.

Principio de universo cerrado: El motor asume como verdadero todo lo que pueda comprobar.

Programación Orientada a Objetos (POO)

Conceptos Fundamentales

  • Objeto: Es algo que se puede representar como una idea o un concepto.
  • Clase: Una clase puede definirse como la agrupación o colección de objetos que comparten una estructura común y un comportamiento común.
  • Herencia: Una clase nueva se crea a partir de una existente.
  • Polimorfismo: Capacidad que permite a dos o más clases responder de forma distinta a un mismo mensaje.
  • Encapsulación: Es el ocultamiento del estado de los datos miembro de un objeto, de manera que solo se pueda cambiar mediante las operaciones definidas para ese objeto.

Características de la POO

  • Es una técnica de programación que usa objetos y sus interacciones para diseñar aplicaciones.
  • Proporciona una forma de programar cercana a como expresamos las cosas en la vida real.
  • Se combinan los datos y los procedimientos en una entidad única.

Otros Paradigmas de Programación

Paradigma Lógico

Este paradigma se basa en los conceptos de lógica matemática, se basa en predicados que caracterizan o relacionan a los individuos involucrados y la deducción de las posibles respuestas a una determinada consulta.

Paradigma Restringido

Es un paradigma de programación declarativo. En lugar de indicar cómo queremos que se hagan las cosas, nos limitamos a decir qué queremos que pase y el sistema, librería o lenguaje se encargará de hacerlo.

Se basa en crear un modelo formado por variables, para las cuales deberemos indicar qué posibles valores pueden tomar, y restricciones, que expresan relaciones que deben cumplirse entre esas variables.

Entradas relacionadas: