sábado, 3 de octubre de 2009

Diagramas





Diagrama de clase de la Gasolineria
 
Diagrama de clase de la Alarma


 

Diagrama de casos de uso de la Alarma






Diagrama de caso de uso de la Gasolineria





 Analisis de fuera de serie (10,000 hrs)

trata de como ser experto en alguna disciplina y que eso se debe a la practica adecueda para serlo como son las 10,000 horas de practicas seguidas que nos ayudan en ser muy bueno en la actividad que nos gusta un ejemplo es el de Gates que desde pequeño le llamaban la atención las computadoras y entonces decidio conocerlas por asi decirlo y desde alli empezo a practicar en ellas desde ese lapso tuvo la oportunidad de legar a ser mejor cada dia en ellas
En general no hay gente que pueda saltarse estos tiempos de práctica y ser un experto sin dejar de practicar, tambien otro ejemplo importante seria de los jugadores de hocky que lso psycologos decian que dependiendo el mes en que nacieron era su exito y por otro lado en tiempos atras y en los interactuaron en las computadoras tuvieron que ver con su fecha de nacimiento, por que nacieron en el momento exacto, otro ejemplo tambien seria el de los que tocaban algun instrumento que ya sea que desde muy chico les llamar la atención como a Gate ùede que a cierta edad ya habien acompletado sus 10,000 horas de practica y se puede decir que ya son profesionales en cambio a los que no las acompletan se quedan abajo de ello.

lunes, 28 de septiembre de 2009

Resumen de UML




UML significa "Unified modeling language" por lo que previamente se podría inferir lo que quiere decir, UML está hecho como un lenguaje común para modelar software orientado a objetos, UML provee de herramientas especializadas para dar un analisis profundo del problema(programa) que se esté atacando.

UML provee de las siguientes herramientas:


  • Diagramas de casos de uso
  • Diagrama de clases
  • Diagrama de estados
  • Diagrama de secuencias
  • Diagrama de actividades
  • Diagrama de colaboraciones
  • Diagrama de componentes
  • Diagrama de distribución

La notación usada en UML es vasta, y basta para exponer objetos, atributos, clases y sus respectivas relaciones.

Diagrama de clase sirve para visualizar las relaciones entre las clases que involucran el sistema, las cuales pueden ser asociativas, de herencia, de uso y de contenimiento.

Un diagrama de clases esta compuesto por los siguientes elementos:



  • Clase: atributos, métodos y visibilidad.
  • Relaciones: Herencia, Composición, Agregación, Asociación y Uso
Clase



Es la unidad básica que encapsula toda la información de un Objeto,a  través de ella podemos modelar el entorno en estudio (una Casa, un Auto, una Cuenta Corriente, etc.).


Objeto un objeto es una instancia de una clase

viernes, 25 de septiembre de 2009

Fundamentos de Programación








1.1 Reconocimiento de Objetos y Clases


En java un objeto se define como una estructura que encapsula atributos (características) y comportamientos (procedimientos) de una entidad con un papel bien definido en una aplicación.
Cada objeto tiene: 


- Estado: Conjunto de valores de los atributos en un instante de tiempo dado. El comportamiento de un objeto puede modificar el estado de este.
- Comportamiento: Relacionado con su funcionalidad y determina las operaciones que este puede realizar o a las que puede responder ante mensajes enviados por otros objetos.
- Identidad: Es la propiedad que permite a un objeto diferenciarse de otros. Generalmente esta propiedad es tal, que da nombre al objeto.
Los objetos, concretos y abstractos, están a nuestro alrededor, forman nuestro entorno. Podemos distinguir cada objeto en base a sus características y comportamientos.
Por ejemplo, en un aula de clases observamos los siguientes objetos:
• Alumno
• Profesor
• Mesa
• Silla
• Mesa banco
• Pizarrón
Interacción entre objetos: Los objetos no sólo tienen atributos relacionados con su forma física sino que, además, exhiben comportamientos específicos de su clase.
Alumno: Estudia, aprende.
Profesor: Enseña, evalúa.
Mesa: Ordenada, desordenada.
Silla: Ocupada, desocupada.
Mesa banco: Ocupado, desocupado.
Pizarrón: Pintado, borrado
Observamos que en el aula hay varios objetos alumno, por lo que pensamos en el grupo de alumnos, al que denominaremos como la clase alumno. De igual manera, cada materia es impartida por un profesor; el conjunto de profesores forman la clase Profesor. Pudiéramos extender nuestro análisis al pizarrón, la mesa, la silla,, al conjunto de mesa bancos, etc.
Clases: Es la definición de un objeto. Cuando se programa un objeto y se definen sus características y funcionalidades, realmente se programa una clase. 




 1.2 La abstracción y el Encapsulamiento


