You are on page 1of 9

2008

EXAMEN UNIDAD 2
FUNDAMENTOS DE PROGRAMACION
M.C. JOSÉ ÁNGEL TOLEDO ÁLVAREZ

INSTITUTO TECNOLOGICO DE
MINATITLAN

GOMEZ PEREZ JESUS FRANCISCO


ING. EN SISTEMAS COMPUTACIONALES
11/03/2008
1.- DEFINE LOS SIGUIENTES CONCEPTOS

• CLASES, ATRIBUTOS, METODOS, OBJETOS.

Clases.

En el contexto del análisis y el diseño, una clase es una categoría o grupo de cosas que
tienen atributos y comportamientos comunes.

La acción de agrupar los objetos de acuerdo a sus características comunes se llama


clasificación y es una habilidad que utilizamos los humanos para organizar el
conocimiento.
La clasificación puede verse como la acción de colocar cada objeto en un casillero
etiquetado exprofeso para alojar a todos los objetos de esa clase.
Se acostumbra que los nombres para las clases se escriban en singular con la primera letra
en mayúscula. Por ejemplo, los nombres para las clases de los objetos del aula serían:

Alumno
Profesor
Mesa
Silla
Pizarrón

También podemos observar que hay objetos compuestos de otros objetos. Por ejemplo, la
silla está compuesta de:

4 patas
1 respaldo
1 asiento

A esta relación, donde un objeto está formado por otros objetos, se le llama agregación.

Otra relación consiste en que, a partir de un objeto existente, se pueda crear otro nuevo
objeto, agregándole nuevos atributos o comportamientos. Por ejemplo, agregándole una
paleta a una silla obtenemos un mesabanco. Esta relación se llama derivación.

En este caso, a partir de la clase Silla se ha formado una nueva clase llamada Mesabanco.

Objetos.

Un objeto es una instancia o caso particular de una clase.


Normalmente un objeto tiene una identidad personal que lo distingue de los demás
objetos. De esta forma, un objeto tiene estado, comportamiento e identidad.
.

El estado de un objeto lo constituyen todos los datos que encapsula en un momento


determinado. Un objeto tiene cierto número de elementos que se conocen como
atributos, cada uno de los cuales posee un valor.

El comportamiento es la manera en que actúa y reacciona un objeto, en función de sus


cambios de estado y el paso de mensajes.

La identidad nos dice que un objeto tiene una existencia continuada. Por ejemplo los
valores de los atributos de este objeto podrían cambiar, quizás como respuesta a un
mensaje, pero seguiría siendo el mismo objeto.

Atributos.

Un atributo es una característica de un objeto. Por ejemplo, todos los objetos de la clase
Lavadora tienen atributos como: la marca, el modelo, el número de serie y la capacidad.
Por ejemplo:

UnaLavadora
Laudatorium
Washmeister
GL57774

7Kg.

Métodos.

Es una operación o algoritmo que realiza acceso a los datos y esta asociado aun objeto o a una
clase de objetos. Puede estar escrito en cualquier lenguaje, cuya ejecución sólo puede
desencadenarse a través de un mensaje recibido por éste o por sus descendientes.

Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede
producir un cambio en lar propiedades del objeto, o la generación de un “evento” con un nuevo
mensaje para otro objeto del sistema.

Es conveniente utilizar el término 'método' para que se distingan claramente las propiedades
especiales que adquiere un programa en el entorno de la poo, que afectan fundamentalmente a la
forma de invocarlo (únicamente a través de un mensaje) y a su campo de acción, limitado a un
objeto y a sus descendientes, aunque posiblemente no a todos.

Si los métodos son programas, se deduce que podrían tener argumentos, o parámetros. Puesto
que los métodos pueden heredarse de unos objetos a otros, un objeto puede disponer de un
método de dos maneras diferentes:

-métodos propios. Están incluidos dentro de la cápsula del objeto.


-métodos heredados. Están definidos en un objeto diferente, antepasado de éste (padre,
"abuelo", etc.). A veces estos métodos se llaman método miembro porque el objeto los posee por
el mero hecho de ser miembro de una clase

2.- DEFINA EL CONCEPTO DE “ABSTRACCION” Y EXPLIQUE AMPLIAMENTE PARA QUE NOS SIRVE.

Cada objeto en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo,
informar y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar cómo se
implementan estas características. Los procesos, las funciones o los métodos pueden también ser
abstraídos y cuando lo están, una variedad de técnicas son requeridas para ampliar una
abstracción.

La abstracción nos sirve en demasía para poder saber que puede ofrecernos cada objeto y darle la
utilidad que nos permita aprovecharlo al máximo, y lograr un sistema eficiente, sin tener que
revisar cada objeto para entender como hace lo que le pedimos, es decir nos facilita su uso.

Un ejemplo de abstracción es el hecho de que uno pueda conducir un automóvil sin ser un
mecánico (lo cual probablemente no era cierto con los primeros vehículos). Al conducir, uno se
abstrae de cómo funciona la combustión en el motor. Sólo se requiere saber cómo se maneja el
volante y los pedales, y cuales son las reglas del tránsito.
3.- DEFINA “UML” Y ENLISTE LOS 9 DIAGRAMAS QUE EMPLEA.

El Lenguaje de Modelamiento Unificado (UML - Unified Modeling Lenguaje) es un lenguaje


gráfico para visualizar, especificar y documentar cada una de las partes que comprende el
desarrollo de software. UML entrega una forma de modelar cosas conceptuales como lo
son procesos de negocio y funciones de sistema, además de cosas concretas como lo son
escribir clases en un lenguaje determinado, esquemas de base de datos y componentes de
software rehusadles.

