1
00:00:00,150 --> 00:00:00,990
Bien, continuemos.

2
00:00:01,080 --> 00:00:07,230
Había faltado asignar el valor de experiencia acá, extrema experiencia, pero faltó entonces por acá,

3
00:00:07,380 --> 00:00:12,030
debajo de edad, experiencia, puntos, set, valor.

4
00:00:13,470 --> 00:00:14,550
Bueno, lo que sea,

5
00:00:19,320 --> 00:00:19,710
lo que sea.

6
00:00:19,770 --> 00:00:21,570
Más de 10 años de experiencia.

7
00:00:21,630 --> 00:00:23,010
En fin, cualquier cosa.

8
00:00:23,190 --> 00:00:24,270
P La idea de este campo.

9
00:00:24,360 --> 00:00:25,080
Experiencia.

10
00:00:25,170 --> 00:00:27,330
Relatar la trayectoria de la persona.

11
00:00:27,420 --> 00:00:28,410
La experiencia completa.

12
00:00:28,410 --> 00:00:29,970
Por ejemplo, en el lenguaje.

13
00:00:30,180 --> 00:00:31,920
Algo más extenso que lo demás.

14
00:00:31,920 --> 00:00:32,370
Campo.

15
00:00:33,900 --> 00:00:37,110
Ahora vamos a crear esta lista, que tiene que ser de tipo genérico.

16
00:00:37,680 --> 00:00:43,410
Recuerden que todos los tipos input for text area, todos los tipos concreto, también son del tipo

17
00:00:43,410 --> 00:00:45,570
de la clase abstracta, del tipo genérico.

18
00:00:45,780 --> 00:00:50,610
Entonces, para poder juntar a todos dentro de un mismo tipo, tiene que ser el genérico.

19
00:00:51,450 --> 00:00:53,340
Entonces vamos a crear una lista.

20
00:00:53,400 --> 00:00:57,510
Recuerden que siempre el list se importa de yaba útil y no de otro package.

21
00:00:57,600 --> 00:01:02,280
Porque también tenemos yaba punto a doble bete siempre de útil.

22
00:01:02,490 --> 00:01:06,960
Indicamos el tipo con el menor y mayor elemento form

23
00:01:10,140 --> 00:01:14,010
elementos igual new ArrayList.

24
00:01:15,480 --> 00:01:18,960
Importamos ArrayList y también importamos.

25
00:01:19,020 --> 00:01:19,470
Listo.

26
00:01:22,430 --> 00:01:27,740
Bien, acá lo podemos dejar sin el tipo, ya que está haciendo acá bien importante equipo lo general

27
00:01:27,770 --> 00:01:28,940
cuando trabajamos con lista.

28
00:01:29,030 --> 00:01:30,140
Esto lo había mencionado.

29
00:01:30,320 --> 00:01:32,300
Disculpen, pero lo voy a repetir para que quede claro.

30
00:01:32,480 --> 00:01:34,280
Trabajamos con la interfaz.

31
00:01:34,340 --> 00:01:37,300
Acá, acá tenemos una pulí interfaz.

32
00:01:37,410 --> 00:01:40,520
Listo, ya, pero acá tenemos la clase concreta.

33
00:01:40,640 --> 00:01:44,810
Esta es una clase de hecho, ArrayList implementa esta interfaz.

34
00:01:44,930 --> 00:01:52,010
Entonces, por eso podemos utilizar el list como un tipo de ArrayList de hecho ArrayList, aunque después

35
00:01:52,010 --> 00:01:55,100
lo vamos a eman detalle, pero por acá.

36
00:01:56,240 --> 00:01:58,340
Implementa list@ la interfaz?

37
00:01:59,930 --> 00:02:00,800
Bien, continuemos.

38
00:02:00,860 --> 00:02:02,040
Después vamos a ver más detalle.

39
00:02:03,110 --> 00:02:04,940
Elementos punto A.

40
00:02:07,430 --> 00:02:10,410
Y vamos a agregar estos elementos que tenemos.

41
00:02:10,430 --> 00:02:11,960
Por ejemplo, yo Usenet,

42
00:02:16,430 --> 00:02:23,090
el paso por elementos, el email.

43
00:02:29,930 --> 00:02:30,890
La experiencia.

44
00:02:32,360 --> 00:02:34,010
Y qué faltaría el lenguaje

45
00:02:36,490 --> 00:02:37,070
lenguaje.

46
00:02:39,930 --> 00:02:43,850
Se fijan todos son tipos de elemento foro, que sería la clase padre.

