рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ - рдЦреЛрдпрд╛

рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреБрдЫ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ - рдХреНрд░рдорд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд▓рд┐рдЦрддреЗ рд╕рдордп рдЬреЛ рдПрдХ рдХреЗ рдмрд╛рдж рдПрдХ рдХрджрдо рдЙрдард╛рддрд╛ рд╣реИред



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



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



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



рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдореБрджрд╛рдп рдЗрд╕рд╕реЗ рдЕрд╡рдЧрдд рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдиреЛрдб.рдЬреЗрдПрд╕ рд╕рдореБрджрд╛рдп, рдХреНрдпреЛрдВрдХрд┐ рдиреЛрдб.рдЬреЗрдПрд╕ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдХреЛрдб рдкрд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реИред



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

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



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



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



рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, InfoQ рдиреЗ c рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд┐рдпрд╛:





InfoQ: рдЖрдкрдХреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд┐рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИ? рдпрд╣реА рд╣реИ, рдпрд╣ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛрдб рдХреЛ рд╣рдЯрд╛рдиреЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдЗрдирдкреБрдЯ / рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдореИрдиреБрдЕрд▓ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдмрдЪрддрд╛ рд╣реИ, рдпрд╛ рдпрд╣ рдЖрдЪрд░рдг рдпрд╛ рдЕрдиреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдирдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рд╕рд╛рде рдХрдИ I / O рдХреЙрд▓ рдХреА рдПрдХ рд╕рд╛рде рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,) рдФрд░ рдЗрд╕реА рддрд░рд╣)ред



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



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



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



рдореИрдВрдиреЗ рдЗрди рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ рдпрд╣рд╛рдВ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╕рдордЭрд╛рдпрд╛ред



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



рд╡реИрд╕реЗ, рд╕рд┐рд░реНрдл рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рд╡рд╛рджрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ io рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдиреЛрдб-рд╡рд╛рджрд╛ рдХрд╛ рдЙрддреНрддрд░рд╛рдзрд┐рдХрд╛рд░реА рд╣реИред рдЗрд╕рдореЗрдВ рдПрдХ рд╣реА рдХреЛрд░ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╛рджрд╛ рдХрд┐рдпрд╛-io рдореЗрдВ рд╡рд╛рджреЛрдВ рдХреА рд╢реИрд▓реА рдореЗрдВ NodeJS I / O рдлрд╝рдВрдХреНрд╢рдВрд╕ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдФрд░ рдЗрд╕рдореЗрдВ рдПрдХ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝реЗрд╢рди рд▓реЗрдпрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ, рдЬреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рд╕рдорд╛рди рдлрд╝рдВрдХреНрд╢рдВрд╕ рддрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред



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



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



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

async.readdir(__dirname) .stat() .filter(function(file) { return file.stat.isFile() }) .readFile("utf8") .each(function(file) { console.log(file.data); }) .end(function(err) { if (err) console.log("ERROR: ", err); else console.log("DONE"); });
      
      



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



AJ (FuturesJS) : рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдФрд░ рдШрдЯрдирд╛-рдЪрд╛рд▓рд┐рдд рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИред



рдореИрдВрдиреЗ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рд╡рд╛рдпрджрд╛ рдХрд┐рдпрд╛ рдерд╛:



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




Futures.future рдФрд░ Futures.fterence рдмрд╕ рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рдХреЛрдб рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХреБрдЫ рд▓рдЪреАрд▓рд╛рдкрди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред



Futures.join рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЙрд╕реА рддрд░рд╣ рдЬреИрд╕реЗ рдХрд┐ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдереНрд░реЗрдбреНрд╕ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ) рдпрд╛ рднрд╡рд┐рд╖реНрдп рдХреА рдХрдИ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝ (рдШрдЯрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП)ред



Futures.chainify рдЯреНрд╡рд┐рдЯрд░ рдХрд╣реАрдВ рднреА рдПрдкреАрдЖрдИ рдХреЗ рд╕рдорд╛рди, рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдореЙрдбрд▓ рдмрдирд╛рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред



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



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





InfoQ: рдХреНрдпрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрдВрдкреНрдпреВрдЯрд░ рд╡рд┐рдЬреНрдЮрд╛рди рд╡реИрдЬреНрдЮрд╛рдирд┐рдХреЛрдВ рдХреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ?

