
Node.js рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░рдирдЯрд╛рдЗрдо рд╣реИред рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ, рдФрд░ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?
Node.js рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╡рд╣ рд╕рдм рдХреБрдЫ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рдЦреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд╛рд╣рд┐рдПред

рдкрд╣рд▓реЗ, рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛ рд╕рдХрддреЗ рдереЗ, рд▓реЗрдХрд┐рди рдПрдХ рдмрд╛рд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдЗрд╕рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдпрд╛, рдФрд░ рдЕрдм рдЖрдк рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдЬреЗрдПрд╕ рдХреЛ рдПрдХ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рддреЛ рд╡рд╣рд╛рдБ Node.js.
рдЕрдм рдЖрдк рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЕрдм рдЕрдиреНрдп рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ, рдЬреИрд╕реЗ рдХрд┐ рдкрд╛рдпрдерди, рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред
рджреЛрдиреЛрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░-рдЖрдзрд╛рд░рд┐рдд рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ Node.js V8 рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рдЪрд▓рддреЗ рд╣реИрдВред рдпрд╣ рдЗрдВрдЬрди рдЖрдкрдХреЗ JS рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рддреЗрдЬ рдорд╢реАрди рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИред рдорд╢реАрди рдХреЛрдб рдПрдХ рдирд┐рдореНрди-рд╕реНрддрд░ рдХрд╛ рдХреЛрдб рд╣реИ рдЬрд┐рд╕реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд╣рд▓реЗ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреЗ рдмрд┐рдирд╛ рдЪрд▓рд╛ рд╕рдХрддрд╛ рд╣реИред
рдХреНрдпреЛрдВ Node.js?
рдпрд╣рд╛рдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ Node.js рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рджреА рдЧрдИ рдФрдкрдЪрд╛рд░рд┐рдХ рдкрд░рд┐рднрд╛рд╖рд╛ рджреА рдЧрдИ рд╣реИ:
- Node.js - рдХреНрд░реЛрдо рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ V8 рдЗрдВрдЬрди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░рдирдЯрд╛рдЗрдоред
- Node.js рдПрдХ рдШрдЯрдирд╛-рдЪрд╛рд▓рд┐рдд, рдЧреИрд░-рдЕрд╡рд░реБрджреНрдз I / O рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдЖрд╕рд╛рди рдФрд░ рдХреБрд╢рд▓ рдмрдирд╛рддрд╛ рд╣реИред
- Node.js рдкреИрдХреЗрдЬ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░, npm, рджреБрдирд┐рдпрд╛ рдореЗрдВ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рд╣реИред
рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рдЗрд╕ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА: "Node.js рдХреНрд░реЛрдо рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ V8 рдЗрдВрдЬрди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░рдирдЯрд╛рдЗрдо рд╣реИред" рдЕрдм рдЕрдиреНрдп рджреЛ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ Node.js рдЗрддрдирд╛ рд▓реЛрдХрдкреНрд░рд┐рдп рдХреНрдпреЛрдВ рд╣реИред
I / O рдЗрдирдкреБрдЯ / рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рд╣реИред рдпрд╣ рдХреБрдЫ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ: рдПрдкреАрдЖрдИ рдореЗрдВ рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ рд╕реЗ рд▓реЗрдХрд░ HTTP рдЕрдиреБрд░реЛрдз рддрдХред I / O рдореЗрдВ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░рддрд╛ рд╣реИред
рдЙрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдмреИрдХрдПрдВрдб рд╕реЗ user1 рдФрд░ user2 рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рд╕реНрдХреНрд░реАрди рдкрд░ / рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкреНрд░рд┐рдВрдЯ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдЕрдиреБрд░реЛрдз рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рджреЛрдиреЛрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдФрд░ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрдирдкреБрдЯ-рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░рдирд╛
рд▓реЙрдХ рд╡рд┐рдзрд┐ рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ 2 рдбреЗрдЯрд╛ рдЕрдиреБрд░реЛрдз рддрдм рддрдХ рдЪрд╛рд▓реВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ 1 рдбреЗрдЯрд╛ рд╕реНрдХреНрд░реАрди рдкрд░ рдореБрджреНрд░рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рдпрджрд┐ рдпрд╣ рдПрдХ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдерд╛, рддреЛ рд╣рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рд╕реВрддреНрд░ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рд╣реИ (рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рдИрд╡реЗрдВрдЯ рд▓реВрдк рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ)ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрд╣ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдмрд╣реБрдд рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рдмрдирд╛рдПрдЧрд╛ред
рдЧреИрд░-рдЕрд╡рд░реЛрдзрдХ I / O
рджреВрд╕рд░реА рдУрд░, рдЧреИрд░-рдЕрд╡рд░реБрджреНрдз рдЕрдиреБрд░реЛрдз рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдЖрдк рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ 1 рдХреЗ рдЕрдиреБрд░реЛрдз рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд┐рдП рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ 2 рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдЕрдиреБрд░реЛрдз рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рджреЛрдиреЛрдВ рдЕрдиреБрд░реЛрдз рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЧреИрд░-рдЕрд╡рд░реЛрдзрдХ I / O рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рд░реНрд╡рд░ рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рдХрдИ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓ рд╕рдХрддрд╛ рд╣реИред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдШрдЯрдирд╛ рдкрд╛рд╢
рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ 26 рдорд┐рдирдЯ рд╣реИрдВ, рддреЛ рдЙрддреНрдХреГрд╖реНрдЯ рдиреЛрдб рдИрд╡реЗрдВрдЯ рд▓реВрдк рд╡реАрдбрд┐рдпреЛ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рджреЗрдЦреЗрдВ:
рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдИрд╡реЗрдВрдЯ рд▓реВрдк рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдЪрд░рдг-рджрд░-рдЪрд░рдг рд╡рд┐рд╡рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