47
00:02:47,260 --> 00:02:56,500
Entonces, usando un for, podemos iterar esta lista del tipo abstracto elemento for le vamos a llamar

48
00:02:56,650 --> 00:02:56,930
e.

49
00:02:57,100 --> 00:03:02,260
De elemento 2 punto elementos del array listo.

50
00:03:03,790 --> 00:03:08,640
Vamos a imprimir entonces e elemento por cada uno dibujar html.

51
00:03:10,010 --> 00:03:11,030
Bien, vamos a probar.

52
00:03:11,880 --> 00:03:12,740
Entonces Rann.

53
00:03:15,580 --> 00:03:18,460
Bien, y acá tenemos cada uno implementado distintas formas.

54
00:03:18,490 --> 00:03:25,420
Por ejemplo, el input del tipo texto, nombre o name Yussef Deum valio jondo.

55
00:03:25,510 --> 00:03:30,530
Ahí tenemos el valor, lo mismo el password del tipo password name clave valeo.

56
00:03:30,640 --> 00:03:38,150
Acá tenemos el valor email del tipo email nombre email y el valor la da también del tipo en Amper.

57
00:03:38,770 --> 00:03:44,470
Cada uno se dibuja, se renderiza de forma distinta y esa es la gracia del polimorfismo de la clase.

58
00:03:44,480 --> 00:03:47,200
Clases abstracta, pero siempre con un comportamiento en común.

59
00:03:47,290 --> 00:03:56,080
El método dibujar html, el text area, el nombre del campo XP de experiencia columnas 9 Rousse o fila

60
00:03:56,140 --> 00:04:00,190
5 y dentro del cuerpo del text area val.

61
00:04:00,190 --> 00:04:01,700
Valor o el contenido en el fondo.

62
00:04:01,720 --> 00:04:02,350
Contenido.

63
00:04:03,360 --> 00:04:09,720
Luego tenemos el select o esta lista desplegable nombre lenguaje en nombre campo y dentro del cuerpo

64
00:04:09,720 --> 00:04:12,420
del select tenemos las distintas opciones.

65
00:04:12,600 --> 00:04:18,720
Entonces acá se abre el select con el nombre de campo y acá se cierra y dentro una lista de opciones.

66
00:04:19,650 --> 00:04:28,680
Con su valor, que sería Leydi y anidado dentro del cuerpo de cada opción option el valor yaba Peyton

67
00:04:28,740 --> 00:04:36,180
ya script, script, php y si se fijan ya aparece Selected, lo marcamos, los seleccionamos y también

68
00:04:36,180 --> 00:04:37,950
importante lo que hicimos la clase anterior.

69
00:04:38,190 --> 00:04:41,760
Si nos vamos a la clase Select Form.

70
00:04:43,260 --> 00:04:50,580
También así damos el valor una que se selecciona bueno, aparte de dibujar o renderizar, marcar esta

71
00:04:50,640 --> 00:04:53,610
opción como selected, como seleccionado con este atributo.

72
00:04:54,270 --> 00:05:00,090
Además, asignamos el valor del elemento con el valor que tiene la opción seleccionada.

73
00:05:00,180 --> 00:05:05,610
En este caso yaba, entonces el valor que contiene es el Heidy o el identificador de Yaba que sería

74
00:05:05,670 --> 00:05:06,050
1.

75
00:05:06,720 --> 00:05:07,650
Ya tenemos el ejemplo.

76
00:05:07,950 --> 00:05:13,700
Volvamos ejemplo for Bueno, se podrían realizar varias mejoras optimizaciones para que quede mejor,

77
00:05:13,890 --> 00:05:18,300
pero antes de eso vamos a copiar este código.

78
00:05:18,890 --> 00:05:24,960
Entonces este código de acá completo control C lo copiamos y vamos a crear un archivo en la red del

79
00:05:24,960 --> 00:05:25,500
proyecto.

80
00:05:26,130 --> 00:05:34,080
Entonces por ejemplo, podría ser acá en P o clases abstracta con clic derecho new html fail.

81
00:05:35,390 --> 00:05:39,620
Ford no solamente para el ejemplo, nada más para ver cómo eran los campos en HTML.

82
00:05:40,700 --> 00:05:40,960
Listo.

83
00:05:41,090 --> 00:05:48,380
Ahí tenemos el HTML y se genera una estructura por defecto en HTML HTML5 con las etiqueta.

84
00:05:48,500 --> 00:05:54,200
Esto no lo voy explicar solamente para poder visualizar los campos nada más, pero básicamente un documento

85
00:05:54,230 --> 00:05:58,730
tipo HTML y vamos a pegar el contenido de nuestro formulario.

