Es importante resaltar que los algoritmos son, en primera instancia, más importantes que los lenguajes de programación y las computadoras, y que son independientes de estos últimos. Un algoritmo bien diseñado puede ser implantado en cualquier lenguaje de programación y utilizado en cualquier computadora. Aquí vamos a tratar algunos aspectos clave en el desarrollo de Algoritmos, que en otras entregas serán ampliados con detalles y ejemplos.
Deseo que te sea de gran utilidad esta pequeña guía.
1. Existen Aspectos conceptuales de la definición de Algoritmo: Los Aspectos Importantes que se desprenden de la definición de algoritmo son: es un método, consta de una serie de instrucciones o pasos, y utiliza un lenguaje comprensible (estos aspectos se desprenden de las definiciones dadas por Joyanes, Tucker, Tenenbaum, Aho y otros.)
2. Un Algoritmo debe Cumplir una Serie de Características:
• Es Finito: garantiza que el proceso termina.
• Es Preciso/Exacto: indica claramente el orden de realización de los pasos/instrucciones.
• Definido/Efectivo: siempre se obtiene el mismo resultado, es decir siempre cumple su objetivo.
• Es General: o sea, que provee un proceso general para un tipo especifico de problema, independiente de la herramienta de implantación.
3. El Diseño de un Algoritmo Involucra dos Métodos:
• Método de Diseño Descendente: algunos autores se refieren a él como "Top-Down" y otros como "Divide y Vencerás". La esencia de este método radica en que se toma un problema general y se va dividiendo en problemas más sencillos, estos a su vez se pueden dividir y así sucesivamente. Este proceso se repite hasta lograr tener definidos procesos que realicen tareas únicas y que sean indivisibles. Es como si estas en un laboratorio y usas un microscopio con el cual vas cambiando el enfoque hasta llegar a lo indivisible.
• Método de Refinamiento de Algoritmos: una vez definidos los procesos indivisibles, estos deben ser refinados en términos de cómo realizar la tarea en cuestión, para lo cual se deben definir las instrucciones o secuencia de pasos para lograr el objetivo del proceso en particular, se deben detallar los pasos, esto implica definir el comportamiento del proceso. Este método es también conocido como "Refinamiento por Pasos" (RPP) o "Stepwise" por otros autores. Si combinas estos métodos para el desarrollo de tu algoritmo puedes tener por seguro que será un algoritmo bien realizado
4. Existen Ciertas Herramientas que Puedes Utilizar para el Desarrollo de tu Algoritmo: El diseño de algoritmos también hace uso de ciertas Herramientas que permiten graficar o traducir el algoritmo a un lenguaje más universal. Estas son clasificadas como:
• Diagramas de Flujo: es una herramienta que utiliza figuras dentro de las cuales se escriben las instrucciones y están unidas por flechas que indican el flujo del proceso. Las flechas se conocen como "Líneas de Flujo". Su flujo es secuencial de acuerdo a las líneas y conectores.
• Diagramas de Nassi-Schneiderman (N-S): son especies de diagramas de flujo, pero sin las líneas de control y en las cajas puede escribirse más de una acción.
• Pseudocódigo: es un lenguaje de especificación de algoritmos, permite escribir programas en un lenguaje muy cercano al de programación, es el más utilizado hoy día, pues ha desplazado a los diagramas por su versatilidad para ser utilizado en programación estructurada.
5. También Existen unas Habilidades Importantes para ser Diseñador:
• La habilidad de realizar análisis y síntesis.
• La Habilidad de aplicar el Enfoque de sistemas,
• Debe tener gran capacidad de ser creativo.
Gracias, mas adelante profundizaré cada tema tratado para que el conocimiento sea integro, sin embargo, la idea es que puedas relacionarlos como un todo en el proceso de desarrollo de algoritmos. Un Abrazo y Éxito!
Ing. Mari Carmen Villegas L.
UNA-CLA
Maracay, Venezuela
Suscribirse a:
Enviar comentarios (Atom)







No hay comentarios:
Publicar un comentario