Init.js: рдлреБрд▓-рд╕реНрдЯреИрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рд╡рд┐рдХрд╛рд╕ рдХреНрдпреЛрдВ рдФрд░ рдХреИрд╕реЗ рдХрд░реЗрдВ

рдХрд╣рд╛рдиреА


рддреЛ, рдЖрдкрдХреЗ рдФрд░ рдЖрдкрдХреЗ рд╕рд╛рдереА рдХреЗ рдкрд╛рд╕ рдПрдХ рдмреЗрд╣рддрд░реАрди рд╡реНрдпрд╡рд╕рд╛рдпрд┐рдХ рд╡рд┐рдЪрд╛рд░ рд╣реИред рд╣реИ рди? рдЖрдк рд▓рдЧрд╛рддрд╛рд░ рдЕрдкрдиреЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВред рдЖрдк рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрднрд╛рд╡рд┐рдд рдЧреНрд░рд╛рд╣рдХреЛрдВ рд╕реЗ рдЙрдирдХреА рд░рд╛рдп рдкреВрдЫрддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗ рдЖрдкрдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рднреА рджреАрд╡рд╛рдиреЗ рд╣реИрдВред

рдареАрдХ рд╣реИ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдк рдЗрд╕ рдкрд░ рдкреИрд╕реЗ рднреА рдХрдорд╛ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдПрдХрдорд╛рддреНрд░ рдХрд╛рд░рдг рд▓реЛрдЧ рдЕрднреА рднреА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ: рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░ рдХрд╛ рдПрд╣рд╕рд╛рд╕ рдирд╣реАрдВ рд╣реБрдЖред рдЕрднреА рддрдХ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред

рдФрд░ рдЕрдВрдд рдореЗрдВ, рдПрдХ рджрд┐рди рдЖрдкрдиреЗ рддрдп рдХрд┐рдпрд╛: "рдЪрд▓реЛ рдХрд░рддреЗ рд╣реИрдВ!"ред рдФрд░ рдЕрдм рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЗ рд╡реНрдпрд╛рдкрд╛рд░рд┐рдХ рддрд░реНрдХ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдП, рд╡рд╣ рд╣рддреНрдпрд╛рд░рд╛ рд╕реБрд╡рд┐рдзрд╛ рдЬреЛ рдЙрддреНрдкрд╛рдж рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдПрдЧреАред рдЖрдкрдХреЛ рдпрд╣ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рд╣реИрдВред рдФрд░ рдЗрд╕рд▓рд┐рдП рддреБрдо рдХрд╣рддреЗ рд╣реЛ: тАЬрд╣реЛ рдЧрдпрд╛! рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ! тАЭрдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╕рдлрд▓ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╣реИ! рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдкреИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИред

"рдареАрдХ рд╣реИ, рдПрдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдмрдирд╛рдУ," рдЖрдк рдХрд╣рддреЗ рд╣реИрдВред

рдФрд░ рддрднреА рдЖрдк рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдЪреБрдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ; рдЖрдкрдХреЛ рдПрдХ (рдЖрдзреБрдирд┐рдХ) рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдЪреБрдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ; рдЖрдкрдХреЛ рдХреБрдЫ (рдЖрдзреБрдирд┐рдХ) рдЪреМрдЦрдЯреЗ рдЪреБрдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ; рдЖрдкрдХреЛ рднрдВрдбрд╛рд░рдг, рдбреЗрдЯрд╛рдмреЗрд╕ рдФрд░ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ (рдФрд░ рдЦрд░реАрджрдиреЗ) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ; рдкреНрд░рд╢рд╛рд╕рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ; рдЖрдкрдХреЛ рдкрд╣реБрдВрдЪ рдирд┐рдпрдВрддреНрд░рдг рдФрд░ рдПрдХ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрд╣рд╛рдБ рджрд░реНрдЬрдиреЛрдВ рдФрд░ рджрд░реНрдЬрдиреЛрдВ рд╡рд╛рд╕реНрддреБ рдирд┐рд░реНрдгрдп рд▓рд┐рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рдЖрдк рдЧрд▓рддреА рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ: рдЖрдкрдХреЛ рдРрд╕реА рддрдХрдиреАрдХреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рддреЗрдЬреА рд╕реЗ рд╡рд┐рдХрд╛рд╕ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ, рдирд┐рд░рдВрддрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ, рдЕрдзрд┐рдХрддрдо рджрдХреНрд╖рддрд╛, рдЧрддрд┐, рд╕реНрдерд┐рд░рддрд╛ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВред рдЖрдк рджреБрдмрд▓реЗ рдФрд░ рдлреБрд░реНрддреАрд▓реЗ рдмрдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЖрдк рдЙрди рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рд▓рдШреБ рдФрд░ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рджреЛрдиреЛрдВ рдореЗрдВ рд╕рдлрд▓ рд╣реЛрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗред рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЪреБрдирдирд╛ рд╣рдореЗрд╢рд╛ рдЗрддрдирд╛ рд╕рд░рд▓ рд╣реИред

"рдореИрдВ рдЕрднрд┐рднреВрдд рд╣реВрдВ," рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ, рдФрд░ рдЖрдк рдЕрднрд┐рднреВрдд рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВред рдКрд░реНрдЬрд╛ рд╡рд╣ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╢реБрд░реБрдЖрдд рдореЗрдВ рдереАред рдЖрдк рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдХрд╛рдо рд╣реИред рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдзреАрд░реЗ-рдзреАрд░реЗ рдлреАрдХрд╛ рдФрд░ рдорд░ рдЬрд╛рддрд╛ рд╣реИред

рдкреНрд░рд╕реНрддрд╛рд╡


рдореИрдВрдиреЗ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рдЫреЛрдбрд╝ рджрд┐рдпрд╛, рдореИрдВрдиреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рдореИрдВрдиреЗ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ ' рдЗрдирд┐рдЯ ' (рдпрд╛ init.js) рдХрд╣рд╛ред

рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рдХрд┐рд╕реА рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рдбреЗрд╡рд▓рдкрд░ рдпрд╛ рддрдХрдиреАрдХреА рдкреНрд░рдмрдВрдзрдХ рдХреЛ рдПрдХ рд╕рдордп рдореЗрдВ рд╕рднреА рдореБрдЦреНрдп рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдФрд░ рдЙрдирдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдЙрдкрдпреБрдХреНрдд рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХрдИ рд▓реЛрдЧ рдХрд╣реЗрдВрдЧреЗ "рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЛ рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ" (рдирдлрд░рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ)ред рдФрд░ рд╡реЗ рд╢рд╛рдпрдж рд╕рд╣реА рд╣реИрдВред рд▓реЗрдХрд┐рди рд╣рдо рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЙрдкрдпреБрдХреНрдд рд╕рдорд╛рдзрд╛рди рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, Init рдиреЗ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд╕рд╛рде рдореБрдХрд╛рдмрд▓рд╛ рдХрд┐рдпрд╛ рд╣реИред

рдЗрд╕ рд▓рдХреНрд╖реНрдп рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред Init рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдХрд░рддреЗ рд╕рдордп, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд┐рдпрд╛:

рдШрдЯрдХреЛрдВ
рдШрдЯрдХ рдкреНрд░рд╕реНрддреБрддрд┐ рдХрд┐рд╕реА рднреА рдкреНрд░рдгрд╛рд▓реА рдХреА рдкреНрд░рдореБрдЦ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдШрдЯрдХреЛрдВ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ Init рдХрд╛ рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдп рд╣реИред рд▓реЗрдХрд┐рди рдШрдЯрдХ рджреГрд╢реНрдп рдореЗрдВ рдПрдХ рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рд╣реЛрддрд╛ рд╣реИ - рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдпреЛрдЧреНрдпрддрд╛, рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рд▓рдбрд╝рд╛рдИ рдореЗрдВ рд╣рдорд╛рд░рд╛ рдореБрдЦреНрдп рд╕рд╣рдпреЛрдЧреА рдмрди рдЬрд╛рдПрдЧрд╛, рдЬрд┐рд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди "рд▓рдЧрднрдЧ" рд╕рдорд╛рди рд╣реИред

рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдЖрд╕рд╛рдиреА
рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдХреБрдЫ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬреЛ рдмреНрд░реЗрдирдл * ck рдкрд░ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд▓рд╛рдЧреВ рд╣реИред рдпрд╣ рд▓рд┐рдЦрдирд╛ рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реЛрдЧрд╛, рдкрдврд╝рдиреЗ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рдирд╛ред рдпрд╣ рдЖрдкрдХреЛ рд╕рдордп рдФрд░ рдЬрдмрд░рджрд╕реНрдд рдкреНрд░рдпрд╛рд╕ рдХрд╛ рдЦрд░реНрдЪ рджреЗрдЧрд╛ред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрдкрдХреЛ рдЙрди рднрд╛рд╖рд╛рдУрдВ рдФрд░ рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рдЬрдЯрд┐рд▓ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмрдЬрд╛рдп рд╕рд░рд▓ рдХрд░рддреЗ рд╣реИрдВ (рдФрд░ рдЬреЛ рд▓реЛрдЧ рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ рдХрд░реЗрдВрдЧреЗ)ред

рд╕рдореБрджрд╛рдп
рдЖрдк рдЬреЛ рднреА рдордВрдЪ рдЪреБрдирддреЗ рд╣реИрдВ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдПрдХ рдмрдбрд╝рд╛ рд╕рдореБрджрд╛рдп рд╣реИред рдПрдХ рдЬреЛ рдЖрдкрдХреЛ рдЕрдзрд┐рдХрд╛рдВрд╢ рдорд╛рдирдХ рдФрд░ рдЧреИрд░-рдорд╛рдирдХ рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╛рдж рд░рдЦреЗрдВ: jQuery рд╕рдмрд╕реЗ рддреЗрдЬ , рд╕рдмрд╕реЗ рд╕реНрд╡рдЪреНрдЫ рдФрд░ рд╕рдмрд╕реЗ рд╕реБрдВрджрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдкрдиреЗ рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдЬреЗрддрд╛ рд╣реИ ред

рдореИрдВ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдЗрди рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рди рднреВрд▓рдХрд░, Init рдмрдирд╛рддреЗ рд╕рдордп рдореИрдВрдиреЗ рдХреИрд╕реЗ рдирд┐рд░реНрдгрдп рд▓рд┐рдПред

Init рдХреЗ рдХреЗрдВрджреНрд░ рдореЗрдВ 'рдлреБрд▓-рд╕реНрдЯреИрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ' рдкреНрд░рддрд┐рдорд╛рди рд╣реИ - 'рдкреВрд░реНрдг рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реБрдЗрдЯ' (рдХреБрдЫ рд▓реЛрдЧ рдЗрд╕реЗ рдпрд╛ рдЗрд╕реЗ 'MEAN рд╕реНрдЯреИрдХ' рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдХрд╣рддреЗ рд╣реИрдВ )ред рдЗрд╕ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП, Init рдЖрдкрдХреЛ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд░реВрдк рд╕реЗ рд▓рдЪреАрд▓рд╛ рдФрд░ рдкреВрд░реА рддрд░рд╣ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, Init рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рд╕рдорд╛рдзрд╛рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реА рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдмрд┐рд▓реНрдбрд┐рдВрдЧ, рдЯреЗрд╕реНрдЯрд┐рдВрдЧ, рдЯреЗрдореНрдкреНрд▓реЗрдЯрд┐рдВрдЧ, рдЗрддреНрдпрд╛рджрд┐ рдХреЗ рд▓рд┐рдП рднреА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред



рд▓реЗрдХрд┐рди рдЪрд▓реЛ рдПрдХ рдкрд▓ рдХреЗ рд▓рд┐рдП рд░реБрдХреЗрдВ рдФрд░ рдЦреБрдж рд╕реЗ рдкреВрдЫреЗрдВ: рдХреНрдпрд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ?

рдореИрдВрдиреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрдпреЛрдВ рдЪреБрдирд╛