86
00:06:00,120 --> 00:06:02,100
Y podemos pinchar algún navegador.

87
00:06:04,550 --> 00:06:10,280
Se fijan, imprime el formulario, los campos se fijan extremo jondo, el password.

88
00:06:10,520 --> 00:06:14,570
Acá tenemos el email, la edad del tipo en Amper.

89
00:06:14,690 --> 00:06:21,470
Acá tenemos el textarea y la lista desplegable con los distintos lenguajes y yaba aparece marcado.

90
00:06:21,560 --> 00:06:22,760
Se fijan, aparece seleccionado.

91
00:06:22,940 --> 00:06:25,910
Ahora también podríamos bajar línea.

92
00:06:26,240 --> 00:06:29,480
Bueno, bastante simple lo podríamos agregar acá.

93
00:06:30,140 --> 00:06:34,220
Entonces, después de dibujar HTML acá, podríamos dibujar un salto línea

94
00:06:38,030 --> 00:06:38,660
con Berri.

95
00:06:39,200 --> 00:06:39,740
Nada más.

96
00:06:40,250 --> 00:06:41,540
Volvemos a ejecutar.

97
00:06:42,450 --> 00:06:46,380
Entonces se ha de dibujar un verde, un separador por cada campo.

98
00:06:47,740 --> 00:06:51,640
Ahora no es tan importante solamente, solamente para que tengan presente nada más.

99
00:06:52,130 --> 00:06:56,860
Entonces acá contra el Zeta volvemos a pegar, volvemos, actualizara acá.

100
00:06:58,640 --> 00:07:01,730
Se fijan, ahí aparece ya con los campos hacia abajo.

101
00:07:01,940 --> 00:07:03,200
Un detalle nada más.

102
00:07:03,870 --> 00:07:05,940
Bien, volvamos, voy a bajar acá.

103
00:07:07,110 --> 00:07:10,260
Volvemos a ejemplo For being qué podríamos mejorar?

104
00:07:10,350 --> 00:07:11,100
Optimizar.

105
00:07:11,310 --> 00:07:17,880
Por ejemplo, acá cuando agregamos las opciones tenemos la opción de hacerlo de forma encadenada, es

106
00:07:17,880 --> 00:07:20,610
decir, add opción, punto, adopción.

107
00:07:20,730 --> 00:07:22,770
Y así entonces podríamos quitar esto.

108
00:07:25,840 --> 00:07:26,870
Y quitémosle el punto y coma.

109
00:07:26,930 --> 00:07:29,810
Dejamos solamente el punto y coma final, pero acá le quitamos.

110
00:07:31,910 --> 00:07:36,530
Y se van invocando forma encadenada, lo que si el primero lo tiene que tener.

111
00:07:36,620 --> 00:07:38,120
Entonces acá sería lenguaje.

112
00:07:41,090 --> 00:07:43,220
O ni siquiera no, porque lo tenemos acá.

113
00:07:43,520 --> 00:07:44,750
Acá, aquí el punto y coma.

114
00:07:44,870 --> 00:07:45,320
Eso sí.

115
00:07:45,710 --> 00:07:47,090
Entonces ahí tenemos el primero.

116
00:07:47,160 --> 00:07:53,450
Adopción Yaba y luego Regí transforma en cadena lo siguiente un poco más simple que otra cosa.

117
00:07:53,810 --> 00:07:58,640
Quizás en vez de utilizar ArrayList podríamos utilizar algún atajo.

118
00:07:58,820 --> 00:08:02,420
Bueno, en realidad igual vamos a utilizar ArrayList, pero hay una clase.

119
00:08:02,780 --> 00:08:04,130
De hecho, voy a cambiar este código.

120
00:08:04,520 --> 00:08:05,450
Lo vamos a mejorar.

121
00:08:05,540 --> 00:08:06,500
Pero al final es lo mismo.

122
00:08:06,560 --> 00:08:08,390
Solamente es otra alternativa.

123
00:08:08,480 --> 00:08:11,980
Queda un poco más ordenado utilizando la clase Arraiz.

124
00:08:13,250 --> 00:08:13,930
Punto.

125
00:08:14,030 --> 00:08:15,740
Haz el listo como lista.

126
00:08:16,880 --> 00:08:18,740
Entonces, acá separado por coma.

127
00:08:19,820 --> 00:08:29,840
Podemos asignar o guardar los elementos, por ejemplo, y en coma password y por debajo se crea un ArrayList.

128
00:08:30,000 --> 00:08:31,040
Entonces eso es lo mismo.

