1
00:00:00,000 --> 00:00:05,001
[МУЗЫКА]

2
00:00:05,001 --> 00:00:10,234
>> JavaScript, который был разработан как язык сценариев для

3
00:00:10,234 --> 00:00:15,395
браузера, видел развертывание далеко за пределами браузера.

4
00:00:15,395 --> 00:00:20,760
Node.js сыграл значительную роль в этом переходе

5
00:00:20,760 --> 00:00:25,840
JavaScript от браузера к рабочему столу.

6
00:00:25,840 --> 00:00:31,526
Давайте теперь немного узнать о том, что такое Node.js и какую роль играет NPM,

7
00:00:31,526 --> 00:00:36,138
диспетчер пакетов узлов, в контексте Node.js.

8
00:00:38,042 --> 00:00:40,786
Node.js, как я уже упоминал ранее,

9
00:00:40,786 --> 00:00:45,930
позволяет нам принести силу JavaScript на рабочий стол.

10
00:00:45,930 --> 00:00:50,170
Узел js основан на

11
00:00:50,170 --> 00:00:54,070
движке времени выполнения JavaScript, который был построен для браузера Chrome.

12
00:00:54,070 --> 00:00:59,380
Таким образом, Chrome V8 JavaScript Engine был портирован из браузера для запуска

13
00:00:59,380 --> 00:01:03,875
на рабочем столе и поддержки выполнения программ JavaScript на рабочем столе.

14
00:01:03,875 --> 00:01:07,447
Node.js построен вокруг управляемой событиями,

15
00:01:07,447 --> 00:01:13,275
неблокирующей модели ввода-вывода, что делает его очень эффективным для запуска

16
00:01:13,275 --> 00:01:18,737
программ JavaScript на рабочем столе, асинхронный JavaScript на рабочем столе.

17
00:01:18,737 --> 00:01:22,580
Теперь это место, где Node находит свой истинный польский.

18
00:01:23,850 --> 00:01:31,380
Прямо сейчас мы рассмотрим Node.js в контексте его использования в качестве среды выполнения JavaScript.

19
00:01:31,380 --> 00:01:36,958
Мы

20
00:01:36,958 --> 00:01:42,425
подробно рассмотрим серверное приложение Node.js в последнем курсе этой специализации.

21
00:01:43,575 --> 00:01:47,438
Это типичная архитектура Node.js.

22
00:01:47,438 --> 00:01:52,635
Таким образом, Chrome V8 движок является нижним слоем вместе с

23
00:01:52,635 --> 00:01:57,690
libuv, формирует слой, который взаимодействует с

24
00:01:57,690 --> 00:02:03,060
базовой компьютерной системой для поддержки выполнения программ JavaScript. Кроме

25
00:02:03,060 --> 00:02:06,375
того, у нас есть Node Bindings, который также реализован в C ++.

26
00:02:06,375 --> 00:02:11,005
На верхнем уровне у вас есть Node.js и

27
00:02:11,005 --> 00:02:15,125
Стандартная библиотека, которые все реализованы в JavaScript, и это то, что

28
00:02:15,125 --> 00:02:19,865
позволяет нам писать программы JavaScript и запускать их на рабочем столе.

29
00:02:21,335 --> 00:02:26,035
Естественно, возможность запуска программ JavaScript на рабочем столе

30
00:02:26,035 --> 00:02:30,910
вдохновляет сообщество веб-разработчиков на изучение с помощью

31
00:02:30,910 --> 00:02:36,180
JavaScript для разработки значительного количества инструментов веб-разработки.

32
00:02:36,180 --> 00:02:40,992
Такие инструменты, как Bower, Grunt, Gulp, Yeoman и многие другие.

33
00:02:40,992 --> 00:02:45,280
Некоторые из них мы рассмотрим в более поздней части этого курса и

34
00:02:45,280 --> 00:02:47,600
в последующих курсах.

35
00:02:47,600 --> 00:02:50,320
Последний курс в специализации, как я уже упоминал,

36
00:02:50,320 --> 00:02:54,090
смотрит на использование Node.js на стороне сервера.

37
00:02:54,090 --> 00:02:57,330
Как мы можем разработать веб-сервер, бизнес-логику,

38
00:02:57,330 --> 00:03:02,520
все реализовано в JavaScript на стороне сервера.

39
00:03:02,520 --> 00:03:06,490
Вместе с Node вы часто слышите, как люди говорят

40
00:03:06,490 --> 00:03:09,460
о диспетчере пакетов Node или NPM.

41
00:03:09,460 --> 00:03:14,060
При установке узла на компьютере NPM автоматически устанавливается.

42
00:03:14,060 --> 00:03:20,265
Менеджер пакетов Node является менеджером для экосистемы Node.

43
00:03:20,265 --> 00:03:22,540
Он управляет всеми модулями и

44
00:03:22,540 --> 00:03:28,350
пакетами Node, которые были опубликованы многими различными пользователями.

45
00:03:28,350 --> 00:03:34,110
Типичный пакет Node состоит из файлов JavaScript вместе

46
00:03:34,110 --> 00:03:41,580
с файлом package.json, который является файлом манифеста для этого модуля Node.

47
00:03:41,580 --> 00:03:46,384
Мы рассмотрим, как мы можем использовать файл package.json

48
00:03:46,384 --> 00:03:50,642
более подробно в последующих упражнениях.

49
00:03:50,642 --> 00:03:56,659
>> [МУЗЫКА]