рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдХреНрд▓рд╛рдЙрдб рдмреИрдХреЗрдВрдб рдХрд░реЗрдВред рднрд╛рдЧ реи



рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ, рдореИрдВрдиреЗ Windows Azure рдХреНрд▓рд╛рдЙрдб рдореЗрдВ RESTful API рдмрдирд╛рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдФрд░ рдЕрдкрдиреЗ рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреАред рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдЙрд╕ рд▓реЗрдЦ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░рд╛рдПрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╛рда рдФрд░ рдЙрджрд╛рд╣рд░рдг рдЗрд╕ рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВред

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

рд╡рд┐рдВрдбреЛрдЬ рдПрдЬрд╝реНрдпреЛрд░ рдФрд░ рдЧрд┐рдЯ


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

Windows Azure рдореЛрдмрд╛рдЗрд▓ рд╕реЗрд╡рд╛ рдиреЗ рдЖрдЧреЗ рдЬрд╛рдиреЗ рдФрд░ рдХреЗрд╡рд▓ Git рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд╢рд╛рдпрдж рдпрд╣ рдХреЗрд╡рд▓ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЗ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рд╣реИ, рд▓реЗрдХрд┐рди, рдирд┐рдЧрдо рдХреЗ рд░реБрдЭрд╛рдиреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдпрд╣ рд╡рд┐рдХрд▓реНрдк рд░рд┐рд▓реАрдЬ рдХреА рдУрд░ рдкрд▓рд╛рдпрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред

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

рдЕрдкрдиреА рд╕реЗрд╡рд╛ рдореЗрдВ Git рд╕рдХреНрд╖рдо рдХрд░реЗрдВ


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

Windows Azure рдореЛрдмрд╛рдЗрд▓ рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ Git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдмрдирд╛рдПрдБ

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

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

рд╡рд┐рдВрдбреЛрдЬ рдПрдЬрд╝реНрдпреЛрд░ рдореЗрдВ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди

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

рд╕рд░реНрд╡рд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдХреНрд▓реЛрди рдХрд░рдХреЗ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

git clone <URL_> 

рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдПрдХ рднрдВрдбрд╛рд░ рдХрд╛ рдХреНрд▓реЛрдирд┐рдВрдЧ
рдЖрдкрдХреЛ рдХреНрд▓рд╛рдЙрдб рд╕реЗрд╡рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ GIT URL рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ URL рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЖрдкрдХреЛ Git рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рднреА рджрд░реНрдЬ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА (рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдирд╣реАрдВ рдерд╛, рддреЛ Git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рдкрд╣рд▓реЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ, WIndows Azure рдЗрд╕ рдЬреЛрдбрд╝реА рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░реЗрдЧрд╛)ред рдкрд░рд┐рдгрд╛рдо рдиреАрдЪреЗ рджреА рдЧрдИ рдЫрд╡рд┐ рдХреА рддрд░рд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдХреНрд▓реЛрдирд┐рдВрдЧ рд░рд┐рдЬрд▓реНрдЯ

рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рд╕рдВрд░рдЪрдирд╛


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

 $ ls api extensions package.json scheduler shared table 

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

рдПрдкреАрдЖрдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛

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

 $ ls coolapi.js coolapi.json readme.md 

