SINGLETON | PATRONES de DISEÑO

Поділитися
Вставка
  • Опубліковано 7 лют 2025
  • 👉🏻 Obtén 7 días de trial y 25$ de crédito en UpCloud
    👉🏻 upcloud.com/si...
    El patrón SINGLETON es uno de los más famosos y más utilizados. En éste vídeo vamos a ver cómo funciona éste patrón de diseño!
    Índice de la serie!
    👉🏻 • Las PIEZAS FUNDAMENTAL...
    The Clean Code Talks - "Global State and Singletons"
    👉🏻 • The Clean Code Talks -...
    👾 Redes sociales 👾
    ► Twitter: / bettatech
    ► Instagram: / betta_tech
    ► Canal Secundario: / @forkdebettatech
    ► Slack: bit.ly/33gaDDM
    👨🏼‍🏫 MIS CURSOS 👨🏼‍🏫
    👽 Curso de iniciación a la programación con JavaScript:
    ► bit.ly/3kr4bTc
    👕 MERCHANDISING DEL CANAL:
    ► Tienda UA-cam: / bettatech
    ► Tienda Teespring: teespring.com/...
    ⭐️ AFILIADOS ⭐️
    🎁 7% Descuento en HOSTINGER (Código BETTATECH)
    ► www.hostg.xyz/...
    🧠 Autocompletado con IA (Kite)
    ► www.kite.com/g...
    🐾 MacPaw (CleanMyMacX):
    ► macpaw.audw.ne...
    🎵 TODA la música es de EpidemicSound:
    ► www.epidemicso...
    ✉️ CONTACTO PROFESIONAL:
    ► Respuesta no garantizada:
    bettatechyt@gmail.com
    📚 LIBROS 📚
    Design Patterns
    ► amzn.to/39XuQlq
    Head First Design Patterns
    ► amzn.to/2uq6XUq
    Refactoring
    ► amzn.to/2SQnf2c
    Clean Architecture
    ► amzn.to/3bZVonJ
    Clean Code
    ► amzn.to/32WVKq3
    Introduction to Algorithms
    ► amzn.to/34SyVFP
    Cracking the Coding Interview
    ► amzn.to/2QkdwC6

