Autor |
Mensaje |
Kartlan
Nivel 5
Edad: 43
Registrado: 09 Ago 2005
Mensajes: 176
Ubicación: Once
Carrera: Informática
|
|
Hola!... esto vendria a ser a cuento de uno de los temas centrales de la POO aplicada a desarrollos decentes. A quienes esten cursando Algoritmos y Programación 3... ya lo veran... para los demás nunca es malo conocer cosas simples.
La idea es que cuando me den ganas de compartir conocimiento agarro algun patron de diseño, les tiro un gráfico y una pequeña descripción (Todo buscado de la web y "condensado" a travez de mi intelecto infinitamente superior ). Así que abran el barril de "Conocimiento" y beban a mi salud!...
El problema que atacan los patrones de diseño son principalmente por el lado de la reusabilidad y confiabilidad de codigo. Los patrones son guias muy generales de clases o relaciones entre ellas que forman modelos en los que basar nuestros desarrollos. Lo más cercano a planos que podemos hacer, pues mezclan los conceptos de UML, con la POO llevandolos a la escala de puntos a cumplir. En si, son soluciones simples a problemas comunes que funcionan.
|
|
|
|
|
|
|
|
|
Kartlan
Nivel 5
Edad: 43
Registrado: 09 Ago 2005
Mensajes: 176
Ubicación: Once
Carrera: Informática
|
|
El Singleton casi que se explica solo, es una clase de la cual se requiere que exista una sola instancia y ninguna otra. Por ejemplo si quisieran hacer un objeto para modelar la unica compactera de una maquina, esta no puede ser creada cada vez que se necesita, sino unicamente cuando se instala en el gabinete, luego a lo largo de la vida util todos los que utilicen la maquina (remotamente o no) tendran que acceder a la misma y unica compactera. Además hay otros patrones que basicamente son "Multi-tons" que se encargan de limitar la cantidad de instancias que se pueden crear de una determinada clase, el Singleton es una simplificación de este.
El link de abajo es una implementación en Java que es ligeramente distinta al parrafo explicatorio siguiente, pero lo importante es que sepan sacar ideas claras, y las dudas se sacan pregutando. Además, ahora que me acuerdo, me encantaria que los programadores Java (este preferiria no tener que saber) y Python (este no se, y deseo aprender) de por ahi mandaran las diferencias de cada patrón en sus lenguajes.
El patrón se basa en la utilización de un constructor privado, y un metodo de clase con el cual se obtiene la instancia. Para continuar con las caracteristicas generales del patrón, este tiene un campo privado que se utiliza para almacenar una referencia a la instancia creada, un constructor privado, y un metodo de clase que es lo que le permite al patrón andar. El metodo generalmente se lo denomina GetInstance, por que devuelve la instancia. El momento en que se crea propiamente la instancia es una cuestion de implementación, puede hacerse cuando se carga la unidad o la primera vez que se llama al metodo GetInstance, o quien sabe cuantas otras implementaciones. Este parrafo es la descripción de UNA implementación.
Pues como decia el Prof. Lage, "nosotros los ingenieros no somos albañiles" refiriendose a que a un Ingeniero Civil jamas lo vas a ver poner un ladrillo y que programar hay que delegarlo hacia abajo, nosotros tenemos que enfocarnos en diseñar soluciones confiables. Pero por ahora hay que programar, programar... y programar.
Esto es solo un pequeño detalle del patrón singleton, y de los demas tambien va a ser corto, lo importante es que lo vean y si necesitan más información busquen en la web... que esta lleno.
http://www.elrincondelprogramador.com/articulos/docs/45/Singleton.gif
|
|
|
|
|
|
|
|
|
Kartlan
Nivel 5
Edad: 43
Registrado: 09 Ago 2005
Mensajes: 176
Ubicación: Once
Carrera: Informática
|
|
Este es un lindo patrón. Principalmente se trata de darle a una clase comportamientos diferentes según que estrategia este usando, perimientod además agregar estrategias posibles, eliminarlas, y de esta manera hacer más flexibles las respuestas de nuestra clase ante diferentes situaciones.
|
Strategy.rar |
Descripción: |
|
Download |
Nombre de archivo: |
Strategy.rar |
Tamaño del archivo: |
5.8 KB |
Bajado: |
780 vez |
|
|
|
|
|
|
|
|
tHe_ChOsEn_OnE
Nivel 8
Edad: 39
Registrado: 15 Nov 2005
Mensajes: 758
Ubicación: Frente a la PC
Carrera: Informática
|
|
Hola gente... estoy muy interesado en saber algo mas de patrones y metodos de diseño, ya que se me complico mucho un TP de Algo 2, porque todos nos pusimos a hacer cosas sin pensar en nada del diseño; y terminó siendo completamente distinto lo que hicimos a lo que comenzamos a hacer.
Lo que quisiera saber es si alguno tiene idea de como empezar a aprender a empezar a hacer un programa (que feo suena eso!), porque escucho por todos lados que la implementacion es lo ultimo que se debe hacer, que hay que diseñar primero, pero no se como!!! jejeje. O sea existe algun metodo de diseño, o uno lo inventa a su gusto? (lease tambien donde dice metodo de diseño, libro)
Bueno, creo q orientandome un poquillo seria mas que suficiente, porque estoy perdido y no se como empezar con esto, ya q por lo menos en las primeras materias no enseñan a diseñar, sino a programar
|
|
|
|
_________________ tHe_ChOsEn_OnE
Chat-Fiuba
No he de rendirme si caigo al andar... no estaré vivo si he de huir... Si por vivir no he de ser dueño de mi... mejor en pie morir!!! ( 8 ) Tierra santa
|
|
|
|
|
Fhran
Administrador
Edad: 39
Registrado: 25 Ago 2005
Mensajes: 3123
Ubicación: En la rama de un árbol... entre locos.
Carrera: Electrónica y Informática
|
|
**********
Es todo un tema...
En mi experiencia he aprendido a diseñar al mismo tiempo en el que implementaba... la verdad es que no nos enseñan muy bien como encarar el diseño de un sistema de gran escala. De todas las ideas que tuve al principio, antes de ponerme a programar, muy poquitas sobrevivieron sin serias modificaciones.
Los patrones de diseño son utiles pero con eso no te alcanza...
¿Porque no planteas el "problema" y veo si te puedo ayudar mejor?
Imagino que estaras por hacer el TP3 de Graphos...
***********
|
|
|
|
_________________
El horóscopo del ingeniero es un poco más amplio. Se compone de Amor, Dinero, Salud, Simetría y Linealidad Causa-Efecto.
|
|
|
|
|
tHe_ChOsEn_OnE
Nivel 8
Edad: 39
Registrado: 15 Nov 2005
Mensajes: 758
Ubicación: Frente a la PC
Carrera: Informática
|
|
Fhran escribió:
|
¿Porque no planteas el "problema" y veo si te puedo ayudar mejor?
|
No hay problema, es una cosa que me vengo planteando en general. Veo que cuando me pongo a hacer el sistema, termino perdidisimo, y en ciertos momentos me encuentro pensando "que estaba haciendo? para que estoy haciendo esto?", y muchisimas veces me encuentro tirando codigo que no servia para nada, no porque no ande ni nada por el estilo, si no que no pense bien el diseño e implementè un codigo que no tenia ninguna utilidad, aunque al principio pensaba que si...
Fhran escribió:
|
Imagino que estaras por hacer el TP3 de Graphos...
|
Por suerte con este no tuvimos muchos problemas, porque no modificamos casi nada la idea original, en el que tuvimos problemas fue el de listas (base de datos, Mandrafina)
Muchas gracias[/i]
|
|
|
|
_________________ tHe_ChOsEn_OnE
Chat-Fiuba
No he de rendirme si caigo al andar... no estaré vivo si he de huir... Si por vivir no he de ser dueño de mi... mejor en pie morir!!! ( 8 ) Tierra santa
|
|
|
|
|
|
|
Ver tema siguiente
Ver tema anterior
Podés publicar nuevos temas en este foro No podés responder a temas en este foro No podés editar tus mensajes en este foro No podés borrar tus mensajes en este foro No podés votar en encuestas en este foro No Podéspostear archivos en este foro Podés bajar archivos de este foro
|
Todas las horas son ART, ARST (GMT - 3, GMT - 2 Horas)
Protected by CBACK CrackerTracker365 Attacks blocked.
|