Readme.md рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИ рдФрд░ рдмрд╕ рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, js-рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рдпрд╣рд╛рдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреЛрдб рдХреЗ рд╕рд╛рде рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП, рдПрдХ .json рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ API рдХреЗ рдПрдХреНрд╕реЗрд╕ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреА рд╣реИред рдЖрдЗрдП рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рджреЗрдЦреЗрдВред рдиреАрдЪреЗ coolapi.js рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рд╣реИ:

 exports.post = function(request, response) { // Use "request.service" to access features of your mobile service, eg: // var tables = request.service.tables; // var push = request.service.push; response.send(statusCodes.OK, 'Hello World!'); }; exports.get = function(request, response) { var result = {type: 'message', data: 'Hello World!'}; response.send(statusCodes.OK, result); }; 

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд╝рд╛рдЗрд▓ рдмрд┐рд▓реНрдХреБрд▓ рдЙрд╕ рдХреЛрдб рдХреЛ рджреЛрд╣рд░рд╛рддреА рд╣реИ рдЬреЛ рд╣рдордиреЗ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╕реАрдзреЗ рд╡рд┐рдВрдбреЛрдЬ рдПрдЬрд╝реНрдпреЛрд░ рдХрдВрдЯреНрд░реЛрд▓ рдкреИрдирд▓ рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛ред рдФрд░ рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдПрдкреАрдЖрдИ рдХреЗ рдкреАрдЫреЗ рдПрдХ рд╕рд░рд▓ js-script рд╣реЛрддреА рд╣реИ рдЬреЛ Node.js рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХрд╛рдо рдХрд░рддреА рд╣реИред

Coolapi.json рдлрд╝рд╛рдЗрд▓ рдереЛрдбрд╝реА рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдЗрд╕ рд░реВрдк рдореЗрдВ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ рдкрд╣рд▓реЗ рджреЗрдЦрд╛ рдерд╛:

 { "routes": { "*": { "get": {"permission":"application"}, "post": {"permission":"application"}, "put": {"permission":"application"}, "patch": {"permission":"application"}, "delete": {"permission":"application"} } } } 

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



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

 git commit . -m "My first Git commit" git push 

рдкрд░рд┐рдгрд╛рдо рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

рдкреБрд╢ рдкреБрд╢ рдкрд░рд┐рдгрд╛рдо

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

рдЕрдм, рдпрджрд┐ рдЖрдк рдореЛрдмрд╛рдЗрд▓ рд╕реЗрд╡рд╛ рдкреНрд░рдмрдВрдзрди рдкреЛрд░реНрдЯрд▓ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ API рдХреЗ рд▓рд┐рдП рдХреЛрдб рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:

Git рдкреБрд╢ рд░рди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдкреЛрд░реНрдЯрд▓ API рдХреЛрдб

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

рдЬреАрдИрдЯреА рдПрдкреАрдЖрдИ рдСрдкрд░реЗрд╢рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо

рдЯреЗрдмрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛

рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЗрд╕рдХреЗ рдирд╛рдо рд╕реЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреБрдЫ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдореЛрдмрд╛рдЗрд▓ рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдЙрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдбреЗрдЯрд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдпрд╣рд╛рдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИрдВ (рдЬреЛ Git рдХреЗ рд▓рд┐рдП рддрд╛рд░реНрдХрд┐рдХ рд╣реИ), рд▓реЗрдХрд┐рди рдХреЛрдб рдЬреЛ рдбрд╛рд▓рдиреЗ / рд╣рдЯрд╛рдиреЗ / рд░рд┐рдХреЙрд░реНрдб рдмрджрд▓рдиреЗ рдХреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ (рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдВ рдФрд░ рдпрд╣рд╛рдВ рдкрдврд╝реА рдЬрд╛ рд╕рдХрддреА рд╣реИ )ред рдореИрдВрдиреЗ MyTable рдирд╛рдордХ рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдИ рдФрд░ рдЙрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдереЛрдбрд╝рд╛ рд╕рд╣реА рдХрд┐рдпрд╛ рдЬреЛ рд╕рдореНрдорд┐рд▓рд┐рдд рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдФрд░ рдпрд╣рд╛рдВ рдореБрдЭреЗ рдЯреЗрдмрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИ:

 $ ls MyTable.json mytable.insert.js readme.md 

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

рд╕рд╛рдЭрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛

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

рдпрд╣рд╛рдБ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИред рд╕рд╛рдЭрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ mysared.js рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:

 exports.someSharedMethod = function () { return 'Hello from Shared!'; } 

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

 exports.get = function(request, response) { var myshared = require('../shared/myshared.js'); response.send(statusCodes.OK, myshared.someSharedMethod); }; 

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

рдЕрдиреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛

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

рдПрдирдкреАрдПрдо рдкреИрдХреЗрдЬ


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

рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдЖрдк Windows Azure рдореЛрдмрд╛рдЗрд▓ рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ NPM рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ package.json рдлрд╝рд╛рдЗрд▓ (рдЬреЛ рдПрдкреАрдЖрдИ, рддрд╛рд▓рд┐рдХрд╛, рдЖрджрд┐ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рдорд╛рди рд╕реНрддрд░ рдкрд░ рд╣реИ) рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдореЙрдбреНрдпреВрд▓ (Node.js рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рддрд░реАрдХреЗ рд╕реЗ, рдирд┐рд░реНрднрд░рддрд╛ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ) рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдХреЗ рдФрд░ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд░реНрд╡рд░ рдкрд░ рд╡рд╛рдкрд╕ рд▓рд╛рдХрд░, рд╣рдо Windows Azure рдХреЛ рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдХрд░реЗрдВрдЧреЗред рдпрд╣ рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИ рдФрд░ рдЖрдк рд╕рдореБрджрд╛рдп рдХреА рд░рдЪрдирд╛рдУрдВ рдХрд╛ рдкреВрд░рд╛ рд▓рд╛рдн рдЙрдард╛ рд╕рдХрддреЗ рд╣реИрдВред

рдирд┐рд╖реНрдХрд░реНрд╖


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

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

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

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


All Articles