❌ NO uses STRINGS en tu JAVASCRIPT para esto. ¡Te explico cómo mejorarlo!

Поделиться
HTML-код
  • Опубликовано: 14 июл 2024
  • НаукаНаука

Комментарии • 228

  • @midudev
    @midudev  Год назад +8

    🔥 ¡SUSCRÍBETE a mi canal de RUclips!
    👉 ruclips.net/user/midudev

  • @aquirozca
    @aquirozca Год назад +6

    Midu, pensé que sabia usar diccionarios pero en poco tiempo pude aprender algo muy util gracias a ti.
    Está excelente la edición y la explicación, me encanta que veamos la Miduevolución de tu canal.
    Un abrazo gigante y sigue creando estas joyas de conocimiento. 💜

  • @alejandroz1606
    @alejandroz1606 Год назад +24

    Me encantan estos videos cortos que ensenan tanto

  • @luisencastin1607
    @luisencastin1607 Год назад +4

    Woooaahh, la cantidad de conceptos tan valiosos en tan poco tiempo es fabuloso. Gracias Midu!

  • @josedelriodiaz7085
    @josedelriodiaz7085 Год назад +3

    Me encanto. Video conciso y al grano, aprendi mucho gracias!

  • @robbna
    @robbna Год назад +7

    La música del Hollow Knight le da el toque. Gracias Midu por los tips!

    • @midudev
      @midudev  Год назад +2

      xD Lo que espero que no lo desmoneticen por eso 🤣

  • @aliampichelmilan3345
    @aliampichelmilan3345 Год назад

    Grande como siempre Midu!, el audio que utilizaste hace muy agradable el entorno para el usuario. 👌

  • @axelj.solares5076
    @axelj.solares5076 Год назад +1

    Grande como siempre, Midu!! Voy a comenzar a implementarlo en mis proyectos! Gracias!

    • @midudev
      @midudev  Год назад

      Genial, Axel! Qué bien que te haya ayudado!!!

  • @carlosjorgerodriguezcuello4553
    @carlosjorgerodriguezcuello4553 Год назад +42

    Q grande la banda sonora de Hollow Kinght me hace sentir en casa

  • @valentinbennitez
    @valentinbennitez Год назад +3

    Gracias por estos videos Midu, me encanto la edición en todo aspecto, se pasaron muy ligeros los 6 minutos!

    • @midudev
      @midudev  Год назад

      Muchas gracias, Valentin! 🤗

  • @javiergarciafillol4454
    @javiergarciafillol4454 Год назад +2

    Grande, estos "trucos" son muy útiles, siempre se aprende cosas nuevas contigo,

    • @midudev
      @midudev  Год назад

      Gracias, Javier! 🤗

  • @yangenmanuel2659
    @yangenmanuel2659 Год назад +2

    Ojala ver mas de este tipo de edicion en proximos videos!! 💪💪

    • @midudev
      @midudev  Год назад +2

      ¡Seguro que sí!

  • @erickrh
    @erickrh Год назад +1

    Siempre con contenido excelente, gracias viejo.

  • @AlexFreixa18
    @AlexFreixa18 Год назад

    Brutal... gracias!!

  • @User-yh7bp
    @User-yh7bp Год назад +1

    Excelente, me gusto mucho que gran aporte muchas gracias por compartir

  • @juliosesasi6237
    @juliosesasi6237 Год назад +1

    Te admiro bro, algún día espero llegar a ese nivel.

  • @Myn624
    @Myn624 Год назад +5

    Hola midu, este video me callo como anillo al dedo justo estoy desarrollando una app en donde estaba utilizando "magic strings" y viene bien saber esto!

    • @midudev
      @midudev  Год назад +1

      Buenísimo, Julio!

  • @mirpaterska
    @mirpaterska Год назад +1

    genial el video nuevo Midu, muy bien el editor nuevo. Lo único que le diría es que las transiciones las haga más lentas porque genera ansiedad. (mi opinion, claro que seguiré viendo tus vídeos!)

    • @midudev
      @midudev  Год назад +1

      Gracias por el feedback, amigo!!! :)

  • @internetuser6602
    @internetuser6602 Год назад

    Cómo mola el tema synthwave.
    Gran video gracias :D

  • @pablotoledo3935
    @pablotoledo3935 Год назад

    buenísimo, muchas gracias

  • @JuanMoisesTorrijos
    @JuanMoisesTorrijos Год назад +1

    ¡Top! ¡Cómo siempre, la edición a otro nivel! Bueno, esto de los "magic strings" ya me ha mordido, así que vamos a usar el método mencionado.

    • @midudev
      @midudev  Год назад +1

      Gracias por el comentario, Juan!!! :)

  • @juanpabotero
    @juanpabotero Год назад

    Excelente este formato de vídeos!!! 🙌🏼

    • @midudev
      @midudev  Год назад +1

      Gracias, Juan Pablo! 🤗

  • @lazaroborghi6821
    @lazaroborghi6821 Год назад +1

    Muchas gracias por todo tu contenido, sos un ídolo. Saludos desde Uruguay

    • @midudev
      @midudev  Год назад +1

      Gracias a ti, Lazaro!

  • @AndresSaaN
    @AndresSaaN Год назад

    Mira que llevo años y lo de los Symbol he tenido que buscarlo porque no lo había visto aplicado de esta manera. Grande Midu! 👏

    • @midudev
      @midudev  Год назад +1

      Gracias, Andres! :)

  • @armandosantiago4517
    @armandosantiago4517 Год назад

    Grande entre los grandes, muchas gracias Midu

  • @camilohernandezruiz2776
    @camilohernandezruiz2776 Год назад +1

    Muchas gracias, te amo

  • @moviedomof
    @moviedomof Год назад

    Excelente Una buena practica usada ya desde los inicio de la programacion.. Enums o Const ya VB6 año 1995 se podia y debia hacer eso..

    • @moviedomof
      @moviedomof Год назад

      Lo de los simbolos un peligro por que si integras con app externas a tu backend por ejemplo. deberian tener el valor de ese simbol en caso de interfases que filtran por esos valores. Prefiero poner cadena de texto d euna y que muchas veses representa una paramatrezada en la BD ademas si uno ya dispone de un code-gen automaticamente se generan las const o enums con un simple script de BD

  • @nelsonscript
    @nelsonscript Год назад

    Que buen video como siempre muy agradable y lúdico, en la época que desarrollaba en Javascript usaba el Object.freeze como tu lo aconsejas, cuando comencé a usar Typescript usaba enum, de hecho tambien uso enum desde que comencé hace unos años a desarrollar en Dart. Saludos!

  • @FilmsSaaveON
    @FilmsSaaveON Год назад

    me encantan los videos tan cortos que explican algo tan bien

  • @batcodehouse5964
    @batcodehouse5964 Год назад +5

    Muchas gracias! lo he aplicado a mis proyectos, pero tengo dudas sobre Symbol(), podrias profundizar? );

    • @jarothi
      @jarothi Год назад

      Según como lo explico, yo lo entendí como un UUID, pero debe ser diferente. Supongo.

  • @abrahag40
    @abrahag40 Год назад

    Buenisima información!

  • @tekunramirez
    @tekunramirez Год назад

    excelente, gracias!

  • @juanmunozbe93
    @juanmunozbe93 Год назад

    He tenido el problema de los magic strings y está súper bueno esta solución, thx

    • @midudev
      @midudev  Год назад +1

      Gracias, Juan!

  • @cristiank408
    @cristiank408 Год назад

    He aprendido bastante en este video!!!

    • @midudev
      @midudev  Год назад

      Qué bien, muchas gracias!

  • @franciscobecerra4780
    @franciscobecerra4780 Год назад

    Hasta que alguien explica los símbolos de una forma simple por fin logre entender el concepto.

  • @haggenx1
    @haggenx1 Год назад

    Gracias por la información

  • @johanpalaciose
    @johanpalaciose Год назад +1

    Wow midu que buena edición y contenido, sigue así, eres un grande 🎉

  • @joseavilasg
    @joseavilasg Год назад +2

    Excelente vídeo. Me fue de mucha ayuda.

    • @midudev
      @midudev  Год назад +1

      Gracias, José!

  • @movimientonativo
    @movimientonativo Год назад +10

    Como se puede aprender tanto en 6 minutos de video.... Increíble Midu, me encanta tu contenido 🔥

  • @gordon5533
    @gordon5533 Год назад +2

    Y si a los miembros les asignas valores en potencias de 2 (1, 2, 4, 8, 16) puedes tener valores que sean la unión (suma) de varios de ellos. de tal forma que mediante un operador de OR a nivel de bits sepas si el valor es una combinatoria de valores de los miembros. Como en los enumerados de C# o Java.

  • @iamjosul
    @iamjosul Год назад

    editor de video y editor de code q locazoo miduuuuuu❤

  • @josuealvarez1657
    @josuealvarez1657 Год назад

    😮 wow excelente información

  • @mauroandressosa1342
    @mauroandressosa1342 Год назад

    Muy bueno !

  • @camiloguzman1801
    @camiloguzman1801 Год назад

    Midu, eres tan bueno como Dev y maestro, que yo siendo solo un principiante, en el momento en que me he perdido, he podido regresar al tema sin problema.

    • @midudev
      @midudev  Год назад

      Muchas gracias, Camilo! :)

  • @LeFede
    @LeFede Год назад +2

    tremendo boost de calidad visual midu. Felicidades!

    • @midudev
      @midudev  Год назад +1

      Gracias, LaFede!!!

    • @LeFede
      @LeFede Год назад

      @@midudev LE! fede 😡😂

  • @ddavid2
    @ddavid2 Год назад

    2:41 Los 'Symbol', no es que se puedan usar "por meter los errores en un diccionario", como dice Midudev. Los 'Symbol', se pueden usar también en la primera definicion en forma de variables "sueltas" que explicaba al inicio.
    Y el autocompletado, lo tienes igualmente aunque no uses un objeto. De hecho, posiblemente sea mejor meter los errores en un fichero a parte para evitar dependencias circulares.

  • @juantaborda8090
    @juantaborda8090 Год назад

    Apuntado el truco midudev, muchas gracias 🙂

    • @midudev
      @midudev  Год назад

      Gracias a ti, Juan!

  • @YesicaRominaLato
    @YesicaRominaLato Год назад +1

    Dentro de symbol() tenemos que poner un icono o algo? Esa parte no me quedó en claro. Muchas gracias por ilustrarnos. Siempre todo muy valioso.

  • @christiangarciagarcia
    @christiangarciagarcia Год назад

    Gracias midu 👌👌👌🙌

  • @TheMarcelitto
    @TheMarcelitto Год назад +1

    Excelente, concepto útil para cualquier lenguaje no solo js

  • @wahoopunck
    @wahoopunck Год назад

    Me encanta este formato de video ^_^

  • @JulioCampoSwork
    @JulioCampoSwork Год назад +6

    Buena edición, los sonidos no son necesarios a mi gusto, los de notificaciones, y a veces demasiados cambios de cámara pueden marear sobre todo si estamos analizando el código y de repente te dan una vuelta de 360 a otra cosa, pero en general bien, un 8 de 10 (mi opinión)
    Y gracias por los consejos Midu, ya había tenido problemas con esos y no había pensado en esta solución

    • @midudev
      @midudev  Год назад +2

      Gracias por el feedback, Julio!!! :) Lo tomaremos en cuenta!

    • @patrick6245
      @patrick6245 Год назад

      Este efecto se conoce como "corte rápido" o "edición rápida". Este es un recurso muy utilizado en la producción de videos para redes sociales y plataformas como RUclips, donde la duración de la atención del espectador es limitada.
      La técnica consiste en alternar rápidamente entre diferentes tomas, ángulos o escenas, a menudo sincronizando la transición con la música o el ritmo de la edición, para crear un efecto visual impactante que mantiene la atención del espectador. Este efecto puede hacer que el video sea más dinámico y emocionante, lo que puede ayudar a aumentar su impacto y su capacidad para captar la atención del público.

  • @kmylodarkstar2253
    @kmylodarkstar2253 Год назад

    Habia visto los Symbol cómo key, no como value, buen aporte hay que manejar igual esos valores que se generan en runtime con pinzas, pero es un buen caso de uso. Salu2

  • @carlososorio7609
    @carlososorio7609 Год назад

    Gracias!

  • @Paul-po4md
    @Paul-po4md Год назад +1

    genio, como siempre

  • @elmersolis7301
    @elmersolis7301 Год назад +1

    Grande midu, siempre aprendiendo

    • @midudev
      @midudev  Год назад

      Gracias, Elmer! 🤗

  • @aerozedits6692
    @aerozedits6692 Год назад

    Oye midu, un 10 por la edición del vídeo, Lo hace mucho más entretenido. Felicitaciones al editor o editora!

  • @mariorocha2969
    @mariorocha2969 10 месяцев назад

    Increible 😮😮

  • @lacuevadelinsecto
    @lacuevadelinsecto Год назад

    Me mató la música de Hollow Knight de fondo 😂. Excelente contenido estimado!

  • @jpcisneros21
    @jpcisneros21 Год назад

    Muy interesante gracias por la explicacion. En este caso teniendo tanto else if no seria mejor utilizar un switch?

  • @carlosgil4433
    @carlosgil4433 Год назад

    Muy bueno :)

  • @samuraitatin
    @samuraitatin Год назад

    Muchas gracias por el video, me ha enseñado algo que no sabía.
    Una duda que extension es para que ponga el === como las tres lineas seguidas?

  • @jamirbances
    @jamirbances Год назад

    muy interesante

  • @jc_software
    @jc_software Год назад

    Excelent!

  • @GERARDHHH
    @GERARDHHH Год назад

    Tienes un editor profe? Me gusta la nueva edición

  • @adrikai
    @adrikai Год назад +1

    Gracias por otro gran video

    • @midudev
      @midudev  Год назад +1

      Gracias a ti, Adrián!

  • @eduardorireyes9699
    @eduardorireyes9699 10 месяцев назад

    Buaaaaaaaaaaaaaaa Me voló la cabeza lo de los símbolos 🤯🤯🤯🤯🤯

  • @Rogelio654837
    @Rogelio654837 Год назад +1

    No conozco tan profundamente JS, pero en C# se soluciona con enumerators y creo que JS también los tiene

  • @yoanestradablanco1608
    @yoanestradablanco1608 Год назад +1

    Buenisimo yo ya lo aplicaba pero no con el Object.freeze tremendo consejo gracias genio

    • @midudev
      @midudev  Год назад

      Siempre se aprende algo nuevo!

  • @godes43
    @godes43 Год назад

    Acaso escucho en el fondo Fungal Wastes, de Christopher Larkin?
    Gracias por el video, Midu

  • @prime_time_youtube
    @prime_time_youtube Год назад

    Gracias

  • @lazaro2326
    @lazaro2326 Год назад

    Ufff la música de fondo del sendero verde de Hollow Knight 👌🥰
    Muy buena info n_n

  • @fernandoezpinoza4074
    @fernandoezpinoza4074 Год назад +1

    esta genial el video, oye como se llama ese editor de codigo que utilizas?

  • @SeriesFrontend
    @SeriesFrontend Год назад

    Con TS se pueden usar enums para eso.

  • @xavier.xiques
    @xavier.xiques Год назад +1

    Me tienes intrigado. A ver que nos muestras hoy :)

  • @jesustoro1694
    @jesustoro1694 Год назад +6

    Hola midu, para typescript ves bien usar los enum para solventar estos magic strings o los usarias para otro tipo de caso?

    • @midudev
      @midudev  Год назад

      Sí, enums o diccionarios as const.

  • @rafaelacosta5374
    @rafaelacosta5374 Год назад +1

    por lo que veo los Enums no existen en JS, buen aporte de maneras de realizar uno

  • @THIAGO_6721
    @THIAGO_6721 Год назад +1

    @midudev Que herramienta usas para ver las dos ventanas e ir ejecutando el js en una e ir viendo el resultado en la otra inmediatamente. Seria muy util para muchos. Abrazos crack!!!!

  • @hartlink
    @hartlink Год назад

    Muy buen vídeo, muy digerible y entendible, cabe mencionar que las recomendaciones que haces aplican no solo a JS si no también a otros lenguajes de programación. Algo gracioso que se me hizo por parte del vídeo es que agregaste el sonido de cuando te llegan mensajes en la app de Messages había pensando que ya me habían llegado un montón de nuevos mensajes jajaja, espero más contenido de este estilo es muy enriquecedor, excelente día!

  • @FuuwaaArtist
    @FuuwaaArtist Год назад

    hola midu como vas? , tengo una duda , ¿cual seria la entrada de la variable tipo ?, el cual se comparara con los objetos al usar, donde ya todo lo implementado se ha realizado. Veo que hay un dato que se compara (tipo) pero si este debe ser digitado y luego cambiado a mayúsculas para después hacer la comparación o también podría este dato buscarse en una base de datos para hacer la comparación o extraído de un atributo en el html (por ejemplo el disabled).

  • @darkyelox
    @darkyelox Год назад +10

    Muy buena informacion para javascript puro, para los que usamos TypeScript me parece mejor usar enums de strings, son inmutables y organizan de la misma forma

  • @LordSaeron
    @LordSaeron Год назад

    Maravillosa la banda sonora de hollow knight, buen tip.

  • @danielvaldebenito3871
    @danielvaldebenito3871 Год назад

    Gracias ❤, qué tema ocupas en VS?

    • @yovaxox
      @yovaxox 8 месяцев назад

      Synthwave 84

  • @ulissesmartinezpalafox464
    @ulissesmartinezpalafox464 11 месяцев назад

    Cuál es el tema que estás usando para tu vs code?, Y cómo es que se ve tan fluidoooo?.
    Me encantó lo música de Hollow Knight de fondo

    • @yovaxox
      @yovaxox 8 месяцев назад

      Synthwave 84

  • @ignaciocortez595
    @ignaciocortez595 10 месяцев назад

    Miduuu no sabia que te gustaba HollowKnight!!

  • @geekhadev
    @geekhadev Год назад +2

    @midudev la verdad el contenido del video como siempre genial, sin embargo el formato, para explicaciones o videos de RUclips no me parece acertado el movimiento de foco al menos a mí me distrae mucho y no me deja centrarme en ver todo el código que explicas, los zoom para mi son útiles solo en los casos que el texto se ve muy pequeño de lo contrario prefiero un video plano sin tantos cambios de zoom ni de foco. Pero es solo mi apreciación, quizás para videos mas cortos de redes sociales como Instagram queda mucho mejor ese formato de edición.

    • @midudev
      @midudev  Год назад

      Te agradezco mucho el feedback, lo tendremos en cuenta!!!! :)

  • @respada86
    @respada86 10 месяцев назад

    En este uso en particular, no se podría cambiar por un Enum? En TS ya existe

  • @Albanus15
    @Albanus15 Год назад

    Se puede usar Symbol() para las keys de react?

  • @jimmygilces
    @jimmygilces Год назад +1

    Hola, me gusta tu contenido, muy bueno, nose porque pero veo que el indicador de tu mouse tiene cierto desplazamiento suave, como le haces para eso?

    • @midudev
      @midudev  Год назад

      Es un tema de cómo funciona cómo captura el vídeo.

  • @guidofortunato
    @guidofortunato Год назад

    muy buen video, que theme usas?

    • @yovaxox
      @yovaxox 8 месяцев назад +1

      Synthwave 84

  • @christianruiz5454
    @christianruiz5454 Год назад

    Hola Midudev como estas espero que bien, te molesto para consultarte algo, todos los streams que haces en Twitch quedan grabados, te consulto porque me llamo la atension eso si es que quedan guardados para verlos.

  • @AdrianLuty
    @AdrianLuty 5 месяцев назад

    puede existir una incompatibilidad con el export
    SI ESTAN IMPLEMENTANDO NODE.JS se aplica estos cambios
    module.exports.MESSAGE_TYPES = Object.freeze({
    ERROR: Symbol(),
    WARNING: Symbol(),
    INFO: Symbol()
    });
    module.exports.USER_STATUS = Object.freeze({
    IS_LOGGED: 0,
    UNREGISTERED: -1
    });
    function imprimirMensaje(tipo) {
    if (tipo === module.exports.MESSAGE_TYPES.ERROR) {
    console.error('Se ha producido un error');
    }
    if (tipo === module.exports.MESSAGE_TYPES.WARNING) {
    console.error('Esto es una advertencia');
    }
    if (tipo === module.exports.MESSAGE_TYPES.INFO) {
    console.error('Esto es información');
    } else {
    console.log('Mensaje no reconocido');
    }
    }
    imprimirMensaje(module.exports.MESSAGE_TYPES.WARNING);
    SIN NODE.JS
    const MESSAGE_TYPES = Object.freeze({
    ERROR: Symbol(),
    WARNING: Symbol(),
    INFO: Symbol()
    });
    const USER_STATUS = Object.freeze({
    IS_LOGGED: 0,
    UNREGISTERED: -1
    });
    function imprimirMensaje(tipo) {
    if (tipo === MESSAGE_TYPES.ERROR) {
    console.error('Se ha producido un error');
    }
    if (tipo === MESSAGE_TYPES.WARNING) {
    console.error('Esto es una advertencia');
    }
    if (tipo === MESSAGE_TYPES.INFO) {
    console.error('Esto es información');
    } else {
    console.log('Mensaje no reconocido');
    }
    }
    imprimirMensaje(MESSAGE_TYPES.WARNING);

  • @geovanniverabalcazar2541
    @geovanniverabalcazar2541 Год назад

    Tu tema de vscode es hermoso como se llama ?

  • @danielbarreto8956
    @danielbarreto8956 Год назад

    Crack!

  • @javicarrara
    @javicarrara Год назад +2

    Creo que lo mejor sería utilizar el paradigma de programación orientada a objetos, y que cada error sea una instancia de la clase del error que corresponda. Abusar de primitivos es un code smell y para eso están los value objects, con esto, te quitas de encima ese código spaghetti, que viola varios principios solid, principalmente srp y ocp. Con typescript, a veces se elige solucionarlo con enums, pero también tiene sus problemas, principalmente para escalar. Saludos

  • @flaken1392
    @flaken1392 Год назад

    Coincido respecto a los sonidos de fondo. No están mal, pero me gustaría que mientras hablas se minimicen lo mayor posible ya que a veces le prestas un segundo de atención al sonido y te pierdes de lo que se está hablando.
    El resto genial, muchas gracias.

  • @marcoshernanz1
    @marcoshernanz1 10 месяцев назад

    Hola! Cómo se llama la extensión que usas para que el ratón se te ponga como un + y salgan unas líneas para ver si están alineadas las cosas?

  • @Fernando1196
    @Fernando1196 Год назад

    Y un diccionario vs un Enum que igual se lo usa para los Magic string.
    ¿Qué pasa con un Freeze?

  • @AlphariusOmegonREAL
    @AlphariusOmegonREAL Год назад

    Con typescript podrias usar un enum

  • @EmilianoKalafatic
    @EmilianoKalafatic Год назад

    Esto sería algo similar a los enum en otros lenguajes no?