рдореИрдВ 1998 рд╕реЗ рдПрдХ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЙрд╕ рд╕рдордп, рд╣рдордиреЗ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рд░реНрд╡рд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдкрд░реНрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ , рд▓реЗрдХрд┐рди рддрдм рднреА рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрдХреНрд╖ рдХреЗ рд▓рд┐рдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдерд╛ред рддрдм рд╕реЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдореЗрдВ рдмрд╣реБрдд рдмрджрд▓рд╛рд╡ рдЖрдпрд╛ рд╣реИ: рд╣рдо рднрд╛рд╖рд╛рдУрдВ рдФрд░ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХреА рдХрдИ рддрд░рдВрдЧреЛрдВ рд╕реЗ рдЧреБрдЬрд░реЗ, рдЬреИрд╕реЗ рдХрд┐ PHP, AP, JSP, .NET, рд░реВрдмреА, рдкрд╛рдпрдердиред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдорд╣рд╕реВрд╕ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдХрд┐ рд╕рд░реНрд╡рд░ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рднрд╛рдЧреЛрдВ рдореЗрдВ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдХрд╛рдо рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рджреЛ рднрд╛рдЧреЛрдВ рдХреЛ рдПрдХ рднрд╛рд╖рд╛ рдХреЗ рддрд╣рдд рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╕рд░реНрд╡рд░ рдкрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдШрдЯрдХреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЙрдирдХрд╛ рд╕рдВрдХрд▓рди рд╣реБрдЖред рдкрд░рд┐рдгрд╛рдо рдЙрдореНрдореАрджреЛрдВ рд╕реЗ рдХрдо рд╣реЛ рдЧрдП, рдФрд░ рдЗрдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдПрд╕рдкреА рдПрдорд╡реАрд╕реА, рдЬреЛ рдПрдПрд╕рдкреА.рдиреЗрдЯ рд╡реЗрдм рд░реВрдкреЛрдВ рдХреА рдЬрдЧрд╣ рд▓реЗрддреА рд╣реИрдВ , рдФрд░ рдЬреАрдбрдмреНрд▓реНрдпреВрдЯреА , рдЬреЛ рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдкреЙрд▓рд┐рдорд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛)ред рд▓реЗрдХрд┐рди, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдПрдХ рдорд╣рд╛рди рд╡рд┐рдЪрд╛рд░ рдерд╛: рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рднрд╛рд╖рд╛, рдШрдЯрдХреЛрдВ рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рдпрд╣ рдХреАрд╡рд░реНрдб рд╣реИ: рд╕рдВрд╕рд╛рдзрди )ред

рдЙрддреНрддрд░ рд╕рд░рд▓ рдерд╛: рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдкреЛрд░реНрдЯ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреЗрдЯрд╕реНрдХреЗрдк рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рд╕рд░реНрд╡рд░ рдореЗрдВ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХреЗ рд╕рд╛рде рдкреИрджрд╛ рд╣реБрдЖ рдерд╛ , рд▓реЗрдХрд┐рди рднрд╛рд╖рд╛ рдЙрд╕ рд╕рдордп рддреИрдпрд╛рд░ рдирд╣реАрдВ рдереАред рд╡рд░реНрд╖реЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдФрд░ рдЕрд╕рдлрд▓рддрд╛ рдХреЗ рдмрд╛рдж, Node.js рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдЬрд┐рд╕рдиреЗ рди рдХреЗрд╡рд▓ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рд░реНрд╡рд░ рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛, рдмрд▓реНрдХрд┐ рдиреЙрди-рдмреНрд▓реЙрдХрд┐рдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ рднреА рдмрдврд╝рд╛рд╡рд╛ рджрд┐рдпрд╛, рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣рдо "рдлреИрдбрд░" (I / O) рдХреЛ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрддреЗ рд╣реИрдВ ( рдпрд╣рд╛рдВ рдкрд░ рдЕрдзрд┐рдХ рдкрдврд╝реЗрдВ)ред

рд▓реЗрдХрд┐рди рдпреЗ рд╡рд┐рдЪрд╛рд░ рдирдП рдирд╣реАрдВ рдереЗ, рдХреНрдпреЛрдВ рд╡реЗ Node.js рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде рдЗрддрдиреЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реЛ рдЧрдП? рд╕рд░рд▓ рдЧреИрд░-рдЕрд╡рд░реБрджреНрдз рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрдИ рддрд░реАрдХреЛрдВ рд╕реЗ рд╣рд╛рд╕рд┐рд▓ рдХреА рдЬрд╛рддреА рд╣реИред рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдХреЙрд▓рдмреИрдХ рдФрд░ рдЗрд╡реЗрдВрдЯ рд▓реВрдк - рдЗрд╡реЗрдВрдЯ рд▓реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ ред рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ, рдпрд╣ рдПрдХ рдЖрд╕рд╛рди рдХрд╛рдо рдирд╣реАрдВ рд╣реИ: рдпрджрд┐ рдХреЙрд▓рдмреИрдХ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдп рд╣реИ, рддреЛ рдИрд╡реЗрдВрдЯ рд▓реВрдк рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рдЖрдк рдмрд╛рд╣рд░реА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рд╛рде рд▓рдбрд╝рд╛рдИ рдореЗрдВ рдЦреБрдж рдХреЛ рдкрд╛рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдкрд╛рдпрдерди, рдЯреЙрд░реНрдиреЗрдбреЛ рдХреЗ рд╕рд╛рде)ред рд▓реЗрдХрд┐рди рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рдХреЙрд▓рдмреИрдХ рдПрдХ рдЗрд╡реЗрдВрдЯ рд▓реВрдк рдХреА рддрд░рд╣ рднрд╛рд╖рд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдФрд░ рд╣рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░, рдЬрд┐рд╕рдиреЗ рдХрдо рд╕реЗ рдХрдо рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрдирдХреЗ рд╕рд╛рде рдкрд░рд┐рдЪрд┐рдд рд╣реИ (рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдЙрдирдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рд╡рд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рд╣реЛ рдХрд┐ рдЗрд╡реЗрдВрдЯ рд▓реВрдк рдХреНрдпрд╛ рд╣реИ )ред

рдЕрдЪрд╛рдирдХ, рдзрд░рддреА рдкрд░ рдХреЛрдИ рднреА рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рджреЛрдиреЛрдВ рддрд░рдл рдбреЗрд╡рд▓рдкрд░реНрд╕ (рдкрдврд╝реЗрдВ: рд╕рдВрд╕рд╛рдзрди) рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ , рдХрд░реНрдорд┐рдпреЛрдВ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИ , "рд╣рдореЗрдВ рдкрд╛рдпрдерди рдЧреБрд░реБ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред"

рддреЛ рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдРрд╕реА рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рддреЗрдЬрд╝ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо (рдЧреИрд░-рдЕрд╡рд░реБрджреНрдз рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж)ред рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЗрддрдирд╛ рд╣реА рдХрд╛рдлреА рд╣реИ? рдХреНрдпрд╛ рдпрд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛? рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реНрдерд╛рди рд▓реЗрдЧрд╛ред рдореБрдЭреЗ рд╕рдордЭрд╛рдПрдВ рдХрд┐ рдХреНрдпреЛрдВ:

рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ
рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдкреНрд░рддрд┐рдорд╛рди рдХреЛ рдЬрдирддрд╛ рддрдХ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╣рд▓реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдереА (рдмреЗрд╢рдХ, рд▓рд┐рд╕реНрдк рдкрд╣рд▓реЗ рдереА, рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдиреЗ рдХрднреА рднреА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рддреИрдпрд╛рд░ рд▓рд┐рд╕реНрдк рдЙрддреНрдкрд╛рдж рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рд╣реИ)ред рд▓рд┐рд╕реНрдк рдФрд░ рд╕реНрд╡рдпрдВ, рдореБрдЦреНрдп рднрд╛рд╖рд╛рдПрдВ рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИрдВ, рдЕрднрд┐рдирд╡ рд╡рд┐рдЪрд╛рд░реЛрдВ рд╕реЗ рднрд░реА рд╣реИрдВред рдпреЗ рд╡рд┐рдЪрд╛рд░ рд╣рдорд╛рд░реЗ рджрд┐рдорд╛рдЧ рдХреЛ рдирдИ рддрдХрдиреАрдХреЛрдВ, рдбрд┐рдЬрд╛рдЗрди рдкреИрдЯрд░реНрди рдФрд░ рдкреНрд░рддрд┐рдорд╛рдиреЛрдВ рдХреЛ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗ рд╕рднреА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдмрджрд▓ рдЧрдПред рдореЛрдирд╛рдбреНрд╕ , рдЪрд░реНрдЪ рд╕рдВрдЦреНрдпрд╛ , рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ (рдПрдХ рдЕрдзрд┐рдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЙрджрд╛рд╣рд░рдг) рдЕрдВрдбрд░рд╕реНрдХреЛрд░редрдЬреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ рдЬреЛ рдЖрдкрдХреЛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХреЛрдб рдХреА рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рд╕реЗ рдмрдЪрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдЧрддрд┐рд╢реАрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдФрд░ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо
рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ (рдФрд░ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдЕрдирдВрдд рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЗ рдмрд┐рдирд╛) рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЖрдкрдХреЛ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ (рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдмрдирд╛рдиреЗ, рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ) рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди, рдЗрд╕рд╕реЗ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдмрд╛рдж рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рд░рд┐рдлреИрдХреНрдЯрд┐рдВрдЧ рд╕рдордп рдХреЛ рдХрдо рдХрд░рдирд╛, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╕рдорд╛рдкреНрдд рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдЧрддрд┐ рдФрд░ рд▓рдЪреАрд▓рд╛рдкрди рддреЗрдЬреА рд╕реЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рдмрдирд╛рддрд╛ рд╣реИред

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЯрд░рдиреЗрдЯ рд╣реИ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╣ рд╢реБрд░реБрдЖрдд рд╕реЗ рд╣реА рдпрд╣рд╛рдВ рд╣реИ, рдФрд░ рдпрд╣ рдХрд╣реАрдВ рднреА рдирд╣реАрдВ рдЬрд╛ рд░рд╣рд╛ рд╣реИ ред рдЗрд╕реЗ рдирд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд╕рднреА рдкреНрд░рдпрд╛рд╕ рд╡рд┐рдлрд▓ рд░рд╣реЗ: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрд╛рд╡рд╛ рдПрдкреНрд▓реЗрдЯреНрд╕ рдХреЗ рдкрддрди рдкрд░, рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рдХреЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡реАрдмреАрдПрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдХрд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди, рдореЛрдмрд╛рдЗрд▓ рдмрд╛рдЬрд╛рд░ рдФрд░ рдПрдЪрдЯреАрдПрдордПрд▓ 5 рдХреЗ рд╣рд╛рдереЛрдВ рдлреНрд▓реИрд╢ рдХреА рдореМрддред рд▓рд╛рдЦреЛрдВ рд╡реЗрдм рдкреГрд╖реНрдареЛрдВ рдХреЛ рдирд╖реНрдЯ рдХрд┐рдП рдмрд┐рдирд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдмрджрд▓рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░рд╛ рд▓рдХреНрд╖реНрдп рднрд╛рд╖рд╛ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдирд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдИрд╕реАрдПрдордП рдХреА рддрдХрдиреАрдХреА рд╕рдорд┐рддрд┐ 39 рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреЛрдИ рднреА рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдЕрдиреБрдХреВрд▓ рдирд╣реАрдВ рд╣реИред

рд╣рд╛рдВ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╡рд┐рдХрд▓реНрдк рд╣рд░ рджрд┐рди рдкреИрджрд╛ рд╣реЛрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдХреЙрдлреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рд▓рд╛рдЦреЛрдВ рднрд╛рд╖рд╛рдПрдВ рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рд╣реЛрддреА рд╣реИрдВ ред рдпреЗ рд╡рд┐рдХрд▓реНрдк рд╡рд┐рдХрд╛рд╕ рдХреЗ рдЪрд░рдгреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ ( рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж ), рд▓реЗрдХрд┐рди рд╡реЗ рджреЛ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ: рдЙрдирдХреЗ рд╕рдореБрджрд╛рдп рдХрднреА рдмрдбрд╝реЗ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ рдФрд░ рдЙрдирдХреА рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдИрд╕реАрдПрдордП рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рдкрдврд╝реЗрдВ: рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ) рдореЗрдВ рд▓рд╛рдЧреВ рдХреА рдЬрд╛рдПрдВрдЧреАред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдПрдХ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рд╕реНрд░реЛрдд рдХреЛрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЗрд╕реЗ рд╕рдордЭрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢реБрд░реВ рд╕реЗ рдЕрдВрдд рддрдХ: Node.js рдФрд░ MongoDB


рддреЛ рдпреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪреБрдирдиреЗ рдХреЗ рдХрд╛рд░рдг рдереЗред рдЕрдм рдореИрдВ рдЖрдкрдХреЛ Node.js рдФрд░ MongoDB рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред

Node.js
Node.js рддреЗрдЬ, рд╕реНрдХреЗрд▓реЗрдмрд▓ рдиреЗрдЯрд╡рд░реНрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдордВрдЪ рд╣реИ - рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХреА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рд╣реИред рд▓реЗрдХрд┐рди Node.js рд╕рд┐рд░реНрдл рдПрдХ рдордВрдЪ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдпрд╣ I / O рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╕рдВрджреАрджрд╛ рд╡рд╛рддрд╛рд╡рд░рдг рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк Node.js рдореЗрдВ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рдЦрдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Node.js рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯ рдХреЗ рд▓рд┐рдП Mocha.js , рдСрдЯреЛрдореИрдЯрд┐рдХ рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд▓рд┐рдП Grunt.js , рдпрд╛ рдлреБрд▓-рдЯреЗрдХреНрд╕реНрдЯ рдХреЛрдб рдПрдбрд┐рдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдмреНрд░реИрдХреЗрдЯреНрд╕ ред

рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕рд░реНрд╡рд░ рдпрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рдЦрдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ Node.js рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рд╣рд░ рджрд┐рди рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ , рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА Node.js. рд╕рдореБрджрд╛рдп рдХрд╛ 10% рднреА рдирд╣реАрдВ рд╣реИред

MongoDB
MongoDB рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝-рдЙрдиреНрдореБрдЦ NoSQL рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИ рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЖрдк рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд╕рд╛рде рд▓реВрдк рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ MongoDB рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдореБрдЦреНрдп рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред

MongoDB рдХреЛ рдЯреЗрдмрд▓ рд╕реНрдХреАрдорд╛ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдмрдЪрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рддреЗрдЬрд╝реА рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, MongoDB рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдорд╛рдкрддрд╛ рд╣реИ рдФрд░ рдореИрдк-рдХрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ , рдЬреЛ рдЗрд╕реЗ рдмрдбрд╝реЗ рдбреЗрдЯрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рддрд╛ рд╣реИред MongoDB рдЗрддрдирд╛ рд▓рдЪреАрд▓рд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╕реНрдХреАрдорд╛, рд░рд┐рд▓реЗрд╢рдирд▓ рд╕реНрдЯреЛрд░реЗрдЬ (рд▓реЗрдХрд┐рди рд▓реЗрдирджреЗрди рдХреЗ рдмрд┐рдирд╛), рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреИрд╢рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХреБрдВрдЬреА-рдореВрд▓реНрдп рднрдВрдбрд╛рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

Express.js рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░ рдШрдЯрдХ рджреГрд╢реНрдп


рд╕рд░реНрд╡рд░ рдШрдЯрдХ рджреГрд╢реНрдп рдПрдХ рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдп рд╣реИред рд▓реЗрдХрд┐рди Express.js (рдФрд░ Connect.js ) рдХреЗ рд╕рд╛рде рдПрдХ "рдорд┐рдбрд▓рд╡реЗрдпрд░" рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдЖрдпрд╛ред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдорд┐рдбрд▓рд╡реЗрдпрд░ рд╕рд░реНрд╡рд░ рдШрдЯрдХреЛрдВ рдХреА рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рдкрд░рд┐рднрд╛рд╖рд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдПрдХ рдкреНрд░рд╕рд┐рджреНрдз рдбрд┐рдЬрд╛рдЗрди рдкреИрдЯрд░реНрди рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХрдиреНрд╡реЗрдпрд░ рдФрд░ рдлрд┐рд▓реНрдЯрд░ рдЬреИрд╕рд╛ рдХреБрдЫ рд╣реИред

рдореВрд▓ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдШрдЯрдХ рдПрдХ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЕрдиреБрд░реЛрдз (рдЗрдирдкреБрдЯ) рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ (рдЖрдЙрдЯрдкреБрдЯ) рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХрд╛ рдШрдЯрдХ рдкреВрд░реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдпрд╣ рдХреЗрд╡рд▓ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдФрд░ рдлрд┐рд░ рдкрд╛рдЗрдк рд▓рд╛рдЗрди рдХреЗ рдЕрдЧрд▓реЗ рддрддреНрд╡ рдХреЛ рдХрд╛рд░реНрдп рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЬрдм рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рдЕрдВрддрд┐рдо рддрддреНрд╡ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╡рд╛рдкрд╕ рднреЗрдЬ рджреА рдЬрд╛рддреА рд╣реИред

рд╣рдо рдЗрди "рдХрдиреНрд╡реЗрдпрд░ рддрддреНрд╡реЛрдВ" рдХреЛ "рдордзреНрдпрд╡рд░реНрддреА рдкрд░рдд" рдХрд╣рддреЗ рд╣реИрдВред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рджреЛ рдкреНрд░рдХрд╛рд░ рдХреА рдордзреНрдпрд╡рд░реНрддреА рдкрд░рддреЗрдВ рдмрдирд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ:

рдмрд┐рдЪреМрд▓рд┐рдпреЗ : рддрддреНрд╡ рдЬреЛ рдЕрдиреБрд░реЛрдз рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдкрд╛рд╕ рд╕реНрд╡рдпрдВ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдкреВрд░реА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡реЗ рдЕрдиреБрд░реЛрдз рдХреЛ рдЕрдЧрд▓реА рдкрд░рдд рдкрд░ рд╕реМрдВрдк рджреЗрддреЗ рд╣реИрдВред

рдкрд░рд┐рдорд┐рдд рддрддреНрд╡ : рдРрд╕реЗ рддрддреНрд╡ рдЬреЛ рдЕрдВрддрд┐рдо рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВред рд╡реЗ рдЕрдиреБрд░реЛрдз рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдФрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдиреНрд╣реЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рддреЛрдВ рдореЗрдВ рдирд╣реАрдВ рд╕реМрдВрдкрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдЕрдЧрд▓реА рдкрд░рдд рдХреЛ рд╕реМрдВрдкрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЕрднреА рднреА рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рд▓рдЪреАрд▓реЗрдкрди рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдФрд░ рдкрд░рдд рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП), рднрд▓реЗ рд╣реА рдпрд╣ рдкрд░рдд рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ (рдЬрд┐рд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЧреНрд░рд╛рд╣рдХ рдХреЛ рд╕реАрдзреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИ)ред



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

рдПрдХрд▓ рдкреГрд╖реНрда рдЕрдиреБрдкреНрд░рдпреЛрдЧ