рдЯрд┐рдо (рдЪрд░рдг) : рдкреНрд░рддреНрдпрдХреНрд╖ - рдХреБрдЫ рднреА рдирд╣реАрдВред



рд╡рд┐рд▓ (рдлреНрд▓реЛ-рдЬреЗрдПрд╕) : рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рд╣реИред рдпрд╣ рд╡реНрдпрд╡рд╕рд╛рдп рддрд░реНрдХ рдмрдирд╛рдиреЗ рдкрд░ рдореЗрд░реА рдкрд╣рд▓реА рд╣рд┐рдЯ рдереА, рдЬреЛ рдХрд┐ Node.js. рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХрдИ рд╕рдордХрд╛рд▓рд┐рдХ рдХреЙрд▓ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ



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



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



рдлреИрдмрд┐рдпрди (рдЕрд╕рд┐рдирдЬреЗрд╕) : рдПрд╕рд┐рдВрдирдЬреИрдЬ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣рд╛рд╕реНрдХреЗрд▓ рдореЛрдирд╛рдбреНрд╕ рдХреА рдпрд╛рдж рддрд╛рдЬрд╛ рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рджреБрд░реНрдШрдЯрдирд╛ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдЕрдзрд┐рдХ рд╣реИред





рдП рдЬреЗ (FuturesJS) : рд╣рд╛рдБред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рд╛:



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



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





InfoQ: рдХреНрдпрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд┐рд╕реА рднреА рддреНрд░реБрдЯрд┐ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреА рд░рдгрдиреАрддрд┐ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ? рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдлреЗрдВрдХрдиреЗ рдХреЗ рд╕рд╛рде рдпрд╣ рдХреИрд╕реЗ рдмрд╛рддрдЪреАрдд рдХрд░рддрд╛ рд╣реИ?



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



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



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



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



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



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



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



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



рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП {} рдХреИрдЪ (рдИ) {} рдкреНрд░рдпрд╛рд╕ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╣реИ, рдФрд░ рд╕рдордп рдореЗрдВ рдХреБрдЫ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдмрд┐рдВрджреБ рдкрд░ рдЖрд╡реЗрджрди рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рдмрдЬрд╛рдп рддреНрд░реБрдЯрд┐ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╣реИред Futures.asyncify () рдПрдХ рдкреНрд░рдореБрдЦ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реИред



рдпрд╣рд╛рдБ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ:
 (function () { "use strict"; var Futures = require('futures'), doStuffSync, doStuff; doStuffSync = function () { if (2 % Math.floor(Math.random()*11)) { throw new Error("Some Error"); } return "Some Data"; }; doStuff = Futures.asyncify(doStuffSync); doStuff.whenever(function (err, data) { if (err) { console.log(err); return; } console.log(data); }); doStuff(); doStuff(); doStuff(); doStuff(); }());
      
      







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





InfoQ: рдХреНрдпрд╛ рдХреЛрдИ рдкреНрд░реЗрд░рдгрд╛ рдереА рдпрд╛ рдЖрдкрдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдХрд┐рд╕ рдкреНрд░рднрд╛рд╡ рдХреЗ рддрд╣рдд рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдл # рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝, рдЖрд░рдПрдХреНрд╕ (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕реНрдХрд░рдг), рдпрд╛ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ)?



рдЯрд┐рдо (рдЪрд░рдг) : рд╣рд╛рдВ, рд╢реИрд▓реА рд╕реАрдзреЗ рдлреНрд▓реЛ-рдЬреЗрдПрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдЙрдзрд╛рд░ рд▓реА рдЧрдИ рдереАред



рд╡рд┐рд▓ (рдлреНрд▓реЛ-рдЬреЗрдПрд╕) : рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВред рдпрд╣ рд╕рд┐рд░реНрдл рдкрд╣рд▓рд╛ рдирд┐рд░реНрдгрдп рдерд╛ рдЬреЛ рдореЗрд░реЗ рд╕рд╛рде рд╣реБрдЖред



