Programacion orientada a objetos
HITO 2
CURSO 2010/ 2011
INDICE:
Introducción……………………………………………pag 3
Presentación……………………………………………pag 5
Explicación……………………………………………pag 6
Conclusiones……………………………………………pag 8
Referente a la práctica……………………….. pag 8
Referente Al trabajo en grupo...……………….. pag 9
INTRODUCCIONComenzaremos hablando de la Programación orientada a objetos ya que es el objetivo fundamental de esta práctica, por ser en base a ella la forma en la que es posible desarrollarla por la colaboración que hay entre los diferentes objetos.
La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones, paradiseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo herencia, abstracción, polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década de los años 1990. En la actualidad, existe variedad de lenguajes de programación que soportan la orientación a objetos.
En este hito nos centramos en la herencia y el polimorfismo.
La herencia esespecífica de la programación orientada a objetos, donde una clase nueva se crea a partir de una clase existente. La herencia proviene del hecho de que la clase derivada contiene los atributos y métodos de la clase base. La principal ventaja de la herencia es la capacidad para definir atributos y métodos nuevos para la clase derivada, que luego se aplican a los atributos y métodos heredados.El polimorfismo se refiere a la capacidad para que varias clases derivadas de una antecesora utilicen un mismo método de forma diferente.
Se puede aplicar tanto a funciones como a tipos de datos. Así nacen los conceptos de funciones polimórficas y tipos polimórficos. Las primeras son aquellas funciones que pueden evaluarse o ser aplicadas a diferentes tipos de datos de forma indistinta;los tipos polimórficos, por su parte, son aquellos tipos de datos que contienen al menos un elemento cuyo tipo no está especificado.
Además se debe tener en cuenta las relaciones entre clases, aunque ese tema ya se trató en la primera parte de la práctica, es decir, en el hito 1.
PRESENTACION
Los conceptos a tratar en este hito, como ya se ha dicho es la relación de herencia yel polimorfismo tratando de respetar el siguiente esquema:
[pic]
En nuestro caso particular no hemos desarrollado ciertas clases ni sus respectivos atributos, si no que nos hemos ceñido al manejo de las plazas de los clientes, sean del tipo que sean.
Se han intentado evitar los problemas que nos especificaban en la práctica para que cierto cliente pueda dejar su coche en el garajesin problemas.
Se han obviado los casos de coche grande y pequeño, así como los pagos y los ticket.
EXPLICACION
La mas clara explicación de cómo se ha desarrollado la practica la tenemos con el código que se adjunta. Aun así explicaremos nuestro punto de vista:
Al entrar y salir del garaje (métodos entrada y salida del gestor) hay que dejar constancia de ello.
Siel cliente es fijo entra a su propia plaza y se cambia el atributo para conocer posteriormente que”esta dentro”. Del mismo modo, cuando sale se cambia para saber que ya no esta dentro.
Un problema que nos podemos encontrar es que al entrar el cliente fijo tenemos que verificar que no haya ningún cliente de paso con su coche en dicha plaza. En caso de que lo haya hay que recolocar a esteúltimo.
En caso de que el cliente sea de paso, cuando realiza la entrada hay que buscarle plaza. Lo mas lógico es buscarle una totalmente libre, es decir, que no esté asignada a un cliente fijo. Si existe este tipo de plaza lo único que debemos hacer es introducir en dicha plaza el coche y cuando utilice el método salida volveremos a dejarla como libre; es decir, el puntero a dicha plaza como...
Regístrate para leer el documento completo.