2. Paradigma Tradicional Frente a
Paradigma Orientado a Objetos
Paradigma Tradicional.- Los programas son más fáciles de
entender. Un Paradigma Tradicional 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. 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 mas fácilmente.
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 .La programación estructurada
permite la escritura de programas fáciles de leer y modificar.
3. LA PARADIGMA ORIENTADA A OBJETOS (POO) es una forma
especial de programar, más cercana a como expresaríamos las cosas en
la vida real que otros tipos de programación. Reusabilidad. Cuando
hemos diseñado adecuadamente las clases, se pueden usar en distintas
partes del programa y en numerosos proyectos. Mantenibilidad. Debido
a la sencillez para abstraer el problema, los programas orientados a
objetos son más sencillos de leer y comprender, pues nos permiten
ocultar detalles de implementación dejando visibles sólo aquellos detalles
más relevantes. Modificabilidad. La facilidad de añadir, suprimir o
modificar nuevos objetos nos permite hacer modificaciones de una forma
muy sencilla. Fiabilidad. Al dividir el problema en partes más pequeñas
podemos probarlas de manera independiente y aislar mucho más
fácilmente los posibles errores que puedan surgir.
Paradigma Tradicional Frente a
Paradigma Orientado a Objetos
4. Diferencia Entre Paradigma
Orientado a Objetos y Paradigma
Estructural
• La programación estructurada consta, como su
nombre lo indica, de una estructura donde se va
ejecutando paso a paso y este debe de tener una
secuencia y una lógica para que su función sea
eficiente.
• La programación orientada a objetos se basa en
una nueva forma de pensar los problemas,
declarando como variables o los tipos de datos los
objetos del problema, y que a su vez, cada objeto
tiene anidadas variables que hacen referencia al
dato.
5. OBJETOS Y CLASES
• Un objeto es una encapsulación de un estado
(valores de los datos) y comportamiento
(operaciones).
• Los objetos se agrupan en categorías (clases).
• Un objeto es una instancia de una clase.
• El método invocado por un objeto en respuesta a un
mensaje viene determinado por la clase del objeto
receptor.
6. Herencia (Especialización/Generalización):
Indica que una subclase hereda los métodos y atributos especificados por una Súper
Clase, por ende la Subclase además de poseer sus propios métodos y atributos, poseerá las
características y atributos visibles de la Súper Clase (publicó y privada)
Agregación:
Para modelar objetos complejos, no bastan los tipos de datos básicos que proveen
los lenguajes: enteros, reales y secuencias de caracteres. Cuando se requiere componer
objetos que son instancias de clases definidas por el desarrollador de la aplicación, tenemos
dos posibilidades:
Asociación:
La relación entre clases conocida como Asociación, permite asociar objetos que
colaboran entre si. Cabe destacar que no es una relación fuerte, es decir, el tiempo de vida de
un objeto no depende del otro. Por ejemplo:
Un cliente puede tener asociadas muchas Ordenes de Compra, en cambio una orden de
compra solo puede tener asociado un cliente.
7. Modelo UML
Es un lenguaje para especificar, construir, visualizar y documentar los
artefactos de un sistema de software orientado a objetos (OO). Un artefacto es
una información que es utilizada o producida mediante un proceso de desarrollo
de software.
EjemplodelModeloUML
Una Cuenta Corriente que posee como
característica:
Balance
Puede realizar las operaciones de:
Depositar
Girar
y Balance
El diseño asociado es:
8. OCULTAMIENTO DE INFORMACIÓN
EN UML
Ocultamiento: Se utiliza para ocultar los detalles
de nuestra clase, detalles que el mundo exterior
no necesita conocer y solo pone a disposición
aquellos que el mundo necesita conocer para
que la clase cumpla con su cometido, una clase
cuanto menos información pública tenga mas fácil
y reutilizable puede ser.
9. EL PROCESO UNIFICADO
El Proceso Unificado es un proceso de software genérico
que puede ser utilizado para una gran cantidad de tipos de
sistemas de software, para diferentes áreas de aplicación,
diferentes tipos de organizaciones, diferentes niveles de
competencia y diferentes tamaños de proyectos.
Iteración e Incremento dentro del proceso unificado
Desarrollar un producto de software comercial es una tarea
enorme que puede continuar por varios meses o años. Es práctico
dividir el trabajo en pequeños pedazos o mini-proyectos. Cada
mini-proyecto es una iteración que finaliza en un incremento. Las
iteraciones se refieren a pasos en el flujo de trabajo, los
incrementos se refieren a crecimiento en el producto. Para ser más
efectivo, las iteraciones deben estar controladas, esto es, deben
ser seleccionadas y llevadas a cabo de una manera planeada.
10. CARACTERÍSTICASDELINCREMENTOE
ITERACIÓNDENTRODELPROCESO
UNIFICADO
• Planificar la iteración (estudio de riesgos)
• Análisis de los Casos de Uso y escenarios
• Diseño de opciones arquitectónicas
• Codificación y pruebas. La integración del nuevo
código con el existente de iteraciones anteriores se
hace gradualmente durante la construcción.
• Evaluación de la entrega ejecutable (evaluación del
prototipo en función de las pruebas y de los criterios
definidos).
•Preparación de la entrega (documentación e
instalación del prototipo).