Sigo hablando en mi blog de patrones de diseño, esta vez de una aplicación que usa varios patrones de diseño a la vez, el "Organizador de Carpetas de Descargas" (http://jsbsan.blogspot.com.es/2014/...ificador-y.html)
Que inicialmente solo usaba el de Command, pero luego le he añadido el patrón Strategy para eliminar los Select Case.
Os dejo el enlace donde comento la implementación del patrón Switch Strategy y Command:
http://jsbsan.blogspot.com.es/2014/...ejemplo-de.html
Nota:
Para los que habéis comprado el libro, haré un anexo que os podréis a descargar gratuitamente con esta entrada (y si hay alguna, también iré montando anexos de descarga gratuita)
Patrones De Diseño En Gambas3
Objetivo: Re: Patrones De Diseño En Gambas3
Gran trabajo Julio.
Me sumo a los que han comprado el libro.
Me alegro de que hayas publicado por fin un libro en Lulu.
Saludos
Me sumo a los que han comprado el libro.
Me alegro de que hayas publicado por fin un libro en Lulu.
Saludos
Objetivo: Re: Patrones De Diseño En Gambas3
He cambiado un poco el formulario principal para el patrón que nos muestra la fabrica de vehículos.
He creado un grupo de radiobuttons u optionbutton (je) y el código parece un poco mas fácil
Saludos
He creado un grupo de radiobuttons u optionbutton (je) y el código parece un poco mas fácil
' gambas class file
' Creacion de la fabrica de vehiculos
Private seleccion As Integer = 0
Private Fab_Microbus As New FabricaMicroBuses
Private Fab_Bus As New FabricaBuses
Private Fab_Taxi As New FabricaTaxis
Public Sub _new()
End
Public Sub Form_Open()
Me.Title = "Fabrica de vehiculos"
End
Public Sub btnCrearVehiculo_Click()
Dim Fab As New FabricaDeVehiculos
Select Case seleccion
Case 0
Fab.crearFabricaDeVehiculos(Fab_Bus)
Case 1
Fab.crearFabricaDeVehiculos(Fab_Microbus)
Case 2
Fab.crearFabricaDeVehiculos(Fab_Taxi)
End Select
End
Public Sub CreaVehiculo_Click()
seleccion = Last.tag
End
' Creacion de la fabrica de vehiculos
Private seleccion As Integer = 0
Private Fab_Microbus As New FabricaMicroBuses
Private Fab_Bus As New FabricaBuses
Private Fab_Taxi As New FabricaTaxis
Public Sub _new()
End
Public Sub Form_Open()
Me.Title = "Fabrica de vehiculos"
End
Public Sub btnCrearVehiculo_Click()
Dim Fab As New FabricaDeVehiculos
Select Case seleccion
Case 0
Fab.crearFabricaDeVehiculos(Fab_Bus)
Case 1
Fab.crearFabricaDeVehiculos(Fab_Microbus)
Case 2
Fab.crearFabricaDeVehiculos(Fab_Taxi)
End Select
End
Public Sub CreaVehiculo_Click()
seleccion = Last.tag
End
Saludos
Objetivo: Re: Patrones De Diseño En Gambas3
Shell:
Si, tu código es más limpio y se ve más claro.
Además tambíen se puede sustituir el Select Case por el uso del patrón Strategy, como comente en la entrada de http://jsbsan.blogspot.com.es/2014/...ejemplo-de.html
Asi tendriamos un ejemplo de aplicación de varios patrones en un mismo programa.... esta tarde me pongo en ello y preparo el ejemplo.
Saludos
Citar:
Si, tu código es más limpio y se ve más claro.
Además tambíen se puede sustituir el Select Case por el uso del patrón Strategy, como comente en la entrada de http://jsbsan.blogspot.com.es/2014/...ejemplo-de.html
Asi tendriamos un ejemplo de aplicación de varios patrones en un mismo programa.... esta tarde me pongo en ello y preparo el ejemplo.
Saludos
Objetivo: Re: Patrones De Diseño En Gambas3
Acabo de hacer un ejemplo, que creo que es más claro de como sustituir un Select Case usando el patrón Strategy.
http://jsbsan.blogspot.com.es/2014/...ase-switch.html
En este ejemplo se ve como se hace, aunque parezca que mas laborioso, este método nos va a permitir hacer cosas en ejecución que usando Select Case, seria casi imposible... os traeré otro ejemplo, quizas un juego
Citar:
Acabo de hacer un ejemplo, que creo que es más claro de como sustituir un Select Case usando el patrón Strategy.
http://jsbsan.blogspot.com.es/2014/...ase-switch.html
En este ejemplo se ve como se hace, aunque parezca que mas laborioso, este método nos va a permitir hacer cosas en ejecución que usando Select Case, seria casi imposible... os traeré otro ejemplo, quizas un juego
Página 4 de 4
No puede crear mensajesNo puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario
Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.
Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo
Página generada en:: 0.1063s (PHP: -30% SQL: 130%)
Consultas SQL: 22 - Debug off - GZIP Activado