Init рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рд┐рдВрдЧрд▓ рдкреЗрдЬ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИ - 'рд╕рд┐рдВрдЧрд▓ рдкреЗрдЬ рдПрдкреНрд▓реАрдХреЗрд╢рди' (SPAs) ред рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╕рд┐рдВрдЧрд▓-рдкреЗрдЬ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдореЗрдВ рдЦреБрдж рдХреЛ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рд▓реБрднрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдХрдИ (рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЦреБрдж рдХреЗ рд▓рд┐рдП) рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдореИрдВ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХреЗ рд╕рд╛рде рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рд╡реЗ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рднрд╡рд┐рд╖реНрдп рд╣реИрдВред рдХреНрдпрд╛ рдЖрдкрдиреЗ рдХрднреА рдореЛрдмрд╛рдЗрд▓ рдХрдиреЗрдХреНрд╢рди рдкрд░ рдПрд╕рдкреАрдП рдХреА рддреБрд▓рдирд╛ рдПрдХ рдирд┐рдпрдорд┐рдд рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдХреА рд╣реИ? рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЕрдВрддрд░ рджрд╕рд┐рдпреЛрдВ рд╕реЗрдХрдВрдб рд╣реИред

рд╕рд┐рдВрдЧрд▓-рдкреЗрдЬ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдВрдЯрд░рдиреЗрдЯ рдХрд╛ рднрд╡рд┐рд╖реНрдп рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдХ рдкреБрд░рд╛рдиреЗ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЕрдкрдирд╛ рдЙрддреНрдкрд╛рдж рдХреНрдпреЛрдВ рдмрдирд╛рдПрдВ? рдПрдХ рдирд┐рд░рдВрддрд░ рддрд░реНрдХ рдЬреЛ рдореИрдВрдиреЗ рд╕реБрдирд╛ рд╣реИ рд╡рд╣ рдПрд╕рдИрдУ рдХреЗ рд╕рд╛рде рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдХрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рд╕рдм рдХреБрдЫ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА: Google рдЦреБрдж рдХреЛ рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ рдирд┐рд░реНрджреЗрд╢ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрд╣рд╛рдВ рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рд╣реИрдВред

Backbone.js, Marionette.js, рдФрд░ рдЯреНрд╡рд┐рдЯрд░ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХреЗ рд╕рд╛рде рдХреНрд▓рд╛рдЗрдВрдЯ MV *


рдПрдХрд▓ рдкреГрд╖реНрда рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП MVC * рдЪреМрдЦрдЯреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдПрдХ рдореБрд╢реНрдХрд┐рд▓ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рддреАрди рдкрд╕рдВрджреАрджрд╛ рдмреИрдХрдмреЛрди.рдЬреЗрдПрд╕ , рдПрдореНрдмрд░.рдЬреЗрдПрд╕ рдФрд░ рдПрдВрдЧреБрд▓рд░.рдЬреЗрдПрд╕ рд╣реИрдВ ред

рдЙрди рд╕рднреА рдХреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рд▓рд┐рдП рдХреМрди рд╕рд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛?

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореБрдЭреЗ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдореБрдЭреЗ Angular.js рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдХрдо рдЕрдиреБрднрд╡ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рдЗрд╕ рдЪрд░реНрдЪрд╛ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджреВрдВрдЧрд╛ред рддреЛ, Ember.js рдФрд░ Backbone.js рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╣реИрдВред

Backbone.js рдиреНрдпреВрдирддрдо, рд╕рд░рд▓ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдПрд╕рдкреАрдП рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдиреНрдпреВрдирддрдо рд╕реЗрдЯ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред Ember.js рд╕рд┐рдВрдЧрд▓-рдкреЗрдЬ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реНрдг рд╡рд┐рдХрд╕рд┐рдд рдФрд░ рдкреЗрд╢реЗрд╡рд░ рдврд╛рдВрдЪрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реАрдЦрдиреЗ рдХреА рдЕрд╡рд╕реНрдерд╛ рд╕реНрдерд┐рд░ рд╣реИред

рдЖрд╡реЗрджрди рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╕рдорд╛рдзрд╛рди "рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдлрд╝рдВрдХреНрд╢рдВрд╕ / рдЙрдкрд▓рдмреНрдз рдлрд╝рдВрдХреНрд╢рдВрд╕" рд░рд┐рд╢реНрддреЗ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд░рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕реБрд░рд╛рдЧ рджреЗрдЧрд╛ред

Init рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ Backbone.js рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рдПрд╕рдкреАрдП рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛, рдЬрд┐рд╕рдореЗрдВ Backbone.Marionette.View рдХреЗ рд▓рд┐рдП рдЕрдВрд╢рд╛рдВрдХрди рдерд╛ред рдРрд╕реА рдпреЛрдЬрдирд╛ рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдПрдХ рд╕рд░рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИ, рдФрд░ рдЕрдВрддрд┐рдо рдЙрддреНрдкрд╛рдж рдЬрд┐рддрдирд╛ рдЪрд╛рд╣реЗ рдЙрддрдирд╛ рдЬрдЯрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╕реНрдерд┐рд░реАрдХрд░рдг рднреА рдПрдХ рдмрдбрд╝рд╛ рдХрд╛рдо рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╣рдо рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЯреНрд╡рд┐рдЯрд░ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдмреЗрд╣рддрд░ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рдореЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рд╕реЗрдЯ рд╣реИ рдЬреЛ рдмреЙрдХреНрд╕ рдХреЗ рдареАрдХ рдмрд╛рд╣рд░ рд╣реИ, рди рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ, рдмрд▓реНрдХрд┐ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕рдВрд╢реЛрдзрди рдХреЗ рд▓рд┐рдП рднреА рд╣реИред

рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХреЛ LESS рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рддрд╛рдХрд┐ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЗрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдЗрд╕рдХреЗ рд╕рд╛рде рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЕрдЪреНрдЫреЗ рдкреНрд░рд▓реЗрдЦрди рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддрддреНрд╡реЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбрд▓ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдкрдиреЗ рддрддреНрд╡реЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдирд┐рд╕реНрд╕рдВрджреЗрд╣, рдпрд╣ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред

рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдПрдБ: рдЧреНрд░рдВрдЯ.рдЬреЗрдПрд╕, рдореЛрдЪрд╛.рдЬреЗрдПрд╕, рдЪрд╛рдИ.рдЬреЗрдПрд╕, рдПрдирдИрдЖрд░рдЬреЗрдПрд╕, рдФрд░ рдХрд╡рд░рдЬреЗрдПрд╕


