1
00:00:03,980 --> 00:00:11,490
Bienvenido al desarrollo del lado del servidor con NodeJS, Express y MongoDB.

2
00:00:11,490 --> 00:00:15,125
Este es el curso final de la especialización.

3
00:00:15,125 --> 00:00:19,680
En este curso, nos concentraremos principalmente en el lado del servidor.

4
00:00:19,680 --> 00:00:24,425
Vamos a ver cómo usamos el tiempo de ejecución de Node para

5
00:00:24,425 --> 00:00:30,555
desarrollar la capa de lógica empresarial del lado del servidor usando JavaScript.

6
00:00:30,555 --> 00:00:34,515
Luego veremos el marco Express que

7
00:00:34,515 --> 00:00:38,775
nos permite desarrollar rápidamente una aplicación del lado del servidor.

8
00:00:38,775 --> 00:00:41,555
También veremos MongoDB como

9
00:00:41,555 --> 00:00:48,400
un almacenamiento de documentos para nuestros datos persistentes en la base de datos.

10
00:00:48,400 --> 00:00:51,625
Antes de embarcarse en este curso,

11
00:00:51,625 --> 00:00:57,490
permítanme enfatizar que debe tener un muy buen conocimiento práctico de JavaScript.

12
00:00:57,490 --> 00:01:03,005
Espero que tenga un conocimiento lo suficientemente profundo de la versión ES 5 de

13
00:01:03,005 --> 00:01:09,770
JavaScript y al menos familiarizado con ES 2015 más versión de JavaScript,

14
00:01:09,770 --> 00:01:13,090
específicamente el uso de funciones de flecha.

15
00:01:13,090 --> 00:01:20,170
También preferiblemente, debería haber completado el módulo Angular/React de esta especialización.

16
00:01:20,170 --> 00:01:26,265
Para que usted tenga una comprensión de la imagen desde la perspectiva del front-end,

17
00:01:26,265 --> 00:01:30,530
usted sabe qué tipo de datos se requerirían en el front-end

18
00:01:30,530 --> 00:01:35,520
para construir la interfaz de usuario para nuestra aplicación front-end.

19
00:01:35,520 --> 00:01:40,970
Este entendimiento le ayuda a permitir ver cómo

20
00:01:40,970 --> 00:01:43,820
nuestra aplicación Node and Express

21
00:01:43,820 --> 00:01:48,585
admite la entrega de los datos requeridos por el front-end.

22
00:01:48,585 --> 00:01:51,800
También cómo la API REST,

23
00:01:51,800 --> 00:01:55,310
que se desarrolla en este curso será útil para apoyar

24
00:01:55,310 --> 00:02:00,484
el front-end de toda nuestra aplicación.

25
00:02:00,484 --> 00:02:03,150
Ahora, antes de embarcarnos en esta historia,

26
00:02:03,150 --> 00:02:09,860
quisiera hacer hincapié en que el desarrollo y el diseño web se pueden ver desde dos perspectivas.

27
00:02:09,860 --> 00:02:13,340
Primero, por supuesto, el aspecto de

28
00:02:13,340 --> 00:02:18,295
diseño del diseño y desarrollo donde estamos mirando el diseño UI/UX,

29
00:02:18,295 --> 00:02:21,190
diseño visual, prototipado, colores,

30
00:02:21,190 --> 00:02:23,510
animación y gráficos, etc.

31
00:02:23,510 --> 00:02:26,385
Esto está más allá del alcance de este curso.

32
00:02:26,385 --> 00:02:34,525
En este curso, estamos buscando desarrollar habilidades hardcore para el diseño real,

33
00:02:34,525 --> 00:02:42,340
implementación y desarrollo de sus publicaciones, incluyendo la aplicación del lado del servidor.

34
00:02:42,340 --> 00:02:44,360
En este curso, nos estamos concentrando en

35
00:02:44,360 --> 00:02:49,310
el desarrollo del lado del servidor usando NodeJS, Express y MongoDB.

36
00:02:49,310 --> 00:02:53,030
Esta es una imagen que hemos estado viendo a través de los cursos de

37
00:02:53,030 --> 00:02:55,370
esta especialización donde

38
00:02:55,370 --> 00:02:58,690
delineo la diferencia entre el front-end y el backend. Por

39
00:02:58,690 --> 00:03:01,600
lo tanto, en este curso nos estamos moviendo hacia el back-end,

40
00:03:01,600 --> 00:03:09,745
la lógica empresarial y la capa de acceso a datos de toda esta imagen de pila completa.

41
00:03:09,745 --> 00:03:15,040
Entonces, habiendo entendido en qué se está concentrando este curso,

42
00:03:15,040 --> 00:03:18,745
veamos la estructura real de este curso.

43
00:03:18,745 --> 00:03:25,925
Este curso cubre los módulos NodeJS y Node como se explicó anteriormente.

44
00:03:25,925 --> 00:03:31,775
También veremos el marco Express para el desarrollo de aplicaciones del lado del servidor, de

45
00:03:31,775 --> 00:03:35,100
nuevo basado en NodeJS.

46
00:03:35,100 --> 00:03:41,790
Veremos MongoDB como la capa persistente en toda nuestra pila completa,

47
00:03:41,790 --> 00:03:48,375
y veremos cómo MongoDB soporta el almacenamiento de datos en forma de documentos.

48
00:03:48,375 --> 00:03:52,430
También veremos el backend como un servicio y veremos

49
00:03:52,430 --> 00:03:56,490
algunos ejemplos de backends preempaquetados

50
00:03:56,490 --> 00:04:04,730
que nos permitirán configurar rápidamente el lado del servidor para toda nuestra historia de pila completa.

51
00:04:04,730 --> 00:04:12,455
Dicho esto, veamos brevemente la estructura de los cuatro módulos de este curso.

52
00:04:12,455 --> 00:04:17,560
Cada módulo corresponde a una semana de trabajo para este curso.

53
00:04:17,560 --> 00:04:19,005
En el primer módulo,

54
00:04:19,005 --> 00:04:22,830
veremos la vista de imagen grande del desarrollo web de pila completa.

55
00:04:22,830 --> 00:04:25,435
Entonces, en caso de que no conozcas a Git,

56
00:04:25,435 --> 00:04:28,385
te daré una rápida introducción a Git.

57
00:04:28,385 --> 00:04:29,750
Si ya conoce a Git,

58
00:04:29,750 --> 00:04:35,380
puede omitir esto y luego continuar con la introducción a Node.js y NPM.

59
00:04:35,380 --> 00:04:38,900
Dónde veremos el propósito de Node.js y cómo

60
00:04:38,900 --> 00:04:43,460
este tiempo de ejecución nos ayuda a desarrollar aplicaciones del lado del servidor.

61
00:04:43,460 --> 00:04:48,525
Luego veremos los módulos de nodo y cómo están estructurados y cómo son útiles,

62
00:04:48,525 --> 00:04:50,680
los diferentes tipos de módulos de nodo.

63
00:04:50,680 --> 00:04:56,630
Entonces esto nos llevará a examinar realmente el nodo y cómo podemos andamiar

64
00:04:56,630 --> 00:05:03,270
un lado del servidor muy simple usando el módulo central HTTP del nodo.

65
00:05:03,270 --> 00:05:06,949
Luego, pasaremos a examinar el marco expreso

66
00:05:06,949 --> 00:05:12,775
y aprenderemos cómo andamiar una aplicación del lado del servidor.

67
00:05:12,775 --> 00:05:18,545
Entonces esto te llevará hasta la primera asignación de este curso.

68
00:05:18,545 --> 00:05:22,340
El segundo módulo se concentra principalmente en

69
00:05:22,340 --> 00:05:26,570
el lado del almacenamiento de datos de la historia, en particular MongoDB.

70
00:05:26,570 --> 00:05:30,800
Vamos a ver rápidamente cómo podemos usar el generador express para

71
00:05:30,800 --> 00:05:36,010
andamiar rápidamente un servidor basado en API REST.

72
00:05:36,010 --> 00:05:38,670
Luego pasaremos a examinar MongoDB,

73
00:05:38,670 --> 00:05:41,900
entenderemos qué es MongoDB y cómo soporta

74
00:05:41,900 --> 00:05:45,415
la recuperación de almacenamiento y manipulación de datos.

75
00:05:45,415 --> 00:05:51,780
Vamos a ver cómo se puede acceder a MongoDB desde nuestra aplicación de nodo.

76
00:05:51,780 --> 00:05:56,090
Esto es esencial porque desde nuestra aplicación expresa,

77
00:05:56,090 --> 00:06:02,165
estaremos accediendo al MongoDB para almacenar y recuperar datos.

78
00:06:02,165 --> 00:06:06,530
Luego veremos el modelo de datos de objetos Mongoose,

79
00:06:06,530 --> 00:06:10,430
y entenderemos cómo Mangoose nos permite definir el esquema

80
00:06:10,430 --> 00:06:15,170
y el modelo para estructurar nuestras aplicaciones.

81
00:06:15,170 --> 00:06:22,120
Luego veremos cómo vamos a andamiar un servidor API REST completo con

82
00:06:22,120 --> 00:06:25,280
Express y también poder interactuar con

83
00:06:25,280 --> 00:06:29,270
el servidor MongoDB desde nuestra aplicación express.

84
00:06:29,270 --> 00:06:33,735
Esto debería llevarte hasta la segunda asignación en este curso.

85
00:06:33,735 --> 00:06:38,555
El tercer módulo se concentra principalmente en la autenticación de usuarios.

86
00:06:38,555 --> 00:06:42,830
Cómo podemos permitir que los usuarios se registren,

87
00:06:42,830 --> 00:06:46,850
autenticarse y luego restringir el acceso a ciertas operaciones

88
00:06:46,850 --> 00:06:50,990
solo a usuarios registrados o autenticados o mirar

89
00:06:50,990 --> 00:06:54,950
diferentes categorías de usuarios que pueden realizar diferentes tipos de

90
00:06:54,950 --> 00:06:59,875
operaciones en el lado del servidor a través de ese lado del cliente aplicación.

91
00:06:59,875 --> 00:07:03,140
Vamos a ver la autenticación básica, que es

92
00:07:03,140 --> 00:07:06,910
una forma muy simple de autenticar su lado cliente.

93
00:07:06,910 --> 00:07:13,325
Pasaremos a ver las cookies y cómo se pueden utilizar las cookies para la autenticación del usuario.

94
00:07:13,325 --> 00:07:19,690
A continuación, también mire las sesiones expresas de nuevo basadas en cookies firmadas.

95
00:07:19,690 --> 00:07:23,945
También veremos la autenticación de usuarios con el módulo de pasaporte.

96
00:07:23,945 --> 00:07:27,260
El módulo de pasaporte consolida y proporciona

97
00:07:27,260 --> 00:07:33,695
una forma completa de proporcionar varias formas de hacer la autenticación de usuarios.

98
00:07:33,695 --> 00:07:41,125
En particular, nos centraremos en la autenticación local utilizando el pasaporte primero.

99
00:07:41,125 --> 00:07:48,260
Vamos a ver la población de mangosta y cómo podemos incluir partes de

100
00:07:48,260 --> 00:07:52,400
un documento en otro documento y luego llenar automáticamente

101
00:07:52,400 --> 00:07:56,780
esta información en un documento antes de entregarla al usuario.

102
00:07:56,780 --> 00:08:02,515
Esto debería llevarte hasta la tercera asignación de este curso.

103
00:08:02,515 --> 00:08:09,470
El módulo final se concentra en terminar con la comprensión de cómo

104
00:08:09,470 --> 00:08:16,240
desarrollamos una aplicación del lado del servidor y también revisamos rápidamente el backend como servicio.

105
00:08:16,240 --> 00:08:22,925
Por lo tanto, en este módulo veremos la comunicación segura usando HTTPS.

106
00:08:22,925 --> 00:08:26,600
Revisaré brevemente la criptografía y

107
00:08:26,600 --> 00:08:30,965
la seguridad en el contexto de cómo es útil configurar un servidor HTTPS.

108
00:08:30,965 --> 00:08:36,220
Vamos a ver cómo podemos subir archivos usando un módulo Node.

109
00:08:36,220 --> 00:08:40,715
También analizaremos el uso compartido de recursos de origen cruzado o los costos.

110
00:08:40,715 --> 00:08:44,370
¿ Qué es? ¿Por qué deberíamos ser conscientes de ello?

111
00:08:44,370 --> 00:08:49,425
¿ Cómo podemos configurar nuestro servidor express para soportar los costos?

112
00:08:49,425 --> 00:08:53,390
Luego, veremos la

113
00:08:53,390 --> 00:08:59,240
autenticación OAuth y de terceros y cómo podemos usar OAuth para hacer autenticación de usuario.

114
00:08:59,240 --> 00:09:05,440
En particular, veremos un ejemplo de uso de Facebook para autenticar a nuestros usuarios.

115
00:09:05,440 --> 00:09:09,135
Por último, revise el back-end como servicio.

116
00:09:09,135 --> 00:09:13,705
Eso debería llevarte todo el camino a la tarea final en este curso.

117
00:09:13,705 --> 00:09:20,555
Espero que se divierta mucho pasando por los diversos módulos de este curso y desarrollar

118
00:09:20,555 --> 00:09:28,735
una fuerte comprensión del desarrollo del lado del servidor usando Node, Express y MongoDB.

119
00:09:28,735 --> 00:09:31,415
Por supuesto, estaríamos cubriendo en

120
00:09:31,415 --> 00:09:35,875
una medida razonable para que podamos empezar a funcionar rápidamente,

121
00:09:35,875 --> 00:09:40,280
pero hay más problemas que usted puede aprender más allá de este curso.

122
00:09:40,280 --> 00:09:45,785
Por lo tanto, le animaría encarecidamente a seguir aprendiendo

123
00:09:45,785 --> 00:09:50,330
tanto sobre el desarrollo del lado del servidor como sobre el desarrollo front-end que

124
00:09:50,330 --> 00:09:54,960
ha visto en los cursos anteriores de esta especialización.

125
00:09:54,960 --> 00:09:57,920
Les deseo buena suerte al completar este curso,

126
00:09:57,920 --> 00:10:00,650
y espero que disfruten de su viaje a través de

127
00:10:00,650 --> 00:10:04,880
los diversos temas que tratamos en este curso.