рдХреНрд░рд┐рд╕ рдЬрд┐рдк (рдиреЛрдб-рд╡рд╛рджрд╛) : рдиреЛрдб-рд╡рд╛рджрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдорд╛рд░реНрдХ рдорд┐рд▓рд░ рдХреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдИ рдФрд░ рдЙрд╕рдореЗрдВ рд╡рд╛рджреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдерд╛, рдЯрд╛рдпрд▓рд░ рдХреНрд▓реЛрдЬ рд░рд┐рдл_рд╕реЗрдВрдб рд▓рд╛рдЗрдмреНрд░реЗрд░реА, рдХреНрд░рд┐рд╕ рдХреНрд░реЛрд╡рд╛рд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреНрдпреВ, рдиреАрд▓ рдорд┐рдХреНрд╕ рдирд░реНрд░реАрдЬ рдЬреЗрдПрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА, рдЯреНрд╡рд┐рд╕реНрдЯреЗрдб рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ рдбрд┐рдлрд░реНрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред Dojo, рдФрд░ рдХрдИ рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпред



Caolan (Async) : рдореБрдЭреЗ рдбрд░ рд╣реИ рдХрд┐ рдЪреВрдВрдХрд┐ рдореИрдВрдиреЗ F # рдпрд╛ Rx рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рд░реБрдЦ рд╡реНрдпрдХреНрдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВрдиреЗ рдЕрдВрдбрд░рд╕реНрдХрдХреЛрд░ рд╕реЗ рдкреНрд░реЗрд░рдгрд╛ рд▓реА, рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИред рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреЙрд▓рдмреИрдХ рдХреЗ рд╕рд╛рде рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдПрд╕рд┐рдХреНрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред



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



AJ (FuturesJS) : рддреБрд░рдВрдд рдирд╣реАрдВ, рдирд╣реАрдВред



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



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



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



рдмрд╛рдж рдореЗрдВ рдореИрдВрдиреЗ Node.JS рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛, рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдореИрдВрдиреЗ рдЕрдкрдиреА рддреНрд░реБрдЯрд┐ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреА рд░рдгрдиреАрддрд┐ рдмрджрд▓ рджреА (рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рдкреНрд░рд▓реЗрдЦрди рдХреЛ рдЕрджреНрдпрддрди рдХрд┐рдпрд╛)ред рдлреНрдпреВрдЪрд░реНрд╕ 2.0 рдореЗрдВ, рдЬрд┐рд╕реЗ рдореИрдВ рдЗрд╕ рд░рд╡рд┐рд╡рд╛рд░ рдХреЛ рдЬрд╛рд░реА рдХрд░реВрдВрдЧрд╛, рдореИрдВрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП Node.JS рд╕реЗ рдПрдХ EventEmitter рднреА рдЬреЛрдбрд╝рд╛ред



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



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





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



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



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



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



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



рд╡реИрд╕реЗ, рдПрдХ рдФрд░ рдзреНрдпрд╛рди рджреЗрдВ - рдиреЛрдб-рд╡рд╛рджрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рднреА http://wiki.commonjs.org/wiki/Promises/A рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд, рдпрд╣ Dojo рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░, рд╢рд╛рдпрдж, рднрд╡рд┐рд╖реНрдп рдХреЗ JQuery рдХреЗ рд╡рд╛рджреЛрдВ рдХреЗ рд╕рд╛рдеред



Caolan (Async) : Async рдХреЛ рднрд╛рд╖рд╛ рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕реНрд╡рд░реВрдк рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдПрдХ рдирдИ рднрд╛рд╖рд╛ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд┐рдП рдмрд┐рдирд╛, рдЬреИрд╕рд╛ рдХрд┐ рдХрд╛рдо рдХрд░рдирд╛ рд╣реИред



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





рдлреЗрдмрд┐рдпрди (рдЕрд╕рд┐рдирдЬреЗрд╕) : рдореЛрдЬрд╝рд┐рд▓рд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдЬрдирд░реЗрдЯрд░ рдФрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЛ рдорд╛рдирдХреАрдХреГрдд рдХрд░рдирд╛, рдПрд╕рд┐рдирдЬреЗрд╕ рдХреЛрдб рдХреЛ рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдореБрджреНрджреЛрдВ рдХреЛ рд╕рд░рд▓ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред



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



рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреИрд╕реА рдкреНрд░рд╛рдХреГрддрд┐рдХ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рднрд╛рд╖рд╛ рдХреЗ рдореВрд▓ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рд╡рд╛рдпрджрд╛ рдХреЗ рд╕рдорд╛рди рдХреБрдЫ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред



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



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




All Articles