рдЕрдВрдд рдореЗрдВ, рд╣рдо рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ Init рдЙрдирдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдХреЗ рд╕рдорд░реНрдерди рдореЗрдВ рд╣рдорд╛рд░реА рдорджрдж рдХреИрд╕реЗ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╣рдорд╛рд░рд╛ рд╕рдорд╛рдзрд╛рди рдХрдИ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ Node.js рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ

рдореЛрдЪрд╛.рдЬреЗрдПрд╕ рдФрд░ рдЪрд╛рдИ.рдЬреЗрдПрд╕ :
рдпреЗ рдЙрдкрдХрд░рдг рдЯреАрдбреАрдбреА рдпрд╛ рдмреАрдбреАрдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддреЗ рд╣реИрдВ, рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдЖрдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдБрдЪрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╣рдЬрд╛рд░реЛрдВ рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реИрдВред рдпрд╣ Mocha.js рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рдХреНрдпреЛрдВ рд╣реИ? рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЙрддреНрддрд░: рдпрд╣ рд▓рдЪреАрд▓рд╛ рдФрд░ рдкреВрд░реНрдг рд╣реИред

рд▓рдВрдмрд╛ рдЙрддреНрддрд░: рдЗрд╕рдореЗрдВ рджреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ (рдЗрдВрдЯрд░рдлреЗрд╕, рд░рд┐рдкреЛрд░реНрдЯрд░) рд╣реИрдВ, рдФрд░ рдЗрд╕рдореЗрдВ рдореБрдЦрд░ рдХрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рд╕рдордЭрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВред

рдЗрдВрдЯрд░рдлреЗрд╕ : рдЖрдкрдХреЛ рдЯреАрдбреАрдбреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдЬреИрд╕реЗ рдХрд┐ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рд╕реВрдЯ) рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЖрдк рд╡реНрдпрд╡рд╣рд╛рд░ рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ "рд╡рд┐рд╡рд░рдг" рдФрд░ "рдпрд╣ рдЪрд╛рд╣рд┐рдП" рдХреЗ рд╕рд╛рде рдмреАрдбреАрдбреА рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдкрд╕рдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред Mocha.js рджреЛрдиреЛрдВ рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

рд░рд┐рдкреЛрд░реНрдЯрд░реНрд╕ : рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рд╕реЗ рдкрд░рд┐рдгрд╛рдо рд░рд┐рдкреЛрд░реНрдЯ рддреИрдпрд╛рд░ рд╣реЛрддреА рд╣реИ, рдФрд░ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдкрддреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рдХреЛ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХреЛ рдирд┐рд░рдВрддрд░ рдПрдХреАрдХрд░рдг рд╕рд░реНрд╡рд░ рдХреЛ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдПрдХ рд░рд┐рдкреЛрд░реНрдЯрд░ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЦрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЕрднрд╛рд╡ : Mocha.js рдХреЛ рдЗрд╕рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рддрд╛рдХрд┐ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рдореБрдЦрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВ, рдЬрд┐рд╕рд╕реЗ рд▓рдЪреАрд▓рд╛рдкрди рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИред рдХрдИ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ , рд▓реЗрдХрд┐рди рдпрд╣ Cha.js рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ

Chai.js рдПрдХ рд▓рдЪреАрд▓рд╛ рджрд╛рд╡рд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рддреАрди рдореБрдЦреНрдп рд╢реИрд▓рд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ:

рдореБрдЦрд░: рдкреБрд░рд╛рдиреЗ рд╕реНрдХреВрд▓ TDD рд╕реЗ рдмрдпрд╛рдиреЛрдВ рдХреА рдХреНрд▓рд╛рд╕рд┐рдХ рд╢реИрд▓реА, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

assert.equal(variable, "value");

рдЙрдореНрдореАрдж: рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдмрдпрд╛рдиреЛрдВ рдХреА рд╢реИрд▓реА рдЬреЛ рдЕрдХреНрд╕рд░ рдмреАрдбреАрдбреА рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

expect(variable).to.equal("value");

рдЪрд╛рд╣рд┐рдП : рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ BDD рдореЗрдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ "рдкреНрд░рддреАрдХреНрд╖рд╛" рдкрд╕рдВрдж рд╣реИ рдХреНрдпреЛрдВрдХрд┐ "рдЙрд╕реЗ" ("рдХреБрдЫ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП") рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдЬреИрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

variable.should.equal(тАЬvalueтАЭ);

Chai.js Mocha.js рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрди рджреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдЯреАрдбреАрдбреА, рдмреАрдбреАрдбреА, рдпрд╛ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд╢реИрд▓реА рдореЗрдВ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреА рдЖрдк рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

