ABSTRACCIÓN FUNCIONAL EN PASCAL
La abstracción funcional en pascal consiste en crear procedimientos y funciones e invocarlos mediante un nombre donde se destaca qué hace la función y se ignora cómo lo hace. El usuario sólo necesita conocer la especificación de la abstracción (el qué) y puede ignorar el resto de los detalles (el cómo).
Los procedimientos y funciones son módulos, pero entre ellos hay dos diferencias a destacar:
• Las funciones siempre devuelven un valor al programa que las invocó.
• Para llamar a un procedimiento se escribe su nombre en el cuerpo del programa, y si los necesita, se incluyen los parámetros entre paréntesis. Para invocar una función es necesario hacerlo en una expresión.
Para que los módulos ( funciones y procedimientos ) se comuniquen con el programa que los llama o invoca necesitamos los parametros. Existen dos tipos de parámetros: por valor o por referencia. Los parámetros por valor tiene dicho nombre porque lo que recibe el subprograma no son más que copias de los valores de los datos que el programa invocador le pasa. Por tanto si en el procedimiento modificamos alguno de estos valores, los datos originales permaneceran inalterados. En cambio, en los parámetros por referencia lo que se pasa al procedimiento son los datos en sí. Y si éste los modifica, los cambios permanecerán una vez que la ejecución vuelva al módulo que invocó al procedimiento. Se utilizan para obtener valores de los cálculos que haga un subprograma.
Pascal permite el paso de módulos (funciónes o procedimientos) como parámetro de otro módulo, es decir, una fución puede ser a su vez un parámetro de otra función o procedimiento, y como cualquier parámetro se debe especificar el tipo de dato que corresponda.Para Pascal dos módulos son del mismo tipo solamente si ambos tienen el mismo número de parámetros, dichos parámetros son del mismo tipo, y en el caso de una función ambos devuelven el mismo tipo de dato.
A pesar de esto que acabamos de exponer, existen algunas restricciones. Aquí entra en juego el
denominado ámbito de un módulo, que se puede definir como el conjunto de módulos que les está permitido llamar a dicho módulo. Para poder evitar los errores que puede causar esto, la principal recomendación es la programación modular aunque también existen algunas palabras reservadas como forward que permiten “engañar” al programa.
Al hablar de módulos, deberíamos destacar también el concepto de recursividad, que consiste en
aplicar una función como parte de la definición de esa misma función. Dentro de la abstracción funcional también podemos realizar una breve definición sobre los tipos abstractos de datos, ya que hacen una fuerte referencia a la independencia en la representación, que al final tiene
bastante que ver con la definición de abstracción funcional.
La abstracción de datos consiste en ocultar las características de un dato y obviarlas, de manera que solamente utilizamos el nombre del objeto en nuestro programa. En resumen, podemos decir que la abstracción tiene como principal característica, como su definición indica, la importancia de saber lo qué se utiliza sin importar el cómo se utiliza. Aplicando esto a funciones y procedimientos en pascal obtenemos una explicación aproximada de qué es la abstracción funcional.
Los procedimientos y funciones son módulos, pero entre ellos hay dos diferencias a destacar:
• Las funciones siempre devuelven un valor al programa que las invocó.
• Para llamar a un procedimiento se escribe su nombre en el cuerpo del programa, y si los necesita, se incluyen los parámetros entre paréntesis. Para invocar una función es necesario hacerlo en una expresión.
Para que los módulos ( funciones y procedimientos ) se comuniquen con el programa que los llama o invoca necesitamos los parametros. Existen dos tipos de parámetros: por valor o por referencia. Los parámetros por valor tiene dicho nombre porque lo que recibe el subprograma no son más que copias de los valores de los datos que el programa invocador le pasa. Por tanto si en el procedimiento modificamos alguno de estos valores, los datos originales permaneceran inalterados. En cambio, en los parámetros por referencia lo que se pasa al procedimiento son los datos en sí. Y si éste los modifica, los cambios permanecerán una vez que la ejecución vuelva al módulo que invocó al procedimiento. Se utilizan para obtener valores de los cálculos que haga un subprograma.
Pascal permite el paso de módulos (funciónes o procedimientos) como parámetro de otro módulo, es decir, una fución puede ser a su vez un parámetro de otra función o procedimiento, y como cualquier parámetro se debe especificar el tipo de dato que corresponda.Para Pascal dos módulos son del mismo tipo solamente si ambos tienen el mismo número de parámetros, dichos parámetros son del mismo tipo, y en el caso de una función ambos devuelven el mismo tipo de dato.
A pesar de esto que acabamos de exponer, existen algunas restricciones. Aquí entra en juego el
denominado ámbito de un módulo, que se puede definir como el conjunto de módulos que les está permitido llamar a dicho módulo. Para poder evitar los errores que puede causar esto, la principal recomendación es la programación modular aunque también existen algunas palabras reservadas como forward que permiten “engañar” al programa.
Al hablar de módulos, deberíamos destacar también el concepto de recursividad, que consiste en
aplicar una función como parte de la definición de esa misma función. Dentro de la abstracción funcional también podemos realizar una breve definición sobre los tipos abstractos de datos, ya que hacen una fuerte referencia a la independencia en la representación, que al final tiene
bastante que ver con la definición de abstracción funcional.
La abstracción de datos consiste en ocultar las características de un dato y obviarlas, de manera que solamente utilizamos el nombre del objeto en nuestro programa. En resumen, podemos decir que la abstracción tiene como principal característica, como su definición indica, la importancia de saber lo qué se utiliza sin importar el cómo se utiliza. Aplicando esto a funciones y procedimientos en pascal obtenemos una explicación aproximada de qué es la abstracción funcional.

0 Comments:
Post a Comment
<< Home