Duda Con Singleton

Duda Con Singleton
Artículo
Citar    Descargar mensaje  
Mensaje Duda Con Singleton 
 
Gente una pregunta alguien probo hacer el Diseño de patrón Singleton en gambas? estaba tratando de hacerlo y no me doy cuenta de como hacer el objeto para instancia única, en vb seria algo

   Private Shared _instancia As Singleton = Nothing

Estoy trancado con ese tema y no se como resolverlo jaja saludos.



 
   
sulky16v2 [ Martes, 19 Abril 2016, 03:18 ]


Duda Con Singleton
Comentarios
Citar    Descargar mensaje  
Mensaje Re: Duda Con Singleton 
 
sulky16v2:

Citar:
probo hacer el Diseño de patrón Singleton en gambas?

Esta implementado en el gambas.. son los módulos.

Saludos



 
jsbsan - Perfil MP  
jsbsan [ Martes, 19 Abril 2016, 06:35 ]
Citar    Descargar mensaje  
Mensaje Re: Duda Con Singleton 
 
jsbsan escribió: [Ver mensaje]
sulky16v2:

Citar:
probo hacer el Diseño de patrón Singleton en gambas?

Esta implementado en el gambas.. son los módulos.

Saludos


Si te soy sincero, no logre comprenderte, yo estoy tratando de hacerlo a mano como se hace en otros lenguajes pero tal vez lo estoy haciendo mal.



 
   
sulky16v2 [ Martes, 19 Abril 2016, 18:25 ]
Citar    Descargar mensaje  
Mensaje Re: Duda Con Singleton 
 
sulky16v2:

Citar:
no me doy cuenta de como hacer el objeto para instancia única

Ten encuenta que un módulo, solo existe uno en la aplicación, no se puede instanciar y crear nuevas "copias" del mismo.
Por eso cumple con el patron Singleton



 
jsbsan - Perfil MP  
jsbsan [ Martes, 19 Abril 2016, 19:45 ]
Citar    Descargar mensaje  
Mensaje Re: Duda Con Singleton 
 
Puedes crear una clase nueva, y si pones al principio del código de esa clase "Create Static" tendrás una clase estática, que no se puede instanciar. O sea, lo mismo que un módulo.

Saludos



 
jguardon - Perfil MP  
jguardon [ Martes, 19 Abril 2016, 23:00 ]
Citar    Descargar mensaje  
Mensaje Re: Duda Con Singleton 
 
jguardon escribió: [Ver mensaje]
Puedes crear una clase nueva, y si pones al principio del código de esa clase "Create Static" tendrás una clase estática, que no se puede instanciar. O sea, lo mismo que un módulo.

Saludos


muchas gracias, aunque siendo sincero creo que no es lo que busco, yo lo que busco es hacer algo asi:

Public Class Singleton

    Private Sub New() 'CONSTRUCTOR
    End Sub

    Private Shared instancia As Singleton = Nothing

    Public Shared Function getInstancia As Singleton
            If instancia Is Nothing Then
                instancia = New Singleton()
            End If
            Return instancia
    End Function
End Class

Esto lo quiero hacer para hacer una colección de instancia única y simular una fachada (que va de la mano con singleton) para crear metodos de altas bajas consultas y modificaciones. Perdón si no me soy bien explicando, soy nuevo en gambas.



 
   
sulky16v2 [ Miercoles, 20 Abril 2016, 01:28 ]
Citar    Descargar mensaje  
Mensaje Re: Duda Con Singleton 
 
Espero que esta manera de simplificar las definiciones no genere problemas o una percepción errada...

Una manera de entender la utilidad de una clase singleton es comparable con el uso de variables globales que necesitarás a lo largo del programa.  Singleton con mucha verborrea lo hace en java abstrayendo/encapsulando con metodos y funciones... en gambas sin mucha verborrea lo haces con un Modulo.  Allí pon tus variables publicas  o privadas con modificadores y accesadores, y lo tendrás disponible en tu programa.

Shordi tiene algunos ejemplos o programas más completos (impresiom html... para citar uno) allí puedes ver como hizo la conexión a la bd y otras cosas, con un modulo.

Saludos...



 
vicr - Perfil MP  
vicr [ Miercoles, 20 Abril 2016, 03:38 ]
Citar    Descargar mensaje  
Mensaje Re: Duda Con Singleton 
 
sulky16v2:

Citar:
Public Class Singleton

    Private Sub New() 'CONSTRUCTOR
    End Sub

    Private Shared instancia As Singleton = Nothing

    Public Shared Function getInstancia As Singleton
            If instancia Is Nothing Then
                instancia = New Singleton()
            End If
            Return instancia
    End Function
End Class


Eso mismo en un módulo en gambas.



 
jsbsan - Perfil MP  
jsbsan [ Miercoles, 20 Abril 2016, 06:52 ]
Citar    Descargar mensaje  
Mensaje Re: Duda Con Singleton 
 
vicr escribió: [Ver mensaje]
Espero que esta manera de simplificar las definiciones no genere problemas o una percepción errada...

Una manera de entender la utilidad de una clase singleton es comparable con el uso de variables globales que necesitarás a lo largo del programa.  Singleton con mucha verborrea lo hace en java abstrayendo/encapsulando con metodos y funciones... en gambas sin mucha verborrea lo haces con un Modulo.  Allí pon tus variables publicas  o privadas con modificadores y accesadores, y lo tendrás disponible en tu programa.

Shordi tiene algunos ejemplos o programas más completos (impresiom html... para citar uno) allí puedes ver como hizo la conexión a la bd y otras cosas, con un modulo.

Saludos...


jsbsan escribió: [Ver mensaje]
sulky16v2:

Citar:
Public Class Singleton

    Private Sub New() 'CONSTRUCTOR
    End Sub

    Private Shared instancia As Singleton = Nothing

    Public Shared Function getInstancia As Singleton
            If instancia Is Nothing Then
                instancia = New Singleton()
            End If
            Return instancia
    End Function
End Class


Eso mismo en un módulo en gambas.


Muchas gracias a todos los que comentaron y me ayudaron a comprender como funcionan las cosas en gambas, estoy muy agradecido con todos, un saludo grande gente.



 
   
sulky16v2 [ Jueves, 21 Abril 2016, 12:15 ]
Mostrar mensajes anteriores:    
Publicar nuevo tema  Responder al tema  Página 1 de 1
 
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 


   

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.3739s (PHP: -83% SQL: 183%)
Consultas SQL: 44 - Debug off - GZIP Activado