Conceptos
Cuando afrontamos la construcción de una solución debemos tener en cuenta conceptos como:
- Abstracción se trata de realizar un unálisis del problema para descomponerlo en problemas más pequeños y de menor complejidad
- Encapsulación consiste en ocultar la información para implementarla de diferentes maneras sin que esto influya en el resto de elementos
- Modularidad es estructurar la información en módulos independientes , cada uno con su función
Algoritmo es una secuencia ordenada de pasos, descrita sin ambigúedades, que conducen a la solución de un problema dato.
Caracteristicas de un algoritmo:
- debe ser preciso e indicar el orden de realización paso a paso
- si se ejecuta mas de una vez debe obtener el mismo resultado
- debe tener un numero finito de pasos
A los pasos que permiten resolver el problema, escirtos en un leguaje de programación, para que puedan ser ejecutados en el ordenador y asi obtener la solución, se les denomina programa.
Hay 2 tipos de programación:
- programación declarativa que se basa en el desarrollo de programas realizando una especificación o declaración de un conjunto de condiciones que describen el problema y detallan su solución. Las sentencias que se utilizan describen
el problema que se requiere solucionar pero no las instrucciones necesarias para llevarlo a cabo. Este tipo de progración se divide en:
- funcional que considera el programa como una función matemática, donde el dominio representaria el conjuto de todas las entradas posibles (input) y el rango seria el conjunto de todas las salidas posibles (output). El lenguaje
LISP es un ejemplo de esta programación.
- lógica que especifica que hay que hacer y no como hacerlo. Se utiliza en inteligencia artifical. Como ejemplo el lenguaje PROLOG.
- programación imperativa consiste en una serie de comandos que un pc ejecutara. Estos comandos detallan de forma clara el como hacer las cosas y llevaran el programa a traves de distintos estados. Se divide en:
- convencional (no estructurada), no existian al principio los lenguajes que permitan estructurar el codigo para su modificación o reutilización. Los programas eran lineas y lineas de codigo que hacian dificil su lectura o modificación.
Todo era basado en instrucciones de salto (Goto). El programa era un solo archivo, eran dificiles de mantener y de representar.
- estructurada que nació para solventar los problemas y limitaciones de la programación convencional. Permite la modificaión, reutilización y lectura del código. Permitian el concepto de programación modular, que reutilizaba código
en cualquier parte del programa las veces que se necesitaba.
- oritentada a objetos, que los objetos tenian propriedades que con ellas realizaban acciones (metodos). Se basa en varias tecnicas como herencia, abstracción, polimorfismo y encapsulamiento. Ejemplos de lenguaje como JAVA, C, C++,
PHP.
- visual un conjunto de paradigmas que incluyen conceptos desarrolados en el resto de paradigmas presentados ante.
Siguiente