Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 2 de 2
Ir a la página Anterior  1, 2
 
Clase Estática
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Re: Clase Estática 
 
Un módulo es un buen ejemplo de una clase estática.

No se puede instanciar, las variables guardan valores que no cambian después de su uso y cumple con el patrón singleton.

Es exactamente igual usar un módulo que una clase declarada con "create static" al principio, por lo que pensé que lo más ilustrativo era compararlo con un módulo.

¿Tiene o no tiene utilidad un módulo en OOP? Claro que sí, sólo que muchos la usan para lo que no fue del todo concebido, como aglutinar variables globales y esas cosas impropias de la OOP...

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Clase Estática 
 
Shell escribió: [Ver mensaje]
En cambio Python sigue siendo sencillo


shordi escribió: [Ver mensaje]
+1 Shell  


shordi se volvió al Pythonismo ?    
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Clase Estática 
 
Jesús:

Citar:

Un módulo es un buen ejemplo de una clase estática.


Lo cierto es que es calcado.

Citar:

No se puede instanciar, las variables guardan valores que no cambian después de su uso y cumple con el patrón singleton.


En cuanto al patrón singleton, el ejemplo de Julio estoy deseando de verlo.

Al final hice el ejemplo para gambas, similar al de C++ ( usando otro nombre de variable ).
Eso de que en Python que se pueda usar el mismo identificador es lioso. Por eso no puede hacer
bien el ejemplo de la clase "criatura" que anteriormente había hecho en Python y quería convertirlo a gambas

En Python, como se define la clase en el ejemplo del vídeo.
class Demo():
    dato = 1

    def mostrar(self):
        print ('self.dato =', self.dato)
        print ('Demo.dato =', Demo.dato)

 


Y en Gambas.

Static Public dato As Integer = 1
Private num1 As Integer

Public Sub _new(num As Integer)

num1 = num
    
End

Public Sub Mostrar()
  
  Print "Objeto.dato = ", num1        'Atributo de objeto
  Print "Demo.dato = ", Demo.dato  'Atributo de clase
  
End
 


Public Sub Main()

 Dim objeto1, objeto2 As Demo
 
 objeto1 = New Demo(11)
 objeto2 = New Demo(22)
  
 objeto1.Mostrar()
 objeto2.Mostrar()
 
 Demo.dato = -1
 
 objeto1.Mostrar()
 objeto2.Mostrar()

End
 


Salida:
Citar:

Objeto.dato =     11
Demo.dato =     1
Objeto.dato =     22
Demo.dato =     1
Objeto.dato =     11
Demo.dato =     -1
Objeto.dato =     22
Demo.dato =     -1


Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Jueves, 25 Febrero 2016, 21:55; editado 1 vez 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Clase Estática 
 
vuott escribió: [Ver mensaje]
Shell escribió: [Ver mensaje]
En cambio Python sigue siendo sencillo


shordi escribió: [Ver mensaje]
+1 Shell  


shordi se volvió al Pythonismo ?    


Aaarrggghhh!!! ¡Mi reputación! Te enviaré a mis abogados con una demanda de un millón de euros, más o menos.    
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Clase Estática 
 
shordi escribió: [Ver mensaje]
vuott escribió: [Ver mensaje]
shordi se volvió al Pythonismo ?    


Te enviaré a mis abogados con una demanda de un millón de euros, más o menos.


No es fundado lo que dices, porqué la mia fue una pregunta, no una afirmación.    
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Clase Estática 
 
Ok. Ego absolvo pecatus tuis.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Clase Estática 
 
shordi escribió: [Ver mensaje]
Ok. Ego absolvo pecatus tuis.


....Deo gratias !    bless
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Clase Estática 
 
Estáis "fatá!".

Vuott:

Lo interesante del vídeo, es que hace lo mismo para distintos lenguajes. No solo para Python.
Se ven similitudes entre los distintos lenguajes yyyy..como ves,en C++ y C#  es más complicado.  

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Viernes, 26 Febrero 2016, 13:07; editado 1 vez 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Ejemplo De Clase Publica Y Clase Privada Shell Aplicaciones/Fragmentos de Código 2 Martes, 28 May 2013, 11:41 Ver último mensaje
shordi
No hay nuevos mensajes ¿ Es La Clase Padre Una Clase Abstracta ? Shell General 3 Viernes, 04 Julio 2014, 08:58 Ver último mensaje
jsbsan
No hay nuevos mensajes Clase Audio Y Clase Configuracion De Audio... v3ctor Aplicaciones/Fragmentos de Código 3 Jueves, 08 Octobre 2015, 08:35 Ver último mensaje
jsbsan
No hay nuevos mensajes Crear Una Clase Estática? v3ctor General 2 Domingo, 23 Julio 2017, 18:24 Ver último mensaje
chaskux
 

Publicar nuevo tema  Responder al tema  Página 2 de 2
Ir a la página Anterior  1, 2

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


 
Lista de permisos
No puede crear mensajes
No 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



  

 

cron