1
00:00:00,000 --> 00:00:03,112
[MÚSICA]
Tradução: Marisa Hart / Helena Lucas Rosa
Revisão: Julia R. Yuri

2
00:00:03,112 --> 00:00:06,571
O que é Desenvolvimento Web Full Stack?

3
00:00:06,571 --> 00:00:13,028
Deixe-me esclarecer para você alguns termos para que nós comecemos com um entendimento comum

4
00:00:13,028 --> 00:00:18,781
do desenvolvimento web full stack nesta especialização.

5
00:00:18,781 --> 00:00:22,640
Nós sempre ouvimos as pessoas falarem sobre front end e back end

6
00:00:22,640 --> 00:00:27,362
O front end é onde nós entregamos conteúdo para o usuário,

7
00:00:27,362 --> 00:00:32,363
tipicamente em um navegador, onde o usuário acessa a informação.

8
00:00:32,363 --> 00:00:36,815
E isto é onde nós usamos tecnologias como HTML,

9
00:00:36,815 --> 00:00:41,822
CSS e Javascript para renderizar conteúdo para o usuário.

10
00:00:41,822 --> 00:00:46,963
Esta entrega de informação é suportada por trás

11
00:00:46,963 --> 00:00:52,615
dos panos por um suporte de back end, que é tipicamente

12
00:00:52,615 --> 00:00:59,039
implementado, hoje em dia, usando tecnologias como PHP, Java,

13
00:00:59,039 --> 00:01:03,163
ASP.NET, Ruby, Python ou NodeJS.

14
00:01:03,163 --> 00:01:07,303
Nós normalmente ouvimos as pessoas falarem sobre arquitetura de três camadas para

15
00:01:07,303 --> 00:01:08,451
o desenvolvimento web.

16
00:01:08,451 --> 00:01:12,965
Nesta abordagem, a aplicação web inteira é organizada em três

17
00:01:12,965 --> 00:01:14,320
diferentes camadas.

18
00:01:14,320 --> 00:01:16,073
A camada de apresentação,

19
00:01:16,073 --> 00:01:20,462
que trata de entregar as informações para o usuário.

20
00:01:20,462 --> 00:01:25,053
Então, são as preocupações relacionadas com a interface com o usuário

21
00:01:25,053 --> 00:01:26,896
que são tratadas na camada de apresentação.

22
00:01:26,896 --> 00:01:32,181
A camada de lógica de negócios, por outro lado, se preocupa mais com os dados,

23
00:01:32,181 --> 00:01:36,145
a validação de dados, o processamento de conteúdo dinâmico, e

24
00:01:36,145 --> 00:01:39,582
a geração do conteúdo a ser entregue ao usuário.

25
00:01:39,582 --> 00:01:44,355
Isto é apoiado por trás dos panos pela camada de persistência de dados ou

26
00:01:44,355 --> 00:01:46,012
pela camada de acesso a dados.

27
00:01:46,012 --> 00:01:52,392
Então isso é relacionado a como nós armazenamos e interagimos com os dados,

28
00:01:52,392 --> 00:01:59,361
tipicamente na forma de um banco de dados, e acessar esses dados através de uma API.

29
00:01:59,361 --> 00:02:04,070
Explorando ainda mais, vamos ver o que é tipicamente implementado

30
00:02:04,070 --> 00:02:08,466
no desenvolvimento web tradicional em cada uma dessas três camadas.

31
00:02:08,466 --> 00:02:12,976
A camada de lógica de negócios normalmente é implementada

32
00:02:12,976 --> 00:02:17,816
hoje em dia usando tecnologias como Ruby, Python,

33
00:02:17,816 --> 00:02:21,120
PHP, Java, C++ ou ASP.net.

34
00:02:21,120 --> 00:02:25,884
A camada de lógica de negócio está interagindo, nos bastidores,

35
00:02:25,884 --> 00:02:31,747
com os dados persistentes, geralmente armazenados em um banco de dados relacional e

36
00:02:31,747 --> 00:02:34,780
acessado pela camada de lógica de negócios.

37
00:02:34,780 --> 00:02:39,752
A camada de lógica de negócios também se preocupa com o processamento de informações

38
00:02:39,752 --> 00:02:44,510
para a apresentação, tipicamente o lado servidor atualmente.

39
00:02:44,510 --> 00:02:49,061
Assim, HTML, CSS e Javascript são gerados no lado servidor e

40
00:02:49,061 --> 00:02:52,972
então enviados para o lado cliente na forma de uma página web.

41
00:02:52,972 --> 00:02:58,863
Nesta abordagem, nós precisamos de especialistas em cada uma dessas três camadas.

42
00:02:58,863 --> 00:03:04,638
Assim, um especialista em front end tipicamente deve ter um bom conhecimento de HTML,

43
00:03:04,638 --> 00:03:06,471
CSS e JavaScript.

44
00:03:06,471 --> 00:03:11,151
O especialista de lógica de negócios seria bem versado em uma das

45
00:03:11,151 --> 00:03:16,373
tecnologias que são usadas para implementar a lógica de negócio.

46
00:03:16,373 --> 00:03:21,031
E então você teria um especialista de dados
que seria conhecedor

47
00:03:21,031 --> 00:03:24,862
das características dos sistemas de gerenciamento de banco de dados.

48
00:03:24,862 --> 00:03:29,813
Há uma tendência crescente para a utilização de uma única linguagem

49
00:03:29,813 --> 00:03:34,482
para implementar toda a pilha de camadas, sendo esta JavaScript.

50
00:03:34,482 --> 00:03:37,721
Assim você poderia implementar o front end, por

51
00:03:37,721 --> 00:03:42,541
exemplo, como uma aplicação de página única usando frameworks como o Angular.

52
00:03:42,541 --> 00:03:47,224
Você tem o lado do servidor, ou a camada de lógica de negócio sendo implementada

53
00:03:47,224 --> 00:03:52,074
utilizando tecnologias como o NodeJS, que também é dependente de JavaScript.

54
00:03:52,074 --> 00:03:56,865
E então você teria o armazenamento de dados sendo implementado usando

55
00:03:56,865 --> 00:04:02,453
tecnologias como MongoDB, que armazena dados na forma de documentos JSON.

56
00:04:02,453 --> 00:04:08,122
E o intercâmbio de informações entre o lado do servidor e

57
00:04:08,122 --> 00:04:13,908
o lado cliente é geralmente feito usando JSON como formato e

58
00:04:13,908 --> 00:04:18,533
o lado servidor suportando uma API rest.

59
00:04:18,533 --> 00:04:24,433
Nós cobriremos todas estas tecnologias como parte desta especialização.

60
00:04:24,433 --> 00:04:29,083
Assim, a medida que você caminhar através da especialização você verá que

61
00:04:29,083 --> 00:04:33,295
na camada de apresentação nós cobriremos Bootstrap 4 e

62
00:04:33,295 --> 00:04:37,173
Angular para implementar aplicações front-end.

63
00:04:37,173 --> 00:04:43,363
Em seguida, na camada de lógica de negócio nós iremos usar Node JS e módulos JS,

64
00:04:43,363 --> 00:04:48,679
e Express para implementar a camada de lógica de negócio.

65
00:04:48,679 --> 00:04:53,026
Também iremos considerar back-end como um serviço, e

66
00:04:53,026 --> 00:04:57,712
em seguida, o suporte de dados implementado usando MongoDB.

67
00:04:57,712 --> 00:05:00,616
A medida que você percorrer a especialização,

68
00:05:00,616 --> 00:05:05,544
os cursos mais vagos que você irá encontrar na especialização

69
00:05:05,544 --> 00:05:11,002
incluem o primeiro curso, que lida com frameworks de UI front end web

70
00:05:11,002 --> 00:05:18,061
Nós cobriremos Bootstrap 4 em detalhe no primeiro curso.

71
00:05:18,061 --> 00:05:25,723
Podemos também encontrar ferramentas de desenvolvimento web baseadas no ecossistema NodeJS.

72
00:05:25,723 --> 00:05:31,782
O segundo curso vai lidar com frameworks JavaScript front end,

73
00:05:31,782 --> 00:05:35,281
Em particular Angular em grande detalhe.

74
00:05:35,281 --> 00:05:40,861
No terceiro curso, vamos ver o desenvolvimento móvel híbrido

75
00:05:40,861 --> 00:05:45,823
utilizando tecnologias como o framework Ionic e Cordova.

76
00:05:45,823 --> 00:05:52,632
Vamos também considerar Nativescript como outra abordagem para

77
00:05:52,632 --> 00:05:58,673
fazer desenvolvimento móvel híbrido no quarto curso.

78
00:05:58,673 --> 00:06:03,514
O curso final nos leva para o lado servidor,

79
00:06:03,514 --> 00:06:08,973
onde veremos o desenvolvimento do lado servidor usando NodeJS,

80
00:06:08,973 --> 00:06:14,638
módulos NodeJS, Express, MongoDB e Backend como Serviço,

81
00:06:14,638 --> 00:06:18,354
em particular usando o framework loop back.

82
00:06:18,354 --> 00:06:22,953
Isto completa a especialização em Desenvolvimento Web Full Stack

83
00:06:22,953 --> 00:06:25,644
e Híbrido.

84
00:06:25,644 --> 00:06:28,959
[MÚSICA]
Tradução: Marisa Hart / Helena Lucas Rosa
Revisão: Julia R. Yuri