1 Casos de uso

2 Clases y objetos

3 Interacción

4 Despliegue

5 Componentes

6 Actividades

7 Estado

8 Colaboración

9 Comunicación

4.- EXPLIQUE LOS PASOS METODOLOGICOS QUE SE NECESITAN PARA DESARROLLAR UN


PROBLEMA.

Planteamiento del problema: Comenzar a descubrir cual es el problema que necesitamos resolver
o que necesidad deseamos suplir, obtener comentarios del cliente para saber exactamente hacia
donde enfocaremos el proyecto y que quiere obtener por medio de un software.

Análisis: En esta parte del proceso se mira el problema desde diferentes puntos, ver que posibles
soluciones existen y de que manera vamos a resolver el problema; investigar todo lo que nos
pueda ayudar a elaborar un programa que cumpla con las expectativas nuestras y del cliente.
Incluso se puede convivir con el cliente en su entorno de trabajo para poder absorber experiencias
y utilizarlas para obtener un extra en cuanto a eficacia en el programa.

Así mismo se comienza a ver que elementos ocuparemos, que lógica se va a utilizar, que interfaz
será la adecuada para el desempeño del programa.

Diseño: En este paso es donde comenzamos a echar mano del análisis obtenido, y comenzamos a
diseñar nuestro programa, a través de los 9 diagramas de UML para obtener una visión de cómo
se mirara nuestro programa, como funcionara y como interactuara con el usuario. Plasmando
todos los componentes del sistema, los objetos, métodos, variables, constantes, operadores,
librerías, etc.

Programación: Se iniciara el proceso de codificación del programa, utilizando un editor de código,


y todos los conocimientos previos acerca de sentencias, comandos, métodos y operaciones. Esto
con el fin de lograr una buena codificación y garantizar una perfecta ejecución. Revisando siempre
que no existan errores de sintaxis.

Prueba y depuración: En esta etapa se compila nuestro programa y se ejecuta para verificar que
funciona como lo hemos planeado, revisando que no existan errores de ejecución, de operación e
incluso de sintaxis, para poder garantizar al cliente que el software cumple con sus expectativas.

Documentación: Es necesario elaborar dos manuales, uno de usuario, en donde se incluirán las
instrucciones de uso del software, como se ejecuta el programa y demás puntos que serán útiles
para quien vaya a manejar el programa. Y el otro manual será el técnico, en donde incluiremos
código fuente, y diseño; todo lo necesario para que el programador o ingeniero pueda dar
mantenimiento al programa e incluso llevarlo a una evolución.

Mantenimiento y/o evolución: Última etapa del proceso, en donde nos encargaremos de
garantizar el correcto funcionamiento del programa, en caso de existir alguna falla durante el uso
del mismo, e incluso podemos mejorarlo, actualizarlo o agregar nuevas funciones.

5.- ILUSTRE UN EJEMPLO COMPLETO DE UN DIAGRAMA DE CLASES Y UN DIAGRAMA DE


INTERACCION ENTRE LA APLICACIÓN Y LA CLASE.

El diagrama de interacción, representa la forma en como un Cliente (Actor) u Objetos (Clases) se


comunican entre si en petición a un evento.

Esto implica recorrer toda la secuencia de llamadas, de donde se obtienen las responsabilidades
claramente. Dicho diagrama puede ser obtenido de dos partes, desde el Diagrama Estático de
Clases o el de Casos de Uso (son diferentes).

Los componentes de un diagrama de interacción son: Un Objeto o Actor. Mensaje de un objeto a


otro objeto. Mensaje de un objeto a si mismo.

Elementos Objeto / actor: El rectángulo representa una instancia de un Objeto en particular, y la


línea punteada representa las llamadas a métodos del objeto.

Mensaje a Otro Objeto: Se representa por una flecha entre un objeto y otro, representa la llamada
de un método (operación) de un objeto en particular.
Mensaje al Mismo Objeto: No solo llamadas a métodos de objetos externos pueden realizarse,
también es posible visualizar llamadas a métodos desde el mismo objeto en estudio.

Ejemplo
En el presente ejemplo, tenemos el diagrama de interacción proveniente del siguiente modelo
estático:

Aquí se representa una aplicación que posee una Ventana gráfica, y ésta a su vez posee
internamente un botón.

Entonces el diagrama de interacción para dicho modelo es: En donde se hacen notar las sucesivas
llamadas a Draw () (entre objetos) y la llamada a Paint () por el objeto Botón

So la ris Bienvenida M e nu principal

U S UA R IO

Con ce ptos P lan etasy


In trod uccion B iblio grafia
B a sico s g alaxia s

D esp edid a
6.- ILUSTRE UN EJEMPLO COMPLETO DE UN DIAGRAMA DE ESTADO DE UNA CLASE.

Bienvenidos

Sistema CAVo

1) Calcular Área

2) Calcular Volumen

3) Calcular Figura Irregular

Lectura de
Datos

1) Triangulo
1)
Si es 1 2) Circulo
2)
3) Rombo
3)
4) Cubo

5) Cilindro Lectura 4) Pedir Datos


de Datos
Si es 2 6) Esfera
5)

6) Devolver
Resultado
7) Triangulo
Escaleno 7)
Si es 3

7.- REALICE UN PROGRAMA QUE DE LA BIENVENIDA AL CURSO DE FP.


import java.io.*
public class Bienvenido
{
public static void main(String[] args)
{
System.out.println("Bienvenido a Fundamentos de Progrmacion");
}
}