﻿1
00:00:00,762 --> 00:00:02,250
‫Narrateur : Alors

2
00:00:02,250 --> 00:00:04,410
‫maintenant que vous avez une bonne

3
00:00:04,410 --> 00:00:06,290
‫vue d'ensemble du fonctionnement du

4
00:00:06,290 --> 00:00:08,913
‫Web dans les coulisses, apprenons ce qu'est réellement

5
00:00:08,913 --> 00:00:11,796
‫le développement Web back-end et comment il se

6
00:00:11,796 --> 00:00:14,415
‫compare au développement front-end, car il s'agit

7
00:00:14,415 --> 00:00:17,666
‫d'une distinction très importante dans le Web. monde du développement.

8
00:00:17,666 --> 00:00:20,330
‫Ainsi, afin de faire la distinction entre le

9
00:00:20,330 --> 00:00:21,730
‫front-end et le

10
00:00:21,730 --> 00:00:23,980
‫back-end d'un site Web et du

11
00:00:23,980 --> 00:00:25,619
‫développement Web en général,

12
00:00:25,619 --> 00:00:27,767
‫nous considérons toujours la même architecture

13
00:00:27,767 --> 00:00:29,950
‫client-serveur dont nous avons parlé précédemment.

14
00:00:29,950 --> 00:00:32,269
‫Donc, en termes généraux, le développement

15
00:00:32,269 --> 00:00:35,830
‫front-end concerne tout ce qui se passe dans le navigateur Web.

16
00:00:35,830 --> 00:00:38,010
‫Il s'agit donc de concevoir et

17
00:00:38,010 --> 00:00:39,940
‫de construire le site Web final

18
00:00:39,940 --> 00:00:42,371
‫qui sera visible par l'utilisateur, et donc

19
00:00:42,371 --> 00:00:44,123
‫le nom du front-end.

20
00:00:44,960 --> 00:00:46,188
‫Le développeur

21
00:00:46,188 --> 00:00:50,024
‫front-end utilise les technologies de base : HTML, CSS

22
00:00:50,024 --> 00:00:54,028
‫et JavaScript, qui forment ensemble la pile technologique front-end.

23
00:00:54,028 --> 00:00:56,510
‫Maintenant, de nombreux développeurs front-end modernes

24
00:00:56,510 --> 00:00:58,660
‫ajoutent plus de choses à

25
00:00:58,660 --> 00:01:03,010
‫la pile frontale comme React ou Angular ou Redux ou GraphQL ou

26
00:01:03,010 --> 00:01:05,715
‫tout ce qui est cool de nos jours.

27
00:01:05,715 --> 00:01:09,150
‫Donc, ces technologies facilitent le développement front-end et toutes

28
00:01:09,150 --> 00:01:10,950
‫ces technologies ensemble qu'un

29
00:01:10,950 --> 00:01:12,930
‫développeur ou une équipe décide

30
00:01:12,930 --> 00:01:15,090
‫d'utiliser sur le front-end, est-ce que

31
00:01:15,090 --> 00:01:17,169
‫leur pile front-end, d'accord ?

32
00:01:17,169 --> 00:01:19,170
‫Et vous connaissez probablement déjà la plupart de

33
00:01:19,170 --> 00:01:21,320
‫ces choses de toute façon, mais je veux quand

34
00:01:21,320 --> 00:01:24,070
‫même vous donner un bref aperçu de la façon dont tout

35
00:01:24,070 --> 00:01:25,931
‫s'intègre dans le tableau d'ensemble ici.

36
00:01:25,931 --> 00:01:29,605
‫Très bien, et maintenant passons au back-end.

37
00:01:29,605 --> 00:01:31,890
‫Cette partie du développement Web concerne tout

38
00:01:31,890 --> 00:01:34,313
‫ce qui se passe sur le serveur

39
00:01:34,313 --> 00:01:36,350
‫Web, donc tout ce qui est

40
00:01:36,350 --> 00:01:37,912
‫invisible pour l'utilisateur

41
00:01:37,912 --> 00:01:40,768
‫final et donc le nom du back-end, d'accord ?

42
00:01:40,768 --> 00:01:43,624
‫Et puisque nous parlons maintenant du

43
00:01:43,624 --> 00:01:47,800
‫site serveur, définissons en fait ce qu'est réellement un serveur.

44
00:01:47,800 --> 00:01:50,745
‫Eh bien, un serveur de base n'est

45
00:01:50,745 --> 00:01:52,880
‫en réalité qu'un ordinateur

46
00:01:52,880 --> 00:01:55,990
‫connecté à Internet qui, tout d'abord, stocke les

47
00:01:55,990 --> 00:01:58,670
‫fichiers d'un site Web comme HTML,

48
00:01:58,670 --> 00:02:01,340
‫CSS et images, et deuxièmement, exécute