1. рдХреЙрд▓ рд╕реНрдЯреИрдХ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп () рднреЗрдЬреЗрдВред
2. рдХреЙрд▓ рд╕реНрдЯреИрдХ рдкрд░ рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ () рднреЗрдЬреЗрдВред рдпрд╣ рддреБрд░рдВрдд рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИред
3. рд╕реНрдЯреИрдХ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ (2000) рднреЗрдЬреЗрдВред setTimeout (2000) рдиреЛрдб рдПрдкреАрдЖрдИ рд╣реИред рдЬрдм рд╣рдо рдЗрд╕реЗ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдХреЙрд▓рдмреИрдХ рдИрд╡реЗрдВрдЯ рдЬреЛрдбрд╝реА рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рддреЗ рд╣реИрдВред рдИрд╡реЗрдВрдЯ 2,000 рдорд┐рд▓реА рд╕реЗрдХреЗрдВрдб рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдЧрд╛, рдФрд░ рдлрд┐рд░ рдХреЙрд▓рдмреИрдХ рдХреЙрд▓ рдХрд░реЗрдЧрд╛ред
4. рдкрдВрдЬреАрдХрд░рдг рдХреЗ рдмрд╛рдж, рдХреЙрд▓ рдЯрд╛рдЗрдо рд╕реНрдЯреИрдХ рдореЗрдВ рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ (2000) рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред
5. рдЕрдм рджреВрд╕рд░рд╛ рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ (0) рдЙрд╕реА рддрд░рд╣ рдкрдВрдЬреАрдХреГрдд рд╣реИред рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рджреЛ рдиреЛрдб рдПрдкреАрдЖрдИ рд╣реИрдВред
6. 0 рд╕реЗрдХрдВрдб рдЗрдВрддрдЬрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ (0) рдХреЙрд▓рдмреИрдХ рдХрддрд╛рд░ рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрд╣реА рдмрд╛рдд рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ (2000) рдХреЗ рд╕рд╛рде рд╣реЛрддреА рд╣реИред
7. рдХреЙрд▓рдмреИрдХ рдирд┐рд╖реНрдкрд╛рджрди рдХрддрд╛рд░ рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рд╕реНрдЯреИрдХ рдЦрд╛рд▓реА рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рд╕рдордп рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдИрд╡реЗрдВрдЯ рд▓реВрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
8. рдЕрдВрддрд┐рдо рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ () рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХреЙрд▓ рд╕реНрдЯреИрдХ рд╕реЗ рдореБрдЦреНрдп () рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
9. рдИрд╡реЗрдВрдЯ рд▓реВрдк рджреЗрдЦрддрд╛ рд╣реИ рдХрд┐ рдХреЙрд▓ рд╕реНрдЯреИрдХ рдЦрд╛рд▓реА рд╣реИ, рд▓реЗрдХрд┐рди рдХреЙрд▓рдмреИрдХ рдХрддрд╛рд░ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрд╣ рдХреЙрд▓рдмреИрдХ (рдХреНрд░рдо рдореЗрдВ) рдХреЛ рдХреЙрд▓ рд╕реНрдЯреИрдХ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЗ рдЬрд╛рддрд╛ рд╣реИред
NPM

