You are on page 1of 3

Niveles de abstracción

Un programa debe recuperar la información para tener alguna utilidad. Este asunto ha conducido
al la creación de estructuras complejas para la representar los datos en cualquier sistema. Como
muchos usuarios de sistemas de conocimiento no están familiarizados con computadores, los
desarrolladores esconden la complejidad a los usuarios a través de varios niveles de abstracción
para simplificar la interacción de los usuarios con el sistema, en la figura 1.3, se esquematizan los
tres niveles de abstracción de base de datos. A continuación se definen los principales niveles de
abstracción:

Los nombres de dominio y las URL en Internet son otra capa de abstracción común, que permite
convertir un nombre alfabético como computerlanguage.com en la dirección IP numérica del
servidor web (consulte el nombre de dominio de Internet).

Múltiples capas de abstracción

Las aplicaciones de hoy a menudo se programan en capas múltiples de abstracción. Por ejemplo, un
programa puede escribirse seleccionando opciones de menú y arrastrando íconos alrededor de la
pantalla. Estos movimientos se pueden traducir a un lenguaje de alto nivel que se traduce a un
lenguaje de bajo nivel, que se traduce al lenguaje de máquina. Cuanto más lejos del lenguaje de
máquina de la computadora que se programa una operación, más instrucciones se ejecutan para
realizar la tarea.

Combine esto con la interacción del sistema operativo, que puede estar ejecutando 10 veces más
instrucciones que las necesarias, y comprenderá por qué incluso en una computadora veloz, un
usuario puede presionar las teclas del teclado más rápido de lo que el programa puede aceptar el
entrada. Considerando que las computadoras personales modernas ejecutan más de dos mil
millones de instrucciones por segundo, en comparación con las primeras PC que ejecutaron un
millón, los ciclos de la máquina extra se absorben capa por capa, cada uno diciéndole al siguiente
qué hacer

Nivel físico. El nivel más bajo de abstracción describe cómo se almacenan realmente los datos. En el
nivel físico se describen en detalle las estructuras de datos complejas de bajo nivel.

Nivel lógico. El siguiente nivel más alto de abstracción describe qué datos se almacenan en la base
de datos y qué relaciones existen entre esos datos. La base de datos completa se describe así en
términos de un número pequeño de estructuras relativamente simples. En el nivel lógico cada
registro de este tipo se describe mediante una definición de tipo y se define la relación entre estos
tipos de registros. Los programadores, cuando usan un lenguaje de programación, trabajan en este
nivel de abstracción. De forma similar, los administradores de bases de datos trabajan
habitualmente en este nivel de abstracción.

Nivel de conocimiento. El nivel más alto de abstracción describe sólo parte de la base de datos
completa. Muchos usuarios del sistema de base de datos no necesitan toda esta información. En su
lugar, tales usuarios necesitan acceder sólo a una parte de la base de datos. Para que su interacción
con el sistema se simplifique, se define la abstracción del nivel de vistas.

Paradigma de programación
Es un estilo de desarrollo de programas. Es decir, un modelo para resolver problemas
computacionales. Los lenguajes de programación, necesariamente, se encuadran en uno o varios
paradigmas a la vez a partir del tipo de órdenes que permiten implementar, algo que tiene una
relación directa con su sintaxis.

Programacion Algoritmica

un algoritmo de programación como una receta que describe los pasos exactos necesarios para que
la computadora resuelva un problema o alcance un objetivo. Todos hemos visto recetas de comida:
enumeran los ingredientes necesarios y una serie de pasos para hacer la comida descrita. Bueno, un
algoritmo es así. En la jerga de la computadora, la palabra para una receta es un procedimiento, y
los ingredientes se llaman entradas. Su computadora mira su procedimiento, lo sigue al pie de la
letra y puede ver los resultados, que se llaman salidas. Un algoritmo de programación describe cómo
hacer algo, y su computadora lo hará exactamente de esa manera todo el tiempo. ¡Bien, lo hará una
vez que convierta su algoritmo en un lenguaje que comprenda!

La Programación declarativa

La programación declarativa es un paradigma de programación informática que el desarrollador


define lo que el programa debe lograr en lugar de definir explícitamente cómo debería hacerlo. Este
enfoque se presta naturalmente a la definición programática de sistemas lógicos formales, y tiene
la ventaja de simplificar la programación de algunas aplicaciones de procesamiento paralelo.Un

programa heurístico

En general, la palabra "heurística" en ciencias de la computación se refiere a una filosofía que es


diferente de la cuantificación, los procesos informáticos impulsados por la lógica que impulsaron el
avance de las computadoras primitivas en décadas pasadas.

Contrariamente al principio de utilizar la informática estricta basada en algoritmos, la heurística es,


en muchos sentidos clave, un atajo para un tipo de programación de lógica cuantificada. La
programación heurística busca lograr un objetivo sustituyendo ciertos tipos de programas de
aprendizaje automático por algoritmos lógicos.

Otra forma de decir esto es que, aunque los algoritmos operan con sistemas y principios lógicos
conocidos, la programación heurística funciona con una serie de "conjeturas inteligentes" u
operaciones informadas que no se basan completamente en números duros o datos duros.

Un ejemplo de un proceso de programación heurística es un programa que analizará el contenido


de una unidad o sistema de archivos. El programa lógico buscaría de forma preprogramada, por
ejemplo, alfabéticamente o en términos de modificación reciente de datos, donde el sistema de
programación heurística podría programarse para funcionar de acuerdo con las búsquedas pasadas
que originó un usuario.
Bibliografia

K. R.. Apt. From Logic Programming to Prolog. Prentice Hall. 1997.

C. S. Clocksin, C. W. Mellish. Programacion en Prolog. Gustavo Gili. 1988.

J. Lloyd. Foundations of Logic Programming. Springer-Verlag. 1987.

L. Sterling, E. Shapiro. The Art of Prolog. MIT Press. 1986.

You might also like