129
00:08:34,830 --> 00:08:36,640
Pegamos y así por cada uno.

130
00:08:36,840 --> 00:08:38,250
Pero voy bajando.

131
00:08:39,480 --> 00:08:41,340
Entonces acá, acá.

132
00:08:49,900 --> 00:08:55,090
Acá me comí el paréntesis, ahí sí y faltaría el lenguaje.

133
00:08:58,160 --> 00:09:06,200
Bajamos y bajamos esto le quitamos sería otra forma, usando Arraiz, punto Hazlitt.

134
00:09:06,320 --> 00:09:09,380
Entonces, por detrás de escena retorna una lista.

135
00:09:09,620 --> 00:09:10,670
Un objeto del tipo listo.

136
00:09:11,920 --> 00:09:14,770
Y por debajo también va a utilizar una implementación de List.

137
00:09:14,900 --> 00:09:16,270
Pero en fin, da lo mismo.

138
00:09:16,600 --> 00:09:22,780
Otra forma queda un poco más simplificada si fijan un poco más ordenado visualmente, pero el resultado

139
00:09:22,900 --> 00:09:23,500
es igual.

140
00:09:24,010 --> 00:09:24,940
Si levantamos.

141
00:09:26,110 --> 00:09:27,240
Se fijan en lo mismo.

142
00:09:30,670 --> 00:09:37,450
También podríamos iterar de otra forma utilizando el API Stream de Java, que viene integrado con el

143
00:09:37,450 --> 00:09:39,390
API de colección desde Yaba 8.

144
00:09:39,640 --> 00:09:44,830
Solamente lo voy a mostrar porque después también vamos a entrar en detalle cuando veamos el API de

145
00:09:44,830 --> 00:09:49,540
colisión de Yaba y también, por supuesto, cuando veamos el API Stream de Java 8.

146
00:09:49,690 --> 00:09:54,340
Ahora solamente lo voy a mostrar como un pequeño preview solamente para que lo conozcan.

147
00:09:54,490 --> 00:10:00,610
Entonces, en vez de iterar de esta forma, podríamos iterar de otra forma utilizando stream.

148
00:10:01,210 --> 00:10:10,030
Bien, entonces por acá abajo elementos, punto, forillo, retener el método forillo que acá tenemos

149
00:10:10,030 --> 00:10:16,600
que agregar una expresión lanta y esta prisión Lanta lo que hace es emitir un elemento en cada iteración.

150
00:10:17,050 --> 00:10:23,050
Le voy a llamar e guión o signo menos y la flecha se fijan y las llaves.

151
00:10:23,650 --> 00:10:27,010
Tenemos un foreach distinto a través de un método.

152
00:10:27,400 --> 00:10:29,500
Esto es parte del API Stream de Java.

153
00:10:29,710 --> 00:10:31,300
Entonces ahora esto mismo

154
00:10:34,390 --> 00:10:37,540
se fijan y también podríamos colocar esto.

155
00:10:41,930 --> 00:10:47,900
Y el foro le quitamos entonces otra forma literal, utilizando elementos punto foreach por cada elemento

156
00:10:47,900 --> 00:10:49,460
de la lista se emite.

157
00:10:49,730 --> 00:10:54,050
Y acá tenemos una función de flecha o expresión Landa también.

158
00:10:54,050 --> 00:10:55,440
Después lo vamos a ver más en detalle.

159
00:10:55,730 --> 00:11:02,930
Pero básicamente se pasa por argumento a este método una función o que en Schumer un consumidor de estos

160
00:11:02,930 --> 00:11:08,930
elementos que se van emitiendo y en esta función implementamos lo que vamos a hacer con Calem lento

161
00:11:09,050 --> 00:11:09,890
que se va a iterar.

162
00:11:10,160 --> 00:11:10,700
Eso es todo.

163
00:11:14,980 --> 00:11:21,280
Se fijan, el resultado es exactamente igual, así que por ahora solamente lo dejo en el código para

164
00:11:21,280 --> 00:11:24,470
que se vayan familiarizando con este concepto un poco más avanzado.

165
00:11:24,580 --> 00:11:30,190
Pero recuerden, esta forma de foreach es prácticamente lo mismo o muy similar a la que teníamos anterior,

166
00:11:30,370 --> 00:11:37,690
pero viene integrada como un método en el API colección de Yaba en el tipo List y además con programación

167
00:11:37,690 --> 00:11:38,290
funcional.

168
00:11:38,410 --> 00:11:38,960
Nada más.

169
00:11:38,980 --> 00:11:41,020
Continuamos en la siguiente clase.