КОМЕНТАРІ • 226

  • @SergioRibera
    @SergioRibera 4 роки тому +65

    Soy desarrollador de videojuegos Indie y a lo largo del tiempo me di cuenta que era mucho mejor usar Singletone para manejar los datos del usuario, ademas de las conecciones a bases de datos y carga de niveles, gracias por tu videos estuvo muy bueno

    • @Leodemonheart
      @Leodemonheart 24 дні тому

      Básicamente lo usas como estado global

  • @ronaldtorres4784
    @ronaldtorres4784 4 роки тому +96

    Tuve que verlo dos veces porque la primera vez me mantuve ocupado viendo como aumentaba el contador de instacia...

  • @PositronQ
    @PositronQ 4 роки тому +48

    Haz un directo hablando en general de algunos de los patrones de diseño Y como se utilizarían en cada proyecto

  • @luiscabab.7759
    @luiscabab.7759 Місяць тому

    Eres una maquina explicanddo, llevare como 5 videos y joder, salgo con las ideas mas claras que el agua. Muy buen curro y muchas gracias rey!

  • @eliazarlopez4183
    @eliazarlopez4183 4 роки тому +42

    He utilizado este patrón para realizar un gamemanager, para gestionar los niveles de un videojuego. al momento de cambiar de nivel siempre obtenía el mismo gamemanager.
    Muy buen video, estoy al pendiente de está súper serie, saludos desde México

    • @BettaTech
      @BettaTech  4 роки тому +7

      Gracias por tu comentario y el caso de uso de Singleton 😃

    • @ricardoapuy2813
      @ricardoapuy2813 4 роки тому +3

      Es exactamente el uso que le voy a dar XD

    • @albertoleon308
      @albertoleon308 4 роки тому

      En los manager es muy útil, yo lo use en una clase sesionmanager.

    • @Marco-bd5eh
      @Marco-bd5eh 4 роки тому

      Por ejemplo... Me imagino que el Gamemanager tenia ciertas características sobre los niveles, entonces aplicaste el singleton para aplicar a estas funciones pero desde cualquier nivel. ¿Así funciona?

  • @ElYorWTF
    @ElYorWTF 4 роки тому +2

    Me gusta como explica todo, no me canso de ver estas cosas tan básicas pero es que es hermoso

    • @neecosanudo
      @neecosanudo 4 роки тому +1

      Esa barba pone cachondo a media comunidad

    • @BettaTech
      @BettaTech  4 роки тому +6

      Dios mío, no sabía que me mirábais con esos ojos 😳

    • @ElYorWTF
      @ElYorWTF 4 роки тому

      Hey aguantaaaaaa..... Digo que es hermoso el mundo de la programación calma calmaaaaa

    • @neecosanudo
      @neecosanudo 4 роки тому

      @@BettaTech La cuarentena los pone mimosos

  • @aNtULiPs
    @aNtULiPs 3 роки тому +6

    Challenge 2021: explicar Singleton diciendo la palabra "instancia" menos de 28 veces jaja. Todavía no sé lo suficiente como para sumarme al debate, pero estoy disfrutando mucho esta serie de Patrones de Diseño. Los ejemplos con videojuegos hacen que valga aún más y en el tiempo, cada hora que les dediqué jugando. ¡Gracias por todo!

  • @mlm1106
    @mlm1106 2 роки тому +1

    Hay un poco de video en tus instancias :P jajaja Genial el video!.

  • @esteveli
    @esteveli 4 роки тому +2

    Yo lo he utilizado en conexiones a base de datos como MongoDB y más últimamente ,con un socket que es usado por multitud de clases pero solo tiene que establecer y usar una única conexión.

  • @albertjjimenezp
    @albertjjimenezp 3 роки тому +2

    En lo personal uso muchisimo el patron singleton para la agrupacion de funciones generales. Combinado por ejemplo con patron BLOC en Flutter me permite generar funciones que trascienden a lo largo del arbol de la aplicacion simplificando muchos procesos ya que aunque los widgets se crean y se destruyen a todo momento esta unica instancia administra de forma centralizada un conjunto de habilidades que bien aprovechado puede ser beneficioso para la aplicacion. Ahora, mezclandolo con clases abstractas y mucho polimorfismo reduce "la mucha complicacion" de crer, administrar y depurar el ciclo de vida constantemente. Mas que un simple patron yo diria que es un complemento para otros patrones de diseño que permite administrar variables gobales evitando colisiones entre las mismas (O promoviendolas si eres un cabezota poco disciplinado). Gracias por tus videos.

  •  4 роки тому +1

    Esta muy bien el vídeo. Lo he utilizado para controlar el acceso a recursos compartidos.
    Al vídeo le falta para ser redondo, las variantes de singleton para accesos concurrentes, acceso por varios hilos y como controlar esos accesos.
    Lo dicho, un buen vídeo, enhorabuena

  • @Verax__
    @Verax__ 3 роки тому +1

    Muy bueno, se entiende muy bien. A este tipo de videos siempre siento que le falta algo como un ejemplo aplicado para que los que recien nos estamos empapando en estas tematicas podamos terminar de cerrar la idea.

  • @soj3da
    @soj3da 4 роки тому +2

    Muchas gracias por el video, y muy comico el contador de instancia jajajajaja

  • @Sr.Sableye
    @Sr.Sableye 9 місяців тому +1

    Chat GPT me dio esta solución, si me funciono, pero no me sentí totalmente comodo usandola sin entender, le solicite explicación pero quede un poco confundido, ahora con tu video explicado de una mera tan sencilla me hizo entender al 100% la solución que implemente a mi proyecto

    • @BettaTech
      @BettaTech  9 місяців тому

      Muchisimas gracias!!! Me alegra que te haya sido de ayuda :)

  • @sergiocastro5060
    @sergiocastro5060 4 роки тому +1

    Muchas gracias, es complejo para mi entenderlo, pero ya me quedo mas claro !

  • @JeffreyDeveloperCOL
    @JeffreyDeveloperCOL 4 роки тому +2

    Este patron lo estoy utilizando en mi proyecto de React-native para manejar la navegación programáticamente

  • @jameslegar7065
    @jameslegar7065 4 роки тому +1

    Excelente la explicación perfecto para mi vídeo juego, tuve que repetirlo como tres veces, pues es inevitable contar la cantidad de veces que decía la palabra "Instancia"

  • @lucianotomasvilla7274
    @lucianotomasvilla7274 4 роки тому +2

    Genio Martin, gracias por el contenido de calidad

    • @BettaTech
      @BettaTech  4 роки тому +1

      Gracias a vosotros por ver mis vídeos! :D

  • @rafaelestrada3525
    @rafaelestrada3525 4 роки тому +1

    Yo lo estoy utilizando en otro patrón conocido como Unit of Work para instanciar a clases con otros patrones conocidos como Repositorios con los metodos CRUD

  • @juancarlossequeirapiedra2091
    @juancarlossequeirapiedra2091 4 роки тому +5

    Justamente este patrón lo estoy utilizando para mi proyecto, buen vídeo.

    • @BettaTech
      @BettaTech  4 роки тому +1

      Gracias!

    • @samueltdev
      @samueltdev 4 роки тому +7

      yo solo lo use en la conexión a la base de datos, es justamente lo que dice en el vídeo, si la instancia ya existe uso la existente...

    • @vladimirreyes1661
      @vladimirreyes1661 4 роки тому

      @@samueltdev Eso mismo estaba pensando.

  • @pabloxD75
    @pabloxD75 4 роки тому +1

    Este patron lo estoy viendo en curso de Xamarin que estoy tomando, me parece bastante interesante. ✌

  • @CRFigueroa
    @CRFigueroa 4 роки тому +1

    Me simplificaste el dilema de los patrones, gracias!! Suscrito y 👍a los vídeos, cuando hay más?

  • @carlosbastos2032
    @carlosbastos2032 2 роки тому

    Un capo explicando!!!! Simplemente genial!!!!!

  • @NicoILeone
    @NicoILeone 4 роки тому +1

    Muy bien explicado! Muchas gracias! Felicitaciones.

  • @tiamirta2495
    @tiamirta2495 3 роки тому

    Gracias por el video, esta muy bueno el tema patrones. Quería aclarar a los que no se den cuenta que en el ejemplo que muestra, mas precisamente en el IF, siempre esta retornando una nueva instancia. Para resolver esto el return tiene que ir adentro del IF y fuera del IF otro return null.

    • @harryhaller4094
      @harryhaller4094 3 роки тому

      No amigo, el código es correcto. El método getInstance nunca debe devolver un null, debe devolver el atributo instance de la clase Singleton, atributo que a su vez también es de la clase Singleton.
      La primera vez que se invoca a getInstance, el if se evalúa a true, puesto que el atributo instance es null. Entonces entra en el if, instancia un objeto Singleton y lo asigna a su atributo instance. Finalmente devuelve el objeto instanciado.
      Las sucesivas veces que se vuelve invocar a getInstance, el if se evalúa a false, puesto que en la primera invocación ya se instanció el objeto Singleton y se asignó al atributo instance, que por lo tanto ya no es null. Así que ya no entra en el if, y no se vuelve a instanciar nada.
      La ejecución sigue y en estas sucesivas ocasiones se devuelve el objeto Singleton, como la primera vez, pero en estas ocasiones ya no fué necesario instanciarlo de nuevo, puesto que ya estaba guardado en el atributo.
      Espero haberte aclarado el tema. Saludos.

    • @tiamirta2495
      @tiamirta2495 3 роки тому

      @@harryhaller4094 claro, creo que ahora entendi. De todas formas copie el codigo del video tal cual y no funciona. Por eso mi comentario.

  • @maurojulianayala1665
    @maurojulianayala1665 Рік тому

    Muy claro todo! muchas gracias desde Congreso , Argentina!

  • @vladimirrc2377
    @vladimirrc2377 4 роки тому +3

    Precisamente tuve un caso para un mapper global con la relación llave_typo de dentro de un factory, cuando corría los test, se comportaba raro porque las pruebas unitarias corrían en paralelo y la inicializacion de la instancia y su mock se tranlapaban pues todos veían la misma instancia y por tanto se afectaban entre ellas y fallaba uno u otro test dependiendo quien ejecutaba antes.
    Precisamente tuve que hacer una bandera para indicar cuando debía comportar de forma natural y cuando como test.

  • @Familia_Borgogno_Arce
    @Familia_Borgogno_Arce Рік тому

    jajja, no me pude concentrar en el video, tratando contar las palabras de "instancia" jaja. lo veré de nuevo. muchas gracias por el video...

  • @matiasmartini2038
    @matiasmartini2038 4 роки тому +1

    Gran vídeo !! muy buena explicación

  • @rsaoto
    @rsaoto 4 роки тому +1

    Excelente esta serie de videos!
    ¿Cada cuanto sale uno nuevo?
    Voy a estar atento!
    Gracias por compartir el conocimiento

  • @tomas-jo4tz
    @tomas-jo4tz 3 роки тому

    Gracias pela, sos crack, videos cortos y claros

  • @alonsogalan5505
    @alonsogalan5505 4 роки тому

    ¿Podrías subir más explicaciones sobre más patrones de diseño? Lo explicas de lujo.

  • @enver9275
    @enver9275 2 роки тому

    Que buena explicación, me quedó muy claro.

  • @KeenkiDash
    @KeenkiDash 4 роки тому +8

    El singleton pattern es como una hacha. Es igual de útil como arma que como herramienta... Sólo está en las manos del arquitecto hacer un buen uso de éste.

  • @antoniodejesusgonzalezglez6053

    una chulada de explicación!! felicidades

  • @agustinmariani4701
    @agustinmariani4701 2 роки тому

    Excelente explicación! Muchas gracias ⭐️

  • @federicomarroquin4470
    @federicomarroquin4470 4 роки тому +1

    Excelente video, gracias por explicarlo.

  • @ernestorh6110
    @ernestorh6110 4 роки тому

    Antes de ver el video le di LIKE. Excelentes videos

  • @jobvillagran
    @jobvillagran 4 роки тому +3

    Gracias por el video, crees que podrias hacer algun tipo de ejemplificacion? Se que es un video de hace rato y no estoy seguro si tienes otro de este patron.

    • @Verax__
      @Verax__ 3 роки тому

      Me sumo a este pedido

  • @saraisabelventuraalvarado5628
    @saraisabelventuraalvarado5628 4 роки тому

    yo resien estoy estudiando pero me parece interesante ya que este patron sirve para poder acceder sin hacer varias instancias y asi poder tener acceso a otros lados pero interesante y muy creativo ya que es como si fuera un atajo

  • @guillermoestebantorresrenn3173
    @guillermoestebantorresrenn3173 4 роки тому

    Excelente explicación, muchas gracias!!!!!!!!!!!!

  • @carlos9484
    @carlos9484 4 роки тому +15

    Eso de ir contando las veces que nombras "instancia" es una gran distracción.

    • @Lokario
      @Lokario 4 роки тому +2

      Exactamente, me centraba más en tratar de escuchar la palabra instancia que en entender el video

  • @juanbriano5315
    @juanbriano5315 4 роки тому

    Tus videos sin excelentes! Muchas gracias!

  • @noobinthenet8483
    @noobinthenet8483 4 роки тому

    Muy bien explicado y detallado! Me ha gustado mucho el vídeo. Un sub mas

  • @bugforbug9001
    @bugforbug9001 4 роки тому +7

    Una pregunta. Es buena idea usar este patrón para la conexión a base de datos?
    Que problemas podría traer?

  • @JorgeLuis-ts6qp
    @JorgeLuis-ts6qp 2 роки тому +1

    Siempre que me he visto tentado a usar Singleton he podido reescribir la clase como abstracta con métodos estáticos. Diría sin embargo que Singleton puede ser más útil que una clase abstracta si la construcción de la clase fuera lenta. En ese caso, sería beneficioso ahorrarse la llamada al constructor hasta que se lo necesite.

  • @blinkbyker
    @blinkbyker 4 роки тому +99

    instancia++

    • @PositronQ
      @PositronQ 4 роки тому +2

      Zenemij muy bueno

    • @tiamirta2495
      @tiamirta2495 3 роки тому

      Hola, queria comentar que al poder crear una sola instancia basta con un tipo de dato boolean iniciado en false y en el constructor setearlo en true. Ejemplo: private static boolean thereIsAnInstance = false;(java) .. Un contador no seria necesario ya que no va a existir mas de 1 instancia.

    • @compraenchina2010
      @compraenchina2010 3 роки тому +1

      El patrón singleton lo tengo claro, pero no tanto que es una instancia :P

    • @eR1cK92
      @eR1cK92 3 роки тому

      @@compraenchina2010 cuando crea un objeto de x clase se dice que lo instancias , darle vida a.la.csse.instanciando una entidad de dicha clase

  • @sprintwithcarlos
    @sprintwithcarlos 4 роки тому +2

    Está muy buena la explicación. Y creo que es un antipatrón.
    Un tema que me gustaría que algún día expongas sería los pros y contras de clases vs factorías. Me parece interesante para la comunidad analizar esto

  • @JohnnyMnemonic882
    @JohnnyMnemonic882 Рік тому

    El uso fundamental del patrón es el uso compartido de un recurso como por ejemplo en una aplicacion web, tener 1 una única conexión a base de datos y no tantas como sesiones abiertas. El recurso (instancia) no depende de la sesión, solo la utiliza, todas las sesiones usan la misma instancia de acceso a base de datos, o de acceso a cola de mensajería. Se puede gestionar en modo pool de N instancias concretas, pero no tendría sentido que cada sesión creara una instancia a base de datos. En el ámbito Enterprise es el uso habitual e integrado en todos los frameworks de backend.

  • @dr.freemanaperture1668
    @dr.freemanaperture1668 4 роки тому

    Explicado 10/10, AAA, vamos perfecto!

  • @Tommi8801
    @Tommi8801 4 роки тому

    Capo me resolviste algunas dudas..

  • @Daniycamiroblox
    @Daniycamiroblox 2 роки тому

    Excelente video. Una sugerencia, no pongas elementos que distraigan a tu público. En mi caso me desconcentra el contador instancia. Saludos

  • @cristianf.777
    @cristianf.777 4 роки тому +1

    Me gustaría saber más de sobre arquitectura de software. Saludos desde México.

  • @paolobelforte720
    @paolobelforte720 Рік тому

    Un ejemplo de uso de Singleton interesante es el del lenguaje Smalltalk con la clase True y False
    Solo hay una instancia "true" y "false"

  • @luisangeltorresgrimaldo7772
    @luisangeltorresgrimaldo7772 2 роки тому

    Muy buen video, gracias

    • @BettaTech
      @BettaTech  2 роки тому +1

      Gracias por comentar!!

  • @MrMiller969
    @MrMiller969 3 роки тому

    Muchas gracias, un video muy bien instanciado ... perdon, quise decir muy bien explicado xD

  • @malavoelpoto
    @malavoelpoto 4 роки тому

    Excelente explicación me ha quedado clarisimo y eso que no hiciste un ejemplo programando.

  • @ckgrafico
    @ckgrafico 4 роки тому +1

    Un gran vídeo y muy bien explicado “No puedes ir instanciando por ahí como si no pasara nada” 🤣

  • @TecnoRepair
    @TecnoRepair 4 роки тому +11

    Un buen ejemplo del patrón Singleton son los calendarios, ya que, al instanciarlo se llevan a cabo cálculos de de días, semanas, meses, días feriados, etc... Usando este patrón nos aseguramos de instanciarlo una sola vez y así poder usarlo en varias ocasiones sin consumir mas recursos de los necesarios.

  • @jorgepalacio5091
    @jorgepalacio5091 4 роки тому +1

    Waooo interesante video! Gracias.

  • @diogenesmonegro3773
    @diogenesmonegro3773 4 роки тому

    Ese es mi patron preferido.

  • @juankparrado8062
    @juankparrado8062 2 роки тому +1

    tan chevere

  • @thebetoxpro
    @thebetoxpro 4 роки тому +2

    Justo vi esto en Platzi xd

  • @revolverkimblee
    @revolverkimblee 4 роки тому +2

    Puedes hacer un video con Santaolla hablando de WOLFRAM?

  • @AlbertoDiAlEsp
    @AlbertoDiAlEsp 4 роки тому +1

    En un curso que hice me dijeron que el mayor uso sería usarlo para la sesión de un usuario.

  • @cristiangs5127
    @cristiangs5127 2 роки тому

    Yo había usado clases staticas para manejar datos globales y moverlos de un lado a otro, ahora veo que el singleton seria lo mejor xd

  • @kennyel13
    @kennyel13 4 роки тому

    Esa remera es fantastica

  • @putinninovacuna8976
    @putinninovacuna8976 4 роки тому

    BettaTech es como un patron porque como le va con las mujeres siempre sera un singleton

  • @christianalvarezsanchez6659
    @christianalvarezsanchez6659 4 роки тому +1

    Bueno aun no lo he usado , pero creo que para las clases repositorios que implementan una interfaz, creo que estaría bien.

  • @OscarMartinez-zp6fr
    @OscarMartinez-zp6fr 4 роки тому +2

    No lo considero un anti patrón. Pero si que creo que a veces se abusa, utilizándose en situaciones en las que no se debería implementar. Si lo vas a usar, piénsalo dos veces y mucho cuidado si tu aplicación es multithread o accedida de forma simultánea por varios clientes

  • @matiasgodoy7252
    @matiasgodoy7252 2 роки тому

    Una critica constructiva, es que en un video académico (no de comedia) la broma de contar la cantidad de veces que dijiste instancia si bien es graciosa a la vez es distractiva ya que estás intentando aprender un concepto y existe un chiste en segundo plano. Con la aclaración del principio me parece suficiente, de ahí en adelante excelente video!

    • @BettaTech
      @BettaTech  2 роки тому

      Gracias por el feedback! Creo que en los vídeos siguientes lo tomé en cuenta y estarán mejor :) Gracias!!!

  • @antonygiomarx
    @antonygiomarx 4 роки тому +1

    Grande Martín.

  • @juanantoniosotocabrera7045
    @juanantoniosotocabrera7045 4 роки тому +1

    Sin querer me di con este video y tu canal, lo explicas de una forma sencilla!, mi duda es recomendarias singleton para una aplicacion restful ?

    • @jorgemedina2272
      @jorgemedina2272 4 роки тому

      Yo lo he utilizado con node, de crear una sola instancia del servidor y la configuración.

  • @antonioitsolutions8792
    @antonioitsolutions8792 4 роки тому +1

    Patrón Decorator el siguiente porfa 👌🤘🙏🙏

  • @carlosortigoza5222
    @carlosortigoza5222 4 роки тому +2

    Segundo comentario, tus vídeos son excelentes colega

    • @BettaTech
      @BettaTech  4 роки тому

      Gracias! 😊 Me animáis muchísimo!!!

  • @cesardmora86
    @cesardmora86 4 роки тому

    hater_mode = on
    - aunque el código es simple, no es thread-safe, así que si tienes mala suerte (y por ley de Murphy la tendrás) en algún momento existirá más de una instancia. Sin embargo, detectar un error de esos es muy difícil por no decir que imposible e irreproducible.
    - la variable instance debería ser final para evitar ese tipo de errores; el precio es que hay que sacrificar el lazy-load
    hater_mode = off
    Para mí el problema con todo tipo de patrones de diseño es que hay gente que aprende uno nuevo, y lo usa en los próximos proyectos a diestra y siniestra sin considerar pros y contras

    • @valcron-1000
      @valcron-1000 4 роки тому

      El problema de sincronización de threads en la creación de la instancia se puede solucionar utilizando primitivas acorde al lenguaje (por ejemplo, el synchronized de Java junto al uso de locks).
      En los ejemplos dados no puede darse este problema ya que se esta utilizando JS que es single-threaded.
      De todas maneras no recomiendo el uso de un Singleton, y mucho menos en aplicaciones con múltiples hilos.

  • @enriquejesusbacaestrada4821
    @enriquejesusbacaestrada4821 4 роки тому +2

    Llevo años usándolo pero para el control de recursos en el servidor, cada que se crea un objeto consume recursos, memoria, procesador y más cuando tratas con millones de registros en BD.

  • @rickhunter8216
    @rickhunter8216 Рік тому

    BUEN VIDEO KRATOS TIERNO.

  • @carlosalberti
    @carlosalberti 3 роки тому

    buena explicacion.

  • @Cloudd014
    @Cloudd014 4 роки тому

    Pues en Unity se suele usar para la instancia del game manager, así al cambiar de escena no se vuelve a crear uno, no sé si eso es óptimo

  • @josemi7225
    @josemi7225 4 роки тому

    Gracias por el video. Eso sí, sería todavía mejor el vídeo si pusieras también el código para C++ ;)

  • @JuanmaD
    @JuanmaD 3 роки тому

    La recursividad de las instancias. Martin, como me puedo poner en contacto contigo?

  • @yohcg
    @yohcg 3 роки тому

    Me cuesta ya trabajado imaginar un caso de uso que no sea lo de leer un fichero. Otro quizá sea el mantener una cache en memoria y así evitar consumir muchas veces un recurso que pudiera alentar la app.

  • @kldas_
    @kldas_ 4 роки тому

    Haz uno de cadena de responsabilidad

  • @FedericoAlemany
    @FedericoAlemany 3 роки тому

    Solo por curiosidad, no se podría verificar la existencia de la instancia en el constructor? (y así poder dejarlo como público).

  • @seba23571
    @seba23571 4 роки тому

    creo que se olvido mencionar que en la estructura de datos en java esta la memoria head y la memoria stack donde hace referencia a las memorias de las instancias de los objetos singlenton tambien sirve para no saturar la memoria stack de la ram... en jvm. saludos...

  • @jsonft5417
    @jsonft5417 4 роки тому +2

    Todo bien, hasta que python te da metaclases con las que puedes controlar la instanciación de las instancias de tu clase con mucho más detalle.

  • @MrElmarqueli
    @MrElmarqueli 2 роки тому

    Hola que tal, creo que como toda herramienta tiene su uso y esta es de las cuales apuntaría a algo un poco especifica, me parece que se lo ve como antipatron por el hecho de que es eso una herramienta una forma que se debe usar en cosas especificas y claro esta siempre va a depender de la app que estemos creando. En lo personal no descato su uso su aplicacion es mejor decir lo conosco se que hace, que no y sus consecuencias entonces ver si me sirve aplicarlo o no, cero ese es el razonamiento que tenemos que tener. Bueno un saludo a la comunidad y decir que el video esta muy bueno.

  • @Mellogangster
    @Mellogangster 3 роки тому

    4:38 _"Es la clase la que crea la instancia y es la instancia la que quiere que cree la clase la instancia."_

  • @cletrop
    @cletrop 4 роки тому +3

    Tuve que verlo dos veces una para contar la veces que decias instancia y otra para entender el video 😅😅

    • @BettaTech
      @BettaTech  4 роки тому +1

      Me he dejado alguna INSTANCIA? 🤭

  • @joaomr4551
    @joaomr4551 4 роки тому

    Un ejemplo de singleton podría considerarse una conexión a una base de datos? Es decir ya no se solicitaría constantemente un ID de conexión, solo mantener el mismo, solo bastaría cerrar y abrir la conexión

    • @joano.b.6966
      @joano.b.6966 4 роки тому

      Si. Yo lo utilizaba en php. Abría la conexión, realizaba las operaciones necesarias y la cerraba

  • @Jocker88
    @Jocker88 4 роки тому +1

    Yo en tareas lo estuve utilizando para clases controladoras para escribir en XML, o alguna base de datos, ahora no se si hice mal, no sabía que había controversia sobre este patrón (ojo, que soy estudiante). Mis profesores nunca me han puesto pegas. ¿Qué opinas?
    Un saludo!
    P.D. Me he quedado con las ganas de que llegaras a 40 xD.

  • @popularfan5893
    @popularfan5893 3 роки тому

    Voy a hacer lo mismo usando una clase estatica en vez de un singleton y me ahorro el instanciarlo. La unica ventaja que veo del Singleton es que mientras no la instancie es memoria que ahorro en la aplicación en contra de una clase estatica.

  • @haroldmideros5389
    @haroldmideros5389 3 роки тому

    Necesitaba entender el patrón, pero el juego de contar las instancias me des-concentro por completo ahhhhhhhhhhhhhhhhhhhhhhhhh

  • @Ferdinandus_1979
    @Ferdinandus_1979 Рік тому

    Hola, te queria preguntar por ese fondo de pantalla tan chulo que tienes?. De qué es?

  • @hkfuertes
    @hkfuertes 4 роки тому +1

    UNA preguntilla... Usarías Singleton para tener un objeto con las configuraciones del programa?... Es decir una configuración en yaml, que cargas al inicio de la ejecución, y que te quieres olvidar de andar pasando de objeto a objeto ... Crear una clase "config" Singleton, que mapee ese yaml y que puedas recuperar, siempre igual en todo to programa? Algo así como un state management?

    • @JorgeLuis-ts6qp
      @JorgeLuis-ts6qp 2 роки тому

      Mi experiencia con los archivos de configuración se resume en dos acercamientos.
      Lees el archivo cada vez que quieras acceder a una configuración. Para que esto sea viable deberías ser capaz de leer la configuración sin pérdida de tiempo. Si la lectura no es muy rápida pero necesitas acceder a una configuración muchas veces seguidas, léela y guárdala como variable local.
      La otra opción (más parecida a un Singleton) es usar una clase abstracta. No sé qué lenguaje usarás. En Python puedes leer la configuración al iniciar el programa y guardarla en memoria RAM en una clase.

  • @kevincalvache577
    @kevincalvache577 4 роки тому

    Soy nuevo en lo relacionado a la arquitectura de software. Singelton sería un patrón recomendado para implementarlo en una clase contexto de una base de datos?

  • @hectorkaizenf.v.7224
    @hectorkaizenf.v.7224 4 роки тому

    Yo creo que se puede usar bien un singleton para un componente que maneja menajes encolados, y que vayan desapareciendo, como por ejemplo un chat, jajaja bueno eso creo

  • @jesusparra6714
    @jesusparra6714 3 роки тому

    este patron es muy parecido a lo que viene siendo el patron modulo en js

  • @hectorkaizenf.v.7224
    @hectorkaizenf.v.7224 3 роки тому

    Hay patrones de diseño para la programación funcional??