Grunt.js :
Grunt.js рдЖрдкрдХреЛ рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд╕рд░рд▓ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдФрд░ рдкреЗрд╕реНрдЯрд┐рдВрдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░, рдЯреЗрдореНрдкреНрд▓реЗрдЯ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реНрдЯрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдореЗрдЯрд▓рдВрдЧреБрдЬреЗрд╕ рд╕рдВрдХрд▓рди (рдпрд╛рдиреА, рдПрд╕рдПрдПрд╕рдПрдВрдб рдФрд░ рд▓реЗрд╕), рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯрд┐рдВрдЧ (рдореЛрдЪ .js рдХреЗ рд╕рд╛рде), рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдорд┐рдирд┐рдлрд┐рдХреЗрд╢рди ( рдЙрджрд╛ред UglifyJS рдпрд╛ рдХреНрд▓реЛрдЬрд░ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд╕рд╛рде )ред рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЧреНрд░рдВрдЯ рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдореМрдЬреВрджрд╛ рдкреНрд▓рдЧ-рдЗрди рдХреЗ рд╕реИрдХрдбрд╝реЛрдВ рдФрд░ рд╕реИрдХрдбрд╝реЛрдВ рдХреЗ рдмреАрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ, (рдлрд┐рд░ рд╕реЗ, рдЙрди рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬреЛ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рд╕рдореБрджрд╛рдп рд╣рдорд╛рд░реЗ рд╣рд╛рдереЛрдВ рдореЗрдВ рдирд╛рдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЦрдбрд╝рд╛ рд╣реИ)ред рдЬрдм рд╡реЗ рдмрджрд▓рддреЗ рд╣реИрдВ рддреЛ рдЧреНрд░рдВрдЯ рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ :
рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ AMD рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдореЙрдбреНрдпреВрд▓ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЖрдкрдХреЛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ рдЕрдзрд┐рдХ рд╕рдХреНрд╖рдо рд╣реИрдВред рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпреЛрдВ, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рджрд╛рдпрд░реЗ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Demo.views.hello) рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЫрд┐рдкрд╛рдХрд░ рд╡реИрд╢реНрд╡рд┐рдХ рдЧреБрдВрдЬрд╛рдЗрд╢ рдХреЛ рд╕рд╛рдл рд░рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЗрди рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдирд╛рдорд╕реНрдерд╛рди рдмрджрд▓рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдЧрд╛ред рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдмрджрд▓реЗ рдореЗрдВ, рдкреБрди: рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╢реБрд░реВ рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред (рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдирд┐рд░реНрднрд░рддрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдкрдХреЗ рдореЙрдбреНрдпреВрд▓ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рддрдХ рди рдкрд╣реБрдВрдЪ рд╕рдХреЗрдВред

CoverJS :
рдХреЛрдб рдХрд╡рд░реЗрдЬ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд╛ рдПрдХ рдЙрдкрд╛рдп рд╣реИред рдирд╛рдо рд╕реЗ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЖрдкрдХреЗ рд╡рд░реНрддрдорд╛рди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдХреЛрдб рдХрд╡рд░реЗрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред CoverJS рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯреЗрд╢рди рдХреЗ рдмрдЬрд╛рдп рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреЛрдб рдХрд╡рд░реЗрдЬ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рддрд╛ рд╣реИ (рдмрдЬрд╛рдп JSCoverage рдЬреИрд╕реЗ рдХреЛрдб рдХреА рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдФрд░ рдЖрдкрдХреЗ рдХреЛрдб рдХреЗ рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдкреАрдврд╝реАред рдпрд╣ рд╕рд░реНрд╡рд░ рдХрдВрдЯреАрдиреНрдпреВрдЕрд╕ рдЗрдВрдЯреАрдЧреНрд░реЗрд╢рди рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЛрд░реНрдЯ рднреА рддреИрдпрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдЦрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


рдореИрдВрдиреЗ Init рдкрд░ рдХрд╛рдо рд╢реБрд░реВ рдХрд┐рдпрд╛ рдФрд░ рдореБрдЭреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдФрд░ рдмрдВрдж рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВрдиреЗ рдПрдХ рдХрдЯреНрдЯрд░рдкрдВрдереА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЕрдкрдирд╛рдпрд╛: рдЗрд╕ рдХрд╛рд░реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд┐рдЯ рд╢рд╛рдЦрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред

рдореЛрдЯреЗ рддреМрд░ рдкрд░, рдкреНрд░рддреНрдпреЗрдХ рд╢рд╛рдЦрд╛ рдПрдХ рдШрдЯрдХ рдпрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИ рдЬрд┐рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рд╕реНрдХреНрд░реИрдЪ рд╕реЗ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдиреНрдпреВрдирддрдо рд╢рд╛рдЦрд╛ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ, рдФрд░ рдлрд┐рд░ рдЖрд╡рд╢реНрдпрдХ рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рд▓рдп рдХрд░рдХреЗ рдЕрдиреНрдп рддрдХрдиреАрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд╣реЗрдВ рдХрд┐ рд╣рдореЗрдВ Backbone.js рдФрд░ Marionette.js рдХреЗ рд╕рд╛рде рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдк Backbone.js рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ Marionette.js рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рде рд╡рд┐рд▓рдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЖрдкрдХреЛ рд╣рд░ рдЕрд╡рд╕рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред



рдЕрдм рддрдХ, рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ рдорд░реНрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЯреЗрдореНрдкрд▓реЗрдЯ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ (рдЬреИрд╕реЗ рдмреИрдХрдмреЛрди, рдиреЛрдб, рдПрдХреНрд╕рдкреНрд░реЗрд╕) рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЖрдк рдмреИрдХреЗрдВрдбреНрд╕ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, MongoDB рд╕реЗ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬ рддрдХ) рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░ рдкрд╛рдПрдВрдЧреЗред

Init рдХреЗ рд╕рд╛рде рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ рдФрд░ рдЖрдЬ Heroku рдореЗрдВ рддреИрдирд╛рдд рд╣реИрдВ


рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдХрднреА рдирд╣реАрдВ рд░рд╣рд╛ред рдмрд╕ GitHub рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЬрд╛рдПрдВ , рдирд╡реАрдирддрдо рдХрдорд┐рдЯ рдХреЗ рд╕рд╛рде рд╢рд╛рдЦрд╛ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, рдФрд░ рдлрд┐рд░:

1. рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдПрдВ (рдпрд╛ рдХрд┐рд╕реА рдореМрдЬреВрджрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ)ред

2. рдЧрд┐рдЯ рдЗрдирд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдмрдирд╛рдПрдВ (рдпрд╛ рдХрд┐рд╕реА рдореМрдЬреВрджрд╛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ)ред

3. рдПрдХ рджреВрд░рд╕реНрде init рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЬреЛрдбрд╝реЗрдВ

git remote add init git://github.com/picanteverde/init.git

4. рдЗрдЪреНрдЫрд┐рдд рд╢рд╛рдЦрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред

git pull init usermanager

5. рд╣реЗрд░реЛрдХреВ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдлрд╝рд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ

git pull init heroku

6. Heroku Toolbelt рдЗрдВрд╕реНрдЯреЙрд▓ рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде, Heroku рдРрдк рдмрдирд╛рдПрдВ

heroku create

7. рдЕрдкрдиреА рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛ рдХреЛ рд╣рд░реЛрдХреВ рднреЗрдЬреЗрдВ

git push heroku master

8. рдЕрдкрдиреЗ рдореМрдЬреВрджрд╛ рд╣рд░реЛрдХреВ рдРрдк рдкрд░ рдЬрд╛рдПрдВ!

рдЕрдм рдЖрдк рдХреЛрдб рдХреА рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╣рддреНрдпрд╛рд░реЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрд╕реА рд╕рдордп, рдЖрдк рдирд╡реАрдирддрдо рдФрд░ рд╕рдмрд╕реЗ рдкреНрд░рднрд╛рд╡реА рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рд╕рдВрдЪрд╛рд▓рди рдХрд░реЗрдВрдЧреЗ, рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рддред

рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдирдП рдмрдбрд╝реЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдирд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдФрд░ рдмрдЧ рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЗрдирд┐рдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реИред рдЦреИрд░, рдореИрдВ рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

Source: https://habr.com/ru/post/In213265/


All Articles