1
00:00:00,300 --> 00:00:05,939
All right, and before we install node, let's quickly cover some major differences between browser,

2
00:00:05,939 --> 00:00:07,590
JavaScript and energy.

3
00:00:08,280 --> 00:00:13,240
So essentially how no apps are different from the browser JavaScript apps.

4
00:00:13,860 --> 00:00:15,330
And let's start with the biggest one.

5
00:00:15,690 --> 00:00:19,590
When working on no just app, you have no access.

6
00:00:19,620 --> 00:00:24,480
Let me repeat no access to browser APIs since.

7
00:00:24,480 --> 00:00:26,610
Well, they don't simply exist.

8
00:00:26,610 --> 00:00:28,170
And no, there is no browser.

9
00:00:28,530 --> 00:00:31,950
So there's no dom, there's no geolocation, no fetch.

10
00:00:32,220 --> 00:00:39,180
And all the other cool browser goodies is the only browser apps that are interactive.

11
00:00:39,390 --> 00:00:43,800
For example, user clicks the button or toggles the knife and that sort of thing.

12
00:00:44,220 --> 00:00:52,010
With node, we build server side apps and I know it's hard to picture that right now, but are not.

13
00:00:52,020 --> 00:00:57,930
Apps will only consist of pure logic without the graphical interface.

14
00:00:58,290 --> 00:01:05,120
On that note, you know how in browser apps we use a bunch of cool things available on the window object.

15
00:01:05,880 --> 00:01:10,170
Yeah, sorry to break it to you, but that's also not available in node.

16
00:01:10,770 --> 00:01:15,840
So at no point in the course will write document that query selector.

17
00:01:16,110 --> 00:01:16,530
All right.

18
00:01:16,890 --> 00:01:23,490
And once we have covered things that node just does not have, let's switch gears and see some of the

19
00:01:23,490 --> 00:01:25,220
goodies that node has to offer.

20
00:01:25,620 --> 00:01:33,330
For example, unlike browser, we can access filesystem info about our operating system, respond to

21
00:01:33,330 --> 00:01:35,650
network quests just to name a few.

22
00:01:36,090 --> 00:01:41,040
Also, another major benefit of note is the fact that it's based on versions.

23
00:01:41,520 --> 00:01:50,070
So unlike browser apps, which depend on the user's browser, our notat depends only on August version

24
00:01:50,070 --> 00:01:50,740
it was built in.

25
00:01:51,270 --> 00:02:00,150
So in other words, if we build a browser app and if our users browser does not support a specific feature,

26
00:02:00,540 --> 00:02:03,060
it is our responsibility to fix it.

27
00:02:03,480 --> 00:02:06,570
Otherwise, our app might have bugs, correct?

28
00:02:06,990 --> 00:02:13,550
But when we're done building our node up, there's no rule that we have to upgrade to a new or no just

29
00:02:13,560 --> 00:02:16,110
version and possibly break our app.

30
00:02:16,710 --> 00:02:23,220
We simply can't keep running our node up in the version it was built in and without any worries, go

31
00:02:23,220 --> 00:02:24,090
on about our day.

32
00:02:24,600 --> 00:02:30,930
Lastly, unlike browsers where modules are optional in node, yes, you have access to modules by default.

33
00:02:31,760 --> 00:02:38,360
And it's hard to imagine a note up where you're not going to use them as a quick side note under the

34
00:02:38,360 --> 00:02:42,310
hood, no JSC uses Commandeers library for the modules.

35
00:02:42,680 --> 00:02:49,940
And while the general idea is exactly the same as for the six modules that we use in the browser, syntax

36
00:02:49,940 --> 00:02:51,250
is a bit different.