Abstracción: Es un método por el cual abstraemos valga la redundancia, una determinada entidad de la realidad de sus características y funciones que desempeñan, estos son representados en clases por medio de atributos y métodos de dicha clase.
Ejemplo: La abstracción de un automóvil.
- Características: Color, año de fabricación, modelo, etc.
- Métodos o Funciones: Frenar, encender, etc.
A esto se le llama abstracción. En general un programa no es más que una descripción abstracta de un procedimiento o fenómeno que existe o sucede en el mundo real.
- La abstracción es crucial para comprender este complejo mundo.
- La abstracción es esencial para el funcionamiento de una mente humana normal y es una herramienta muy potente para tratar la complejidad.
- La abstracción es clave para diseñar un buen software.
Procedimientos: Proporcionó la primera posibilidad de ocultación de información.
Módulos: Es una técnica que proporciona la posibilidad de dividir sus datos y procedimientos en una parte privada y una parte pública. Proporcionan un método efectivo de ocultación de la información, pero no permiten realizar instanciación, que es la capacidad de hacer múltiples copias de las zonas de datos.
TADS: Un tipo abstracto de dato (TAD) es un tipo de dato definido por el programador que se puede manipular similarmente a los tipos de datos definidos por el sistema. Un tipo abstracto de dato corresponde a un conjunto (puede ser de tamaño indefinido) de valores legales de datos y un número de operaciones primitivas que se pueden realizar sobre esos valores. Para construir un tipo abstracto de dato se debe:
1.- Exponer una definición del tipo.
2.- Hacer disponible un conjunto de operaciones.
3.- Proteger los datos asociados con el tipo.
4.-Permitir instancias múltiples del tipo. 









Si nos concentramos en las cosas, podemos encapsular en un objeto nuestro entendimiento acerca de sus características y el comportamiento de ese objeto. Lo tratamos como una entidad definida y su comportamiento no esta disperso en nuestro diseño. Es decir, no separamos la viscosidad del aceite de su color sino creamos un objeto aceite y ponemos ambas características como característica de dicho objeto.
El encapsulamiento nos permite considerar a los objetos como cajas negras: como objetos que podemos utilizar sin enfocarnos en la forma en que trabajan.
Caja negra.- Un objeto en el que su comportamiento y atributos son conocidos pero no así su trabajo interno, el cual continúa siendo un misterio.
Un mecánico debe saber como trabaja el motor y la transmisión de su carro, pero usted como conductor, puede usarlo sin preocuparse por estos detalles, El carro encapsula todos los detalles de las partes que lo constituyen, por lo que usted tan solo necesita conocer su interfaz: el acelerador, el freno y el volante.
Si abre la caja negra de su carro y se fija en lo que hay bajo el cofre, no encontrara una masa amorfa de características, sino subobjetos simples que interactúan entre si: motor, transición, poleas, etc. Si abre alguno de estos objetos encontrará más objetos, por ejemplo, el motor esta construido por bujías, tubos, bandas, convertidores catalíticos, etc. Y cada uno de ellos contiene a su vez objetos más pequeños que cumplen con una tarea específica.
Cuando el motor le da propulsión al carro, no hace todo el trabajo en un solo objeto monolítico. En vez de ello, delega a los objetos que lo constituyen una responsabilidad, A su vez, estos objetos pueden delegar responsabilidades a otro. De esta manera, el motor delega la acumulación de presión a los pistones y la responsabilidad de generar la chispa a las bujías. 
La encapsulacion separa las caracteristicas esenciales de las no esenciales dentro de un objeto.