рдпреЗ рд╕рдореБрджрд╛рдп рдирд┐рд░реНрдорд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИрдВред рд╡реЗ рд╕рдмрд╕реЗ рдЖрдо рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдВрдЧреЗред npm (Node Package Manager) рдореЗрдВ рд╡реЗ рдкреИрдХреЗрдЬ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк рдЕрдкрдиреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рддреЗрдЬ рдФрд░ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рддреАрди рдХрд╛рд░реНрдп рд╣реИрдВ:
Node.js рдХреЗ рд╕рд╛рде рдЖрдкреВрд░реНрддрд┐ рдХрд┐рдП рдЧрдП рдореЙрдбреНрдпреВрд▓ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Node.js API рд╕реЗ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдпрд╛ HTTP рд╕реЗред
рдПрдХреНрд╕рдкреНрд░реЗрд╕ рдФрд░ рдорд╛рдирдЧреЛ рдЬреИрд╕реЗ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк npm рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рдЖрдкрдХреЛ рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдирд╛рдиреЗ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдЖрд╡рд╢реНрдпрдХрддрд╛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рдкрде рдкреИрд░рд╛рдореАрдЯрд░ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдореЙрдбреНрдпреВрд▓.рдПрдХреНрд╕рдкреЛрд░реНрдЯ рджреЗрддрд╛ рд╣реИред
рдиреЛрдб рдореЙрдбреНрдпреВрд▓
рдиреЛрдб рдореЙрдбреНрдпреВрд▓ рдХреЛрдб рдХреЗ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдмреНрд▓реЙрдХ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЕрд╕реНрддрд┐рддреНрд╡ рдЧрд▓рддреА рд╕реЗ рдЕрдиреНрдп рдХреЛрдб рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдореЙрдбреНрдпреВрд▓ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред Node.js рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд╡рд┐рд╢реЗрд╖ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
V8 C ++ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЧрддрд┐ рджреЗрддрд╛ рд╣реИ
V8 C ++ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рдЗрдВрдЬрди рд╣реИред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ -> V8 (C ++) -> рдорд╢реАрди рдХреЛрдб
V8 рдИрд╕реАрдПрдордПрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдИрд╕реАрдПрдордП -262 рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИред ECMAScript рдПрдХреНрдорд╛ рдЗрдВрдЯрд░рдиреЗрд╢рдирд▓ рджреНрд╡рд╛рд░рд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдорд╛рдирдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
V8 рд╕реНрд╡рд╛рдпрддреНрдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдЗрд╕реЗ рдХрд┐рд╕реА рднреА C ++ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЖрдк рдЕрдкрдирд╛ C ++ рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХрд░рд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдШрдЯрдирд╛рдУрдВ
рдШрдЯрдирд╛рдПрдБ рд╡рд╣ рд╕рдм рдХреБрдЫ рд╣реИрдВ рдЬреЛ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ рд╣реБрдЖ рдерд╛ рдФрд░ рд╣рдо рдХреНрдпрд╛ рдЬрд╡рд╛рдм рджреЗ рд╕рдХрддреЗ рд╣реИрдВред
рдиреЛрдб рдореЗрдВ рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣реЛрддреЗ рд╣реИрдВ:
- рд╕рд┐рд╕реНрдЯрдо рдИрд╡реЗрдВрдЯ: libv рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ C ++ рдХрд░реНрдиреЗрд▓ред (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлрд╝рд╛рдЗрд▓ рдкрдврд╝рдирд╛ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛)ред
- рдХрд╕реНрдЯрдо рдИрд╡реЗрдВрдЯ: рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрд░ред
Node.js рдореЗрдВ рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рд▓рд┐рдЦрдирд╛
рдХреНрдпреЛрдВ рдирд╣реАрдВ?
App.js рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ рдФрд░ рдЗрд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝реЗрдВред
console.log ("Hello World!");
рдПрдХ рдиреЛрдб рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓реЗрдВ, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдмрджрд▓реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рд╕рд╣реЗрдЬреА рдЧрдИ рд╣реИ, рдФрд░ рдиреЛрдб рдРрдк рдЪрд▓рд╛рдПрдВред js.
рд╡реЛрдЗрд▓рд╛ - рдЖрдкрдиреЗ рдЕрднреА Node.js. рдореЗрдВ "рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб" рд▓рд┐рдЦрд╛ рд╣реИ
рдРрд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕рдВрд╕рд╛рдзрди рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк Node.js рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ
freeCodeCamp.org рднреА
рд╢рд╛рдорд┐рд▓ рд╣реИред