sábado, 19 de noviembre de 2011

Desarrollo de programas 2/3

Seguimos con más normas básicas que tenemos que es importante utilizar y tener en cuenta a la hora de desarrollar nuestros programas (Desarrollo de programas 1/3):

Desarrollo con esquemas de selección e iteración:

Esquema de selección:      Un esquema de selección consiste en plantear una acción compuesta como la realización de una acción entre varias posibles, dependiendo de ciertas condiciones.


Esquema de iteración:       Una iteración o bucle consiste en la repetición de una acción o grupo de acciones hasta conseguir el resultado deseado.


Verificación de programas:


Uno de los objetivos de la programación es la corrección. Un programa es correcto si produce siempre resultados de acuerdo con la especificación del programa. En la práctica, la verificación de un programa se hace muchas veces mediante ensayos. Un ensayo, (testing) consiste en ejecutar el programa con unos datos preparados de antemano y para los cuales se sabe cuál ha de ser el resultado a obtener. Este proceso se llama depuración (debugging).
 
          Corrección parcial y total:

          Corrección parcial: si el programa termina el resultado es correcto.
Corrección total: lo anterior y además para todo dato de entrada válido el programa termina.


Eficiencia de programas. Complejidad:

          Medidas de eficiencia:
          La eficiencia de un programa se define en función de la cantidad de recursos
          que consume durante su ejecución.
          Las principales medidas de recursos empleados son:

                    El tiempo que tarda en ejecutarse un programa.

                    La cantidad de memoria usada para almacenar datos.


          Análisis de programas:

La determinación de la eficiencia (o complejidad) de un programa se hace analizando los siguientes elementos:

Cuánto tarda en ejecutarse cada instrucción básica del lenguaje utilizado.

Cuántas instrucciones de cada clase se realizan durante una ejecución del programa.


          Crecimiento asintótico:

En los análisis de eficiencia (o complejidad) se considera muy importante la manera como la función de complejidad va aumentando con el tamño del problema. Lo que interesa es la forma de crecimiento del tiempo de ejecución, y no tanto el tiempo particular empleado. La complejidad constante sería la ideal y la complejidad exponencial resultaría muy poco eficiente.

No hay comentarios:

Publicar un comentario