Return to Video

Tipos de Objetos (Versión en Video)

  • 0:01 - 0:06
    Ahora que entiendes los fundamentos de Javascript, quiero enseñarte una forma genial de usar Javascript.
  • 0:06 - 0:10
    Algo que llamamos "Programación orientada a objetos"
  • 0:10 - 0:13
    Pero primero debemos entender por qué es realmente útil.
  • 0:13 - 0:18
    Así que puse aquí un programa que estará mejorado una vez que lo hagamos más orientado a objeto.
  • 0:18 - 0:25
    Ahora, éste es un buen programa para empezar. En la parte superior, tenemos dos variables que almacenan literales de objeto.
  • 0:25 - 0:30
    Ahora, los literales de objeto son un tipo de objetos que aprendimos antes y que creamos con dos llaves ({}),
  • 0:30 - 0:34
    y dentro de las cuales ponemos la información de los nombres y valores de las propiedades.
  • 0:34 - 0:39
    Así que aquí tenemos dos de esas variables literales de objeto, y aquí abajo tenemos esta función "drawWinston",
  • 0:39 - 0:41
    que espera recibir un argumento simple,
  • 0:41 - 0:48
    y después dibuja el argumento, dibuja una imagen basada en la "x" y "y" que son propiedades del objeto,
  • 0:48 - 0:53
    y luego un título basado en el sobrenombre y la edad que son propiedades del objeto.
  • 0:53 - 0:58
    Y finalmente hasta abajo, llamamos la fución "drawWinston()" para el adolescente y para el adulto,
  • 0:58 - 1:01
    que es lo que hace que se muestren.
  • 1:01 - 1:06
    Muy bien. Ahora si vamos de este lado y vemos estas literales de objeto,
  • 1:06 - 1:11
    fíjense que se ven muy similares.
  • 1:11 - 1:18
    Las dos tienen el mismo conjunto de propiedades, y las dos pueden ser usadas por la misma función "drawWinston()".
  • 1:18 - 1:24
    De hecho, si piensas en esto, las dos están describiendo un tipo de "Winston", ¿cierto?
  • 1:24 - 1:29
    Y podríamos pensar que existe algo así como un tipo abstracto de "Winston" en el mundo,
  • 1:29 - 1:36
    y que cada "Winston" tiene el mismo conjunto de propiedades como un sobrenombre ("nickname"), edad ("age"), una "x" y una "y",
  • 1:36 - 1:42
    y aquí, hemos creado dos instancias de "Winston"
  • 1:42 - 1:48
    para describir un "Winston" particular. Este es un "Winston" adolescente, y este es un "Winston" adulto.
  • 1:48 - 1:55
    Pero los dos en realidad son muy similares, y hay muchas cosas que son similares entre ellos.
  • 1:55 - 2:01
    Y si lo piensas bien, así es como funciona el mundo, tenemos tipos de datos abstractos como seres humanos y gente,
  • 2:01 - 2:06
    y cada uno de nosotros somos instancias específicas de ellos con nuestras propias pequeñas propiedades.
  • 2:06 - 2:15
    Ahora, podemos usar técnicas orientadas a objetos en Javascript de tal forma que estas variables de "Winston"
  • 2:15 - 2:22
    sean instancias formales del objeto "Winston", de manera que ellos sepan que están compartiendo cosas en común.
  • 2:22 - 2:28
    Entonces, para hacer eso, en primer lugar tenemos que describir este tipo de dato abstracto llamado "Winston".
  • 2:28 - 2:31
    Y lo haremos con una variable.
  • 2:31 - 2:39
    Almacenaremos el tipo de dato en una variable. Así que "var Winston" y usaremos "W" mayúscula porque debemos iniciar nuestros objetos con mayúscula,
  • 2:39 - 2:42
    y lo igualaremos a una función.
  • 2:42 - 2:47
    Y esta función es una función especial que llamamos "función constructora",
  • 2:47 - 2:52
    porque vamos a llamar esta función cada vez que queramos crear una nueva instancia de "Winston".
  • 2:52 - 2:58
    Así que si queremos crear un "Winston" adolescente llamaremos esta función y si queremos crear un "Winston" adulto llamaremos esta función.
  • 2:58 - 3:06
    Esto significa que esta función debe tomar cualquier argumento que necesite saber para crear un "Winston" completo.
  • 3:06 - 3:11
    En este caso necesita conocer el sobrenombre ("nickname"), la edad ("age"), la "x" y la "y".
  • 3:11 - 3:15
    Ahora, una vez que tenemos esos argumentos, vamos a hacer algo con ellos,
  • 3:15 - 3:21
    tenemos que adjuntar esa información al objeto "Winston".
  • 3:21 - 3:29
    Para eso usaremos una nueva y especial palabra clave: "this". Y "this" se referirá a la instancia actual del objeto.
  • 3:29 - 3:35
    Así que escribimos "this.nickname", y esto significa que la propiedad "nickname" de este objeto es igual a
  • 3:35 - 3:38
    lo que sea que le pasemos a la función constructora, ¿ok?
  • 3:38 - 3:46
    Y "this.age" es igual a lo que le pasemos en "age", "this.x" es igual a la "x" que le pasemos, y "this.y"
  • 3:46 - 3:48
    es igual a la "y" que le pasemos.
  • 3:48 - 3:58
    Muy bien, ahora tenemos este tipo de dato abstracto llamado "Winston", y tiene una función constructora que podemos usar para crear un nuevo "Winston".
  • 3:58 - 4:00
  • 4:00 - 4:05
  • 4:05 - 4:10
  • 4:10 - 4:14
  • 4:14 - 4:22
  • 4:22 - 4:28
  • 4:28 - 4:31
  • 4:31 - 4:36
  • 4:36 - 4:40
  • 4:40 - 4:47
  • 4:47 - 4:51
  • 4:51 - 4:58
  • 4:58 - 5:05
  • 5:05 - 5:09
  • 5:09 - 5:14
  • 5:14 - 5:20
  • 5:20 - 5:23
  • 5:23 - 5:28
  • 5:28 - 5:31
  • 5:31 - 5:34
  • 5:34 - 5:39
  • 5:39 - 5:41
  • 5:41 - 5:46
  • 5:46 - 5:51
  • 5:51 - 5:56
  • 5:56 - 6:01
  • 6:01 - 6:07
  • 6:07 - 6:13
  • 6:13 - 6:17
  • 6:17 - 6:21
  • 6:21 - 6:27
  • 6:27 - 6:30
  • 6:30 - 6:36
  • 6:36 - 6:41
  • 6:41 - 6:46
  • 6:46 - 6:49
  • 6:49 - 6:51
Title:
Tipos de Objetos (Versión en Video)
Description:

more » « less
Video Language:
English
Duration:
06:51
Martha Isabel Soriano Ruiz edited Spanish, Mexican subtitles for Object Types (Video Version)
Martha Isabel Soriano Ruiz edited Spanish, Mexican subtitles for Object Types (Video Version)
Martha Isabel Soriano Ruiz edited Spanish, Mexican subtitles for Object Types (Video Version)
Martha Isabel Soriano Ruiz edited Spanish, Mexican subtitles for Object Types (Video Version)
Martha Isabel Soriano Ruiz edited Spanish, Mexican subtitles for Object Types (Video Version)
Martha Isabel Soriano Ruiz edited Spanish, Mexican subtitles for Object Types (Video Version)

Spanish, Mexican subtitles

Revisions Compare revisions