1
00:00:03,980 --> 00:00:11,490
Bem-vindo ao desenvolvimento do lado do servidor com NodeJS, Express e MongoDB.

2
00:00:11,490 --> 00:00:15,125
Este é o curso final da especialização.

3
00:00:15,125 --> 00:00:19,680
Neste curso, nos concentraremos principalmente no lado do servidor.

4
00:00:19,680 --> 00:00:24,425
Vamos olhar para como usamos o tempo de execução do nó para

5
00:00:24,425 --> 00:00:30,555
desenvolver camada lógica de negócios do lado do servidor usando JavaScript.

6
00:00:30,555 --> 00:00:34,515
Em seguida, vamos olhar para o framework Express que

7
00:00:34,515 --> 00:00:38,775
nos permite desenvolver rapidamente um aplicativo do lado do servidor.

8
00:00:38,775 --> 00:00:41,555
Vamos também olhar para MongoDB como

9
00:00:41,555 --> 00:00:48,400
um armazenamento de documentos para os nossos dados persistentes no banco de dados.

10
00:00:48,400 --> 00:00:51,625
Antes de embarcar neste curso,

11
00:00:51,625 --> 00:00:57,490
deixe-me enfatizar que você deve ter um bom conhecimento de trabalho de JavaScript.

12
00:00:57,490 --> 00:01:03,005
Espero que você tenha conhecimento profundo o suficiente da versão ES 5 do

13
00:01:03,005 --> 00:01:09,770
JavaScript e pelo menos familiarizado com ES 2015 mais versão do JavaScript,

14
00:01:09,770 --> 00:01:13,090
especificamente o uso de funções de seta.

15
00:01:13,090 --> 00:01:20,170
Também de preferência, você deve ter completado o módulo Angular/Reagir desta especialização.

16
00:01:20,170 --> 00:01:26,265
Para que você tenha uma compreensão da imagem a partir da perspectiva do front-end,

17
00:01:26,265 --> 00:01:30,530
você sabe que tipo de dados seriam necessários no front-end,

18
00:01:30,530 --> 00:01:35,520
a fim de construir a interface do usuário para nossa aplicação front-end.

19
00:01:35,520 --> 00:01:40,970
Esse entendimento ajuda você a habilitar para ver como

20
00:01:40,970 --> 00:01:43,820
nosso aplicativo Node e Express

21
00:01:43,820 --> 00:01:48,585
suporta a entrega dos dados exigidos pelo front-end.

22
00:01:48,585 --> 00:01:51,800
Também como a API REST,

23
00:01:51,800 --> 00:01:55,310
que é desenvolvida neste curso será útil para suportar

24
00:01:55,310 --> 00:02:00,484
o front-end de toda a nossa aplicação.

25
00:02:00,484 --> 00:02:03,150
Agora, antes de embarcarmos nesta história,

26
00:02:03,150 --> 00:02:09,860
eu enfatizaria que o desenvolvimento e o design da Web podem ser vistos a partir de duas perspectivas.

27
00:02:09,860 --> 00:02:13,340
Primeiro, é claro, o aspecto de

28
00:02:13,340 --> 00:02:18,295
design do design e desenvolvimento onde estamos olhando para UI/UX design,

29
00:02:18,295 --> 00:02:21,190
design visual, prototipagem, cores,

30
00:02:21,190 --> 00:02:23,510
animação e gráficos e assim por diante.

31
00:02:23,510 --> 00:02:26,385
Isso está além do escopo deste curso.

32
00:02:26,385 --> 00:02:34,525
Neste curso, estamos olhando para o desenvolvimento de habilidades hardcore para design real,

33
00:02:34,525 --> 00:02:42,340
implantação e desenvolvimento de suas publicações, incluindo o aplicativo do lado do servidor.

34
00:02:42,340 --> 00:02:44,360
Neste curso, estamos nos concentrando no

35
00:02:44,360 --> 00:02:49,310
desenvolvimento do lado do servidor usando NodeJS, Express e MongoDB.

36
00:02:49,310 --> 00:02:53,030
Esta é uma imagem que temos visto ao longo dos cursos

37
00:02:53,030 --> 00:02:55,370
desta especialização onde eu

38
00:02:55,370 --> 00:02:58,690
delineio a diferença entre o front-end e o backend.

39
00:02:58,690 --> 00:03:01,600
Então, neste curso estamos agora nos movendo para o backend,

40
00:03:01,600 --> 00:03:09,745
a lógica de negócios e a camada de acesso a dados de toda essa imagem de pilha completa.

41
00:03:09,745 --> 00:03:15,040
Então, tendo entendido no que este curso está se concentrando,

42
00:03:15,040 --> 00:03:18,745
vamos olhar para a estrutura real deste curso.

43
00:03:18,745 --> 00:03:25,925
Este curso abrange módulos NodeJS e Node como explicado anteriormente.

44
00:03:25,925 --> 00:03:31,775
Também analisaremos a estrutura Express para o desenvolvimento de aplicativos do lado do servidor,

45
00:03:31,775 --> 00:03:35,100
novamente com base em NodeJS.

46
00:03:35,100 --> 00:03:41,790
Vamos olhar para MongoDB como a camada persistente em toda a nossa pilha completa,

47
00:03:41,790 --> 00:03:48,375
e vamos olhar para como MongoDB suporta o armazenamento de dados na forma de documentos.

48
00:03:48,375 --> 00:03:52,430
Também analisaremos o back-end como um serviço e veremos

49
00:03:52,430 --> 00:03:56,490
alguns exemplos de

50
00:03:56,490 --> 00:04:04,730
back-ends pré-empacotados que nos permitirão configurar rapidamente o lado do servidor para toda a nossa história de pilha completa.

51
00:04:04,730 --> 00:04:12,455
Dito isto, vejamos brevemente a estrutura dos quatro módulos neste curso.

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

53
00:04:17,560 --> 00:04:19,005
No primeiro módulo,

54
00:04:19,005 --> 00:04:22,830
vamos olhar para a visão geral do desenvolvimento web de pilha completa.

55
00:04:22,830 --> 00:04:25,435
Então, no caso de não conheceres o Git,

56
00:04:25,435 --> 00:04:28,385
vou dar-te uma rápida introdução ao Git.

57
00:04:28,385 --> 00:04:29,750
Se você já conhece o Git,

58
00:04:29,750 --> 00:04:35,380
você pode ignorar isso e, em seguida, prosseguir para a introdução ao Node.js e NPM.

59
00:04:35,380 --> 00:04:38,900
Onde veremos a finalidade do Node.js e como

60
00:04:38,900 --> 00:04:43,460
esse tempo de execução nos ajuda a desenvolver aplicativos do lado do servidor.

61
00:04:43,460 --> 00:04:48,525
Então vamos olhar para módulos de nó e como eles são estruturados e como eles são úteis,

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

63
00:04:50,680 --> 00:04:56,630
Em seguida, isso vai levar-nos para realmente examinar nó e como podemos andaime para fora

64
00:04:56,630 --> 00:05:03,270
um lado do servidor muito simples usando o módulo núcleo HTTP do nó.

65
00:05:03,270 --> 00:05:06,949
Em seguida, vamos passar para examinar a estrutura expressa

66
00:05:06,949 --> 00:05:12,775
e aprender a andaimes para fora um aplicativo do lado do servidor.

67
00:05:12,775 --> 00:05:18,545
Então isso o levará até a primeira tarefa deste curso.

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

69
00:05:22,340 --> 00:05:26,570
no lado de armazenamento de dados da história, em particular MongoDB.

70
00:05:26,570 --> 00:05:30,800
Vamos analisar rapidamente como podemos usar o gerador expresso para obter

71
00:05:30,800 --> 00:05:36,010
rapidamente um servidor baseado em API REST.

72
00:05:36,010 --> 00:05:38,670
Em seguida, vamos passar para examinar MongoDB,

73
00:05:38,670 --> 00:05:41,900
entender o que MongoDB é e como ele suporta

74
00:05:41,900 --> 00:05:45,415
a recuperação de armazenamento e manipulação de dados.

75
00:05:45,415 --> 00:05:51,780
Vamos ver como MongoDB pode ser acessado a partir do nosso aplicativo nó.

76
00:05:51,780 --> 00:05:56,090
Isso é essencial porque a partir de dentro de nossa aplicação expressa,

77
00:05:56,090 --> 00:06:02,165
estaremos acessando o MongoDB a fim de armazenar e recuperar dados.

78
00:06:02,165 --> 00:06:06,530
Em seguida, vamos olhar para o modelo de dados de objeto Mangusto,

79
00:06:06,530 --> 00:06:10,430
e entender como Mangusto nos permite definir esquema

80
00:06:10,430 --> 00:06:15,170
e modelo para estruturar nossas aplicações.

81
00:06:15,170 --> 00:06:22,120
Então vamos olhar para como vamos andaime para fora um servidor API REST completo com

82
00:06:22,120 --> 00:06:25,280
Express e também ser capaz de interagir com

83
00:06:25,280 --> 00:06:29,270
o servidor MongoDB a partir de nossa aplicação expressa.

84
00:06:29,270 --> 00:06:33,735
Isso deve levá-lo até a segunda tarefa neste curso.

85
00:06:33,735 --> 00:06:38,555
O terceiro módulo concentra-se principalmente na autenticação do usuário.

86
00:06:38,555 --> 00:06:42,830
Como podemos permitir que os usuários se registrem,

87
00:06:42,830 --> 00:06:46,850
autentiquem-se e, em seguida, restringir o acesso a determinadas operações

88
00:06:46,850 --> 00:06:50,990
apenas a usuários registrados ou autenticados ou olhar para

89
00:06:50,990 --> 00:06:54,950
diferentes categorias de usuários que podem fazer diferentes tipos de

90
00:06:54,950 --> 00:06:59,875
operações no lado do servidor através desse lado do cliente aplicação.

91
00:06:59,875 --> 00:07:03,140
Vamos analisar a autenticação básica que é

92
00:07:03,140 --> 00:07:06,910
uma maneira muito simples de autenticar o lado do cliente.

93
00:07:06,910 --> 00:07:13,325
Passaremos para analisar os cookies e como os cookies podem ser usados para autenticação do usuário.

94
00:07:13,325 --> 00:07:19,690
Em seguida, observe também as sessões expressas novamente com base em cookies assinados.

95
00:07:19,690 --> 00:07:23,945
Também analisaremos a autenticação do usuário com o módulo do passaporte.

96
00:07:23,945 --> 00:07:27,260
O módulo passaporte consolida e fornece

97
00:07:27,260 --> 00:07:33,695
uma maneira abrangente de fornecer várias maneiras de fazer a autenticação do usuário.

98
00:07:33,695 --> 00:07:41,125
Em particular, vamos nos concentrar na autenticação local usando passaporte primeiro.

99
00:07:41,125 --> 00:07:48,260
Vamos analisar a população de mangustos e como podemos incluir partes de

100
00:07:48,260 --> 00:07:52,400
um documento em outro documento e, em seguida, preencher automaticamente

101
00:07:52,400 --> 00:07:56,780
essas informações em um documento antes de entregá-las ao usuário.

102
00:07:56,780 --> 00:08:02,515
Isso deve levá-lo até a terceira tarefa neste curso.

103
00:08:02,515 --> 00:08:09,470
O módulo final se concentra em terminar com a compreensão de como

104
00:08:09,470 --> 00:08:16,240
desenvolvemos um aplicativo do lado do servidor e também revisamos rapidamente o backend como um serviço.

105
00:08:16,240 --> 00:08:22,925
Então, neste módulo vamos olhar para a comunicação segura usando HTTPS.

106
00:08:22,925 --> 00:08:26,600
Analisarei brevemente a criptografia e

107
00:08:26,600 --> 00:08:30,965
a segurança no contexto de como é útil configurar um servidor HTTPS.

108
00:08:30,965 --> 00:08:36,220
Vamos ver como podemos fazer upload de arquivos usando um módulo Node.

109
00:08:36,220 --> 00:08:40,715
Também analisaremos o compartilhamento de recursos de origem cruzada ou os custos.

110
00:08:40,715 --> 00:08:44,370
O que é isso? Por que devemos estar cientes disso?

111
00:08:44,370 --> 00:08:49,425
Como podemos configurar nosso servidor expresso para suportar custos?

112
00:08:49,425 --> 00:08:53,390
Em seguida, analisaremos a

113
00:08:53,390 --> 00:08:59,240
autenticação OAuth e de terceiros e como podemos usar o OAuth para fazer a autenticação do usuário.

114
00:08:59,240 --> 00:09:05,440
Em particular, veremos um exemplo de uso do Facebook para autenticar nossos usuários.

115
00:09:05,440 --> 00:09:09,135
Finalmente, revise o back-end como um serviço.

116
00:09:09,135 --> 00:09:13,705
Isso deve levá-lo até a tarefa final neste curso.

117
00:09:13,705 --> 00:09:20,555
Espero que você se divirta muito passando pelos vários módulos neste curso e desenvolva

118
00:09:20,555 --> 00:09:28,735
uma forte compreensão do desenvolvimento do lado do servidor usando Node, Express e MongoDB.

119
00:09:28,735 --> 00:09:31,415
Claro, estaríamos cobrindo em

120
00:09:31,415 --> 00:09:35,875
uma extensão razoável para que possamos começar rapidamente a funcionar,

121
00:09:35,875 --> 00:09:40,280
mas há mais problemas que você pode aprender além deste curso.

122
00:09:40,280 --> 00:09:45,785
Então, eu recomendo fortemente que você continue aprendendo mais sobre

123
00:09:45,785 --> 00:09:50,330
o desenvolvimento do lado do servidor, bem como sobre o desenvolvimento de front-end que você já

124
00:09:50,330 --> 00:09:54,960
viu nos cursos anteriores desta especialização.

125
00:09:54,960 --> 00:09:57,920
Desejo-lhe boa sorte ao concluir este curso,

126
00:09:57,920 --> 00:10:00,650
e espero que você aproveite sua jornada através

127
00:10:00,650 --> 00:10:04,880
dos vários tópicos que abordamos neste curso.