10 de mayo de 2010

Paradigmas de Programacion


Universidad Tecnológica de San Juan del Rio





Desarrollo de Aplicaciones I

M. EN A. NORMA ALEJANDRA LEDESMA URIBE

PROGRAMACION ESTRUCTURADA
PROGRAMACION ORIENTADA A OBJETOS
TABLA COMPARATIVA
PARADIGMAS DE PROGRAMACION
AMBIENTE DE DESARROLLO VISUAL C#

Alumna: Guadalupe Chávez Trejo

TIC01SM-09
San Juan del Rio, Qro a 10 de Mayo del 2009





PROGRAMACIÓN ESTRUCTURADA



Es una forma de escribir programación de computadora de forma clara, para ello utiliza únicamente tres estructuras: secuencial, selectiva e iterativa; siendo innecesario y no permitiéndose el uso de la instrucción o instrucciones de transferencia incondicional (GOTO). Programación Estructurada es una técnica en la cual la estructura de un programa, esto es, la interpelación de sus partes realiza tan claramente cómo es posible mediante el uso de tres estructuras lógicas de control:
Secuencia: Sucesión simple de dos o más operaciones.
Indica que las instrucciones de un programa se ejecutan una después de la otra, en el mismo orden en el cual aparecen en el programa. Se representa gráficamente como una caja después de otra, ambas con una sola entrada y una única salida. Las cajas A y B pueden ser definidas para ejecutar desde una simple instrucción hasta un módulo o programa completo, siempre y cuando que estos también sean programas apropiados.
· Selección: bifurcación condicional de una o más operaciones. También conocida como la estructura SI-CIERTO-FALSO, plantea la selección entre dos alternativas con base en el resultado de la evaluación de una condición o predicado; equivale a la instrucción IF de todos los lenguajes de programación y se representa gráficamente de la siguiente manera:
En el diagrama de flujo anterior, C es una condición que se evalúa; A es la acción que se ejecuta cuando la evaluación de este predicado resulta verdadera y B es la acción ejecutada cuando indica falso. La estructura también tiene una sola entrada y una sola salida; y las funciones A y B también pueden ser cualquier estructura básica o conjunto de estructuras.
· Interacción: Repetición de una operación mientras se cumple una condición. También llamada la estructura HACER-MIENTRAS-QUE, corresponde a la ejecución repetida de una instrucción mientras que se cumple una determinada condición. El diagrama de flujo para esta estructura es el siguiente: Aquí el bloque A se ejecuta repetidamente mientras que la condición C se cumpla o sea cierta. También tiene una sola entrada y una sola salida; igualmente A puede ser cualquier estructura básica o conjunto de estructuras.


VENTAJAS DE LA PROGRAMACION ESTRUCTURADA



Con la programación estructurada elaborar programas de computador sigue siendo un albor que demanda esfuerzo, creatividad, habilidad y cuidado. Sin embargo, con este nuevo estilo podemos obtener las siguientes ventajas:
· Los programas son más fáciles de entender. Un programa estructurado puede ser leído en secuencia, de arriba hacia abajo, sin necesidad de estar saltando de un sitio a otro en la lógica, lo cual es típico de otros estilos de programación. La estructura del programa es más clara puesto que las instrucciones están mas ligadas o relacionadas entre sí, por lo que es más fácil comprender lo que hace cada función.
· Reducción del esfuerzo en las pruebas. El programa se puede tener listo para producción normal en un tiempo menor del tradicional; por otro lado, el seguimiento de las fallas se facilita debido a la lógica más visible, de tal forma que los errores se pueden detectar y corregir más fácilmente.
· Reducción de los costos de mantenimiento.
· Programas más sencillos y más rápidos
· Aumento de la productividad del programador
· Se facilita la utilización de las otras técnicas para el mejoramiento de la productividad en programación
· Los programas quedan mejor documentados internamente.



PROGRAMACIÓN ORIENTADA A OBJETOS (POO)



¿Que es la OOP?
· La OOP son un conjunto de técnicas que nos permiten incrementar enormemente nuestro proceso de producción de software. Aumenta drásticamente nuestra productividad por un lado y permitiéndonos abordar proyectos de mucha mayor envergadura.
· Usando estas técnicas, nos aseguramos la reusabilidad de nuestro código, es decir, los objetos que hoy escribimos, si están bien escritos, nos servirán para "siempre". En la OOP podemos re-usar ciertos comportamientos de un objeto, ocultando aquellos otros que no nos sirven, o redefinirlos para que los objetos se comporten de acuerdo a las nuevas necesidades.
¿Cuales son los elementos Básicos de la programación orientada a objetos?
· Datos: Características o atributos (propiedades en un lenguaje OOP).
· Métodos: Comportamientos (Procedimientos y/o funciones en lenguaje OOP). Es un programa procedimental que esta asociado a un objeto determinado y cuya ejecución solo Puede desencadenarse a través del mensaje correspondiente.
· MensajesEs simplemente una petición de un objeto a otro para que este se comporte de una manera Determinada, ejecutando uno de sus métodos.Los mensajes comunican a los objetos con otros y con el mundo exterior. A esta técnica de enviar mensajes se la conoce como paso de mensajes.
· Clases Es un tipo definido por el usuario que determina la estructura de datos y las operaciones asociadas con ese tipo.


CARACTERÍSTICAS DE LA POO



ABSTRACCIÓN

Ignorancia Selectiva
· La abstracción nos ayuda a trabajar con cosas complejas
· Se enfoca en lo importante
· Ignora lo que no es importante (simplifica)
Una clase es una abstracción en la que:
· Se enfatizan las características relevantes
· Se suprimen otras características
Una clase debe capturar una y solo una abstracción clave:
El proceso de abstracción permite seleccionar las características relevantes dentro de un conjunto e identificar comportamientos comunes para definir nuevos tipos de entidades en el mundo real. La abstracción es clave en el proceso de análisis y diseño orientado a objetos, ya que mediante ella podemos llegar a armar un conjunto de clases que permitan modelar la realidad o el problema que se quiere atacar.

HERENCIA

Es una relación entre clases en la cual una clase comparte la estructura y comportamiento definido en otra clase (Grady Booch) cada clase que hereda de otra posee:
· Los atributos de la clase base además de los propios
· Soporta todos o algunos de los métodos de la clase base
Una subclase hereda de una clase base:

La herencia (en la POO) es una potente arma que podemos utilizar para varias cosas, entre ellas, por ejemplo, ahorrar líneas de código heredando de otras clases, compartiendo variables miembro o función miembro. También podemos generar superclases abstractas para definir comportamientos genéricos que necesitemos.
La herencia es una de las características que más se hace notar a la hora de escribir código, o reutilizar código de otros programadores.


ENCAPSULAMIENTO

Principio que establece que los atributos propios de un objeto no deben ser visibles desde otros objetos
· Deben ser declarados Como privados
· Permite abstraer al resto del mundo de la complejidad de la implementación interna
· Permite exponer el estado del objeto sólo a través del comportamiento que le hayamos definido mediante miembros públicos

¿Por qué es útil?
· Punto de Control/Validación
· Mejor respuesta ante los Cambios

POLIMORFISMO

· Es la propiedad que tienen los objetos de permitir invocar genéricamente un comportamiento (método) cuya implementación será delegada al objeto correspondiente recién en tiempo de ejecución
· El polimorfismo tiende a existir en las relaciones de herencia, pero no siempre es así



PARADIGMAS DE PROGRAMACIÓN

Un paradigma de programación provee (y determina) la visión y métodos de un programador en la construcción de un programa o subprograma. Diferentes paradigmas resultan en diferentes estilos de programación y en diferentes formas de pensar la solución de problemas (con la solución de múltiples “problemas” se construye una aplicación).


Paradigma Orientado a Objetos: está basado en la idea de encapsular estado y operaciones en objetos. En general, la programación se resuelve comunicando dichos objetos a través de mensajes (programación orientada a mensajes). Se puede incluir aunque no formalmente- dentro de este paradigma, el paradigma basado en objetos, que además posee herencia y subtipos entre objetos. Ej. C++, Java, Visual Basic .NET, etc.Su principal ventaja es la reutilización de códigos y su facilidad para pensar soluciones a determinados problemas.

TABLA COMPARATIVA

Visual Basic
Visual Basic 6.0 es un lenguaje de programación visual, también llamado lenguaje de 4ªgeneración. Esto quiere decir que un gran número de tareas se realizan sin escribir código, simplemente con operaciones gráficas realizadas con el ratón sobre la pantalla.
Visual Basic 6.0 es también un programa basado en objetos, aunque no orientado a objetos como C++ , Java o Visual Basic.NET.

La Ventana propiedades muestra todas las propiedades del control actualmente seleccionado, en este caso muestra las propiedades del Form1, luego podemos ver que abajo dice "Form1 Form", lo que está en negrita es el nombre del objeto, y lo que le sigue es el tipo de objeto, en este caso es un Formulario (Form)










2 comentarios:

  1. me gusto gracias

    ResponderEliminar
  2. Deberia poner diferencias entre mas paradigmas de programacion, un cuadro comparativo mas completo, incluyendo los siguientes paradigmas: imperativo, logico, estructurado, orientado a eventos, orientado a aspectos, orientado a componentes...

    ResponderEliminar