49
00:02:01,340 --> 00:02:04,073
‫un serveur HTTP capable de comprendre

50
00:02:04,073 --> 00:02:07,600
‫les URL, les requêtes et également de fournir réponses.

51
00:02:07,600 --> 00:02:10,167
‫Donc, ce logiciel de serveur

52
00:02:10,167 --> 00:02:13,480
‫HTTP est ce qui communique réellement avec le navigateur

53
00:02:13,480 --> 00:02:16,220
‫à l'aide de requêtes et de réponses.

54
00:02:16,220 --> 00:02:18,230
‫Par conséquent, c'est comme le pont

55
00:02:18,230 --> 00:02:20,160
‫entre le front-end et

56
00:02:20,160 --> 00:02:23,140
‫le back-end d'un site Web ou d'une application Web.

57
00:02:23,140 --> 00:02:25,430
‫Maintenant, un simple serveur Web comme celui

58
00:02:25,430 --> 00:02:28,275
‫que je viens de décrire s'appelle un serveur statique,

59
00:02:28,275 --> 00:02:30,530
‫car tout ce qu'il peut

60
00:02:30,530 --> 00:02:34,660
‫vraiment faire est de servir des fichiers statiques au client via HTTP.

61
00:02:34,660 --> 00:02:37,293
‫Si vous avez juste besoin d'héberger un site Web simple, alors

62
00:02:37,293 --> 00:02:39,570
‫c'est vraiment tout ce dont vous avez besoin.

63
00:02:39,570 --> 00:02:41,900
‫Mais si vous voulez passer au niveau supérieur

64
00:02:41,900 --> 00:02:43,950
‫et créer des applications Web dynamiques qui

65
00:02:43,950 --> 00:02:46,365
‫communiquent avec des bases de données et toutes ces

66
00:02:46,365 --> 00:02:49,720
‫bonnes choses, nous utilisons un serveur qui est également capable d'exécuter des

67
00:02:49,720 --> 00:02:51,548
‫applications OU dynamiques, tout comme

68
00:02:51,548 --> 00:02:53,520
‫le code que nous avons écrit

69
00:02:53,520 --> 00:02:55,779
‫et exécuté dans le section d'introduction du cours.

70
00:02:55,779 --> 00:02:58,800
‫Cela s'appelle alors un serveur dynamique, où nous avons

71
00:02:58,800 --> 00:03:00,500
‫une application OR en

72
00:03:00,500 --> 00:03:02,610
‫cours d'exécution, un serveur HTTP et,

73
00:03:02,610 --> 00:03:05,380
‫bien sûr, les fichiers qui se parlent tous.

74
00:03:05,380 --> 00:03:07,400
‫Et dans certains cas, c'est tout ce

75
00:03:07,400 --> 00:03:09,323
‫dont nous avons besoin pour les

76
00:03:09,323 --> 00:03:12,310
‫applications OR, mais généralement, lorsque nous créons des sites Web ou

77
00:03:12,310 --> 00:03:14,610
‫des applications dynamiques, nous utilisons également une base de

78
00:03:14,610 --> 00:03:17,379
‫données à laquelle nous pouvons accéder directement depuis nos applications.

79
00:03:17,379 --> 00:03:19,342
‫Soit dit en passant, si le

80
00:03:19,342 --> 00:03:21,820
‫terme sites Web ou applications statiques et dynamiques est

81
00:03:21,820 --> 00:03:23,894
‫un peu déroutant pour vous, pas de problème.

82
00:03:23,894 --> 00:03:26,487
‫Nous en parlerons dans la prochaine vidéo.

83
00:03:26,487 --> 00:03:28,843
‫Quoi qu'il en soit, nous pouvons utiliser la base

84
00:03:28,843 --> 00:03:32,004
‫de données pour stocker des éléments tels que des utilisateurs ou des données

85
00:03:32,004 --> 00:03:34,778
‫d'application ou du texte pour remplir un modèle de site Web.

86
00:03:34,778 --> 00:03:38,160
‫Dans toute application sérieuse, il y aura toujours une base

87
00:03:38,160 --> 00:03:40,370
‫de données et notre code

88
00:03:40,370 --> 00:03:42,676
‫back-end communiquera avec cette base de données.

89
00:03:42,676 --> 00:03:45,090
‫Ainsi, certaines choses habituelles qui sont gérées

90
00:03:45,090 --> 00:03:47,200
‫côté back-end ou côté serveur, comme

91
00:03:47,200 --> 00:03:50,088
‫nous pouvons également l'appeler pour créer des profils d'utilisateurs, effectuer

92
00:03:50,088 --> 00:03:53,406
‫des connexions, envoyer des e-mails, gérer des paiements, récupérer et envoyer

93
00:03:53,406 --> 00:03:56,810
‫des données de demande d'une base de données à un client

94
00:03:56,810 --> 00:03:59,850
‫, manipuler des données dans la base de données, remplir

95
00:03:59,850 --> 00:04:02,517
‫des modèles de sites Web et bien plus encore.

96
00:04:02,517 --> 00:04:05,020
‫Et nous ferons beaucoup de ces choses passionnantes tout au

97
00:04:05,020 --> 00:04:07,233
‫long du cours, en fait toutes vraiment.

98
00:04:07,233 --> 00:04:10,800
‫Maintenant, à propos de la technologie, comme vous pouvez le

99
00:04:10,800 --> 00:04:14,235
‫deviner, nous allons utiliser NodeJS comme serveur Web dynamique

100
00:04:14,235 --> 00:04:17,400
‫et MongoDB comme base de données, donc des données

101
00:04:17,400 --> 00:04:19,294
‫ou une pile back-end.

102
00:04:19,294 --> 00:04:22,670
‫Mais il existe tellement de technologies et de piles de

103
00:04:22,670 --> 00:04:25,040
‫back-end différentes disponibles pour le back-end.

104
00:04:25,040 --> 00:04:28,025
‫Des choses comme PHP avec une base de données

105
00:04:28,025 --> 00:04:31,123
‫MySQL ou Python avec une base de données PostgreSQL ou

106
00:04:31,123 --> 00:04:33,750
‫certaines personnes utilisent Ruby on Rails peut-être même

107
00:04:33,750 --> 00:04:36,120
‫avec une autre base de données.

108
00:04:36,120 --> 00:04:38,430
‫Mais, puisque vous voulez bien

109
00:04:38,430 --> 00:04:40,980
‫apprendre NodeJS, nous allons utiliser exactement cela.

110
00:04:40,980 --> 00:04:43,230
‫Et la base de données la plus

111
00:04:43,230 --> 00:04:46,070
‫populaire utilisée avec Node est, sans aucun doute, MongoDB.

112
00:04:46,070 --> 00:04:49,007
‫Et, donc, c'est notre choix pour une pile back-end.

113
00:04:49,007 --> 00:04:52,237
‫Maintenant, vous avez peut-être déjà entendu le terme pile

114
00:04:52,237 --> 00:04:54,180
‫complète, et c'est simplement

115
00:04:54,180 --> 00:04:56,710
‫le front-end et les piles back-end ensemble.

116
00:04:56,710 --> 00:04:59,180
‫Ainsi, le développeur qui fait à la fois

117
00:04:59,180 --> 00:05:01,209
‫du développement front-end et back-end peut

118
00:05:01,209 --> 00:05:04,117
‫s'appeler un développeur full stack, mais ces développeurs se

119
00:05:04,117 --> 00:05:06,410
‫font de plus en plus rares, surtout

120
00:05:06,410 --> 00:05:08,150
‫parce que le front-end

121
00:05:08,150 --> 00:05:11,110
‫devient de plus en plus complexe de nos jours.

122
00:05:11,110 --> 00:05:14,630
‫Enfin, une autre chose que je voulais mentionner rapidement est que,

123
00:05:14,630 --> 00:05:17,150
‫comme vous pouvez le voir, nous allons utiliser

124
00:05:17,150 --> 00:05:19,400
‫Node appliqué au développement Web back-end

125
00:05:19,400 --> 00:05:21,930
‫et non quelque chose comme la programmation matérielle.

126
00:05:21,930 --> 00:05:24,670
‫Ainsi, vous pouvez techniquement utiliser Node pour des tâches

127
00:05:24,670 --> 00:05:27,240
‫telles que des drones volants, des robots de

128
00:05:27,240 --> 00:05:30,300
‫programmation ou le développement de logiciels pour les appareils IFT.

129
00:05:30,300 --> 00:05:32,610
‫Mais cela sort du cadre de ce cours.

130
00:05:32,610 --> 00:05:35,670
‫Si vous voulez programmer des appareils IFT avec Node, eh

131
00:05:35,670 --> 00:05:38,550
‫bien, ce cours va toujours vous être utile, ce n'est

132
00:05:38,550 --> 00:05:40,650
‫tout simplement pas l'objectif des projets que

133
00:05:40,650 --> 00:05:42,528
‫nous allons construire, d'accord ?

134
00:05:42,528 --> 00:05:46,100
‫Très bien et je suppose que cela résume la différence entre le

135
00:05:46,100 --> 00:05:48,425
‫côté front-end et le côté back-end du

136
00:05:48,425 --> 00:05:50,734
‫développement Web, de sorte qu'à l'avenir, vous

137
00:05:50,734 --> 00:05:52,970
‫avez une bonne idée des domaines

138
00:05:52,970 --> 00:05:55,753
‫où NodeDS est réellement utilisé dans le monde réel.

