Ember.js: (рдлрд┐рд░ рд╕реЗ) рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп

рдореИрдВрдиреЗ рдпрд╣ рд▓реЗрдЦ рдмрд░реНрд▓рд┐рди рдХреА рдЬреЗрдПрд╕ рдмреИрдардХ рдореЗрдВ рдХреА рдЧрдИ рдкреНрд░рд╕реНрддреБрддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рд┐рдЦрд╛ рдерд╛ред рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд▓реЛрдХрдкреНрд░рд┐рдп рдФрд░ рд╕реНрдерд┐рд░ рдврд╛рдВрдЪреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд░реВрд╕реА-рднрд╛рд╖рд╛ рдХреА рд╕рд╛рдордЧреНрд░рд┐рдпрд╛рдВ рд╣реИрдВ, рдФрд░ рдореИрдВрдиреЗ рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рдереЛрдбрд╝рд╛ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред


рдЖрдк рдПрдХ рдмрд╛рд░ Ember.js рд╕реАрдЦрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЗрд╕ рдЬреНрдЮрд╛рди рдХреЛ рд╕рднреА Ember.js рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕ рдереАрд╕рд┐рд╕ рдХреЛ рдХрдЯ рдХреЗ рдиреАрдЪреЗ рдкреНрд░рдХрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред


рдореИрдВ рдФрд░ рдПрдореНрдмрд░ред рдЬреЗ.рдПрд╕.


рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВред рдореИрдВрдиреЗ рдкрд╣рд▓реА рдмрд╛рд░ рдПрдХ рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдиреА рдкрд╣рд▓реА рдиреМрдХрд░реА 2014 рдореЗрдВ Ember.js рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдереАред рддрдм MVC рдкреНрд░рддрд┐рдорд╛рди рдореЗрдВ рдврд╛рдВрдЪрд╛ рддрдм рднреА рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЙрд╕рдиреЗ CLI рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рдЕрдзрд┐рдХ рдЕрдиреБрднрд╡ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг, рддрд╛рдХрдд рдФрд░ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХрд╛ рдиреНрдпрд╛рдп рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдерд╛ред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореЗрд░реЗ рдЗрдВрдкреНрд░реЗрд╢рди рдХреЛ рдЗрд╕ 2013 рд▓рд╛рдЗрд╡ рд▓рдбрд╝рд╛рдИ рд╕реЗ Ember.js рдФрд░ Angular.js рдХреЗ рдмреАрдЪ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрд╡рдЧрдд рдХрд░рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рдВ, Google рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЖрдЙрдЯ рдСрдл рдмреЙрдХреНрд╕ рдереЗ, рд▓реЗрдХрд┐рди Ember рдореЗрдВ рдерд░реНрдб-рдкрд╛рд░реНрдЯреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдЬреИрд╕реЗ datatables.net рдЬреИрд╕реЗ рдХреНрд╖рдг.js рдпрд╛ jQuery рдкреНрд▓рдЧрдЗрдиреНрд╕, рдЬрд┐рд╕рдиреЗ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛ рдмрдирд╛ рджрд┐рдпрд╛ред


рдлрд┐рд░ рдореИрдВ рджреВрд╕рд░реА рдХрдВрдкрдиреА рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛ рдФрд░ Can.js рдФрд░ React.js рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рд▓ рддрдХ рдХрд╛рдо рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди 2016 рдореЗрдВ рдореБрдЭреЗ рдЪреБрдирдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдорд┐рд▓рд╛, рдФрд░ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкреБрд░рд╛рдиреЗ рджреЛрд╕реНрдд рдХреЛ рдореМрдХрд╛ рджрд┐рдпрд╛ред рдЙрд╕ рд╕рдордп рддрдХ, рдкреНрд░рддрд┐рдорд╛рди рдбреЗрдЯрд╛ рдбрд╛рдЙрди рдПрдХреНрдЯреНрд╕ рдЕрдк рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ рдерд╛, рд╕реЗрд╡рд╛рдПрдВ рдФрд░ рдШрдЯрдХ рджрд┐рдЦрд╛рдИ рджрд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╕рдм рдХреБрдЫ рдкрд░рд┐рдЪрд┐рдд рдФрд░ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред


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


рдПрдореНрдмрд░ рдХреНрдпреЛрдВ?


Npm 2018 рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдХрдИ рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ js рд╕рдореБрджрд╛рдп рдХреА рдХреБрдЫ рдердХрд╛рди рджрд░реНрдЬ рдХреА рдЧрдИ:


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

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


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


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


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

рдХреНрдпрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рддрд╛ рд╣реИ


рдЖрдк рдПрдХ рдмрд╛рд░ Ember.js рд╕реАрдЦрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЗрд╕ рдЬреНрдЮрд╛рди рдХреЛ рд╕рднреА Ember.js рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред ... Ember рдХреЗ рд╕рд╛рде рдЖрдкрдХреЛ рдкреВрд░рд╛ рдЕрдиреБрднрд╡ рдорд┐рд▓рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдРрдб-рдСрди рдмрдирд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рд╣реА рдЙрдкрдХрд░рдг рдХреЗ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд┐рдХрд╛рд╕рд╢реАрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рдирд╕рд┐рдХ рдКрд░реНрдЬрд╛ рдХреА рдмрдЪрдд рдХрд░рдирд╛, рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рдХреЛ рддреИрдирд╛рдд рдХрд░рдирд╛ рдпрд╛ рд╕рддреНрдпрд╛рдкрди рдпреЛрдЧреНрдп рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдПрдХ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИред

рдЖрдЧреЗ рдореИрдВ рд╕рдордЭрд╛рдКрдВрдЧрд╛ рдХрд┐ рдПрдореНрдмрд░ рдХреЗ рд╕рд╛рде рдЖрдкрдХреЛ рдпрд╣ рдкреВрд░рд╛ рдЕрдиреБрднрд╡ рдХреНрдпреЛрдВ рдорд┐рд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рд╣рдо рдПрдХ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджреЗрдВрдЧреЗред


рдХреНрдпрд╛ рд╡рд╣ рдЬреАрд╡рд┐рдд рднреА рд╣реИ?


рдЖрдЬрдХрд▓, рдЖрдк рд╢рд╛рдпрдж рд╣реА рдХрднреА рдПрдХ рд▓рд╛рдЗрд╡ рдЬреЗрдПрд╕-рдлреНрд░реЗрдорд╡рд░реНрдХ рджреЗрдЦрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдкрд┐рдЫрд▓реЗ 5 рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдирд╣реАрдВ рд░реБрдХрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдПрдореНрдмрд░ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред


рд╕рдХреНрд░рд┐рдп рд╡рд┐рдХрд╛рд╕ рдХрднреА рдирд╣реАрдВ рд░реБрдХрд╛, рд▓реЗрдХрд┐рди рдЕрдиреБрдХреВрд▓рди 2016 рдореЗрдВ рд╕реНрдерд┐рд░ рд╣реЛ рдЧрдпрд╛ред рдпрджрд┐ рд╣рдо рдЙрд╕реА Npm 2018 рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдХреА рдУрд░ рдореБрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд╛рд░реНрдЯ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:


Npm рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдореЗрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдПрдХ рдврд╛рдВрдЪреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ


рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ, 2017 рдореЗрдВ рдЙрд▓рдЯрд╛ рд╣реБрдЖ, рдФрд░ рдПрдореНрдмрд░ рдлрд┐рд░ рд╕реЗ рдмрдврд╝рдиреЗ рд▓рдЧрд╛, рдФрд╕рдд рдЧрддрд┐ рд╕реЗ рдЖрдЧреЗред рдЗрд╕ рдШрдЯрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рд╡реНрдпрд╛рдЦреНрдпрд╛ рд╣реИред 2017 рдореЗрдВ, рд▓рд┐рдВрдХреНрдбрдЗрди рдиреЗ рдЕрдкрдиреЗ рдореБрдЦреНрдп рд╕рд╛рдЗрдЯ рдХреЗ рджреЛрдиреЛрдВ (рдбреЗрд╕реНрдХрдЯреЙрдк рдФрд░ рдореЛрдмрд╛рдЗрд▓) рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Ember.js рдХреЛ рдлрд┐рд░ рд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рдиреЗ рдФрд░ рдЪреБрдирдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдЗрд╕ рдШрдЯрдирд╛ рдиреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдКрд░реНрдЬрд╛ рдкреНрд░рджрд╛рди рдХреА рдФрд░ рд╡рд░реНрддрдорд╛рди рдкреНрд░рд╡реГрддреНрддрд┐ рдмрдирд╛рдИред


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


рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд░реВрдкрд░реЗрдЦрд╛ рдЬреАрд╡рд┐рдд рдФрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╣реЛрддреА рд╣реИ)ред


рдЕрдиреНрдп рдЬреЗрдПрд╕ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдПрдореНрдмрд░


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


рдПрд╕рдкреАрдП рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ Ember.js


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


рдХреНрдпрд╛ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдЧрд╛?


React.js


рдпрджрд┐ рдЖрдк React.js рдХреА рджреБрдирд┐рдпрд╛ рд╕реЗ рдЖрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдкреГрд╖реНрда рдХреЗ рдЯреВрдЯрдиреЗ рд╕реЗ рдШрдЯрдХреЛрдВ рдХреЗ рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдВрдЧреЗред рдПрдореНрдмрд░ рдореЗрдВ, рдЖрдк рдпрд╣ рднреА рд╕реЛрдЪреЗрдВрдЧреЗ рдХрд┐ рдЖрдкрдХреЗ рдкреЗрдЬ рдХреЛ рдШрдЯрдХреЛрдВ рдореЗрдВ рддреЛрдбрд╝рдиреЗ рдФрд░ рдЙрдирдореЗрдВ рд╕реНрдерд╛рдиреАрдп рд░рд╛рдЬреНрдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рдЕрд▓рдЧ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИред
рдпрджрд┐ рдЖрдк рд░рд┐рдПрдХреНрдЯ-рд░рд╛рдЙрдЯрд░ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рддреЛ рдПрдореНрдмрд░ рдореЗрдВ рд░рд╛рдЙрдЯрд░ рднреА рдЖрдкрдХреЛ рдкрд░рд┐рдЪрд┐рдд рд▓рдЧреЗрдЧрд╛ред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рд░рд┐рдПрдХреНрдЯрд░ рд░рд╛рдЙрдЯрд░ рдХреЛ рдЗрдорд░реНрд╕ рд╕реЗ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрдм рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЕрдкрдирд╛ рдЬреАрд╡рди рдЬреА рд░рд╣реА рд╣реИред
рдЕрдВрдд рдореЗрдВ, рдпрджрд┐ рдЖрдк Redux рдФрд░ / рдпрд╛ рдЧреНрд░рд╛рдлрдХреЙрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рд╣рдЬ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЙрдиреНрд╣реЗрдВ Ember.js ( рдпрд╣рд╛рдВ рдФрд░ рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ ) рдХреЗ рд╕рд╛рде рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдирд╡реАрдирддрдо EmberConf рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рдПрдореНрдмрд░ рдХреЗ рд▓рд┐рдП рдкреИрдЯрд░реНрди рдкрд░ рдПрдХ рдкреНрд░рд╕реНрддреБрддрд┐ рдереАред


Vue.js


рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдЖрдк, рд╕рд╛рде рд╣реА рд░рд┐рдПрдХреНрдЯ рдХреЗ рд▓реЛрдЧ, рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рдШрдЯрдХреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рдкреНрд░рддрд┐рдорд╛рди рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдВрдЧреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдФрд░ рдЧрдгрдирд╛ рдХрд┐рдП рдЧрдП рдЧреБрдгреЛрдВ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдВрдЧреЗред


Angular.js


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


рдХреНрдпрд╛ рдЕрдкрд░рд┐рдЪрд┐рдд рд╣реЛрдЧрд╛?


рдЕрдм рд╣рдо рдЙрди рднрд╛рдЧреЛрдВ рдХреА рдУрд░ рдмрдврд╝рддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдкрд░рд┐рдЪрд┐рдд рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЬрд┐рдирд╕реЗ рдкреНрд░рд╢реНрди рдЙрдардиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред


рдПрдореНрдмрд░-рдХреНрд▓рд┐, рд╡реЗрдмрдкреИрдХ рдирд╣реАрдВ


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


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


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


рд╣рд╛рд░реНрдб рдлрд╝рд╛рдЗрд▓ рд╕рдВрд░рдЪрдирд╛


рдпрд╣ рдХреНрд╖рдг рдЕрдХреНрд╕рд░ рд░реВрдкрд░реЗрдЦрд╛ рд╕реЗ рдЕрдкрд░рд┐рдЪрд┐рдд рд▓реЛрдЧреЛрдВ рдХреЛ рд╕рджрдореЗ рдореЗрдВ рдлреЗрдВрдХ рджреЗрддрд╛ рд╣реИред рдорд╛рдирдХ рдПрдореНрдмрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдлрд╝рд╛рдЗрд▓ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рджреЗрдЦреЗрдВ:


рдПрдореНрдмрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдлрд╝рд╛рдЗрд▓ рд╕рдВрд░рдЪрдирд╛


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


рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░рддрд┐рдмрдВрдз рдХреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣рд╛рдБ рд╕рдмреВрдд рд╣реИ:
рдЗрдВрдЯрд░рдиреЗрдЯ рдХрд╛ рдкреНрд░рдорд╛рдг


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


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


рдРрдб-рдСрди (рдРрдб-рдСрди)


рд╕рдордп рдиреЗ рджрд┐рдЦрд╛рдпрд╛ рд╣реИ рдХрд┐ рдХрдареЛрд░ рдлрд╝реЛрд▓реНрдбрд░ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдирд┐рд░реНрдгрдп рдХрд╛ рдПрдХ рдФрд░ рдлрд╛рдпрджрд╛ рд╣реИред рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдкреНрд░рдХрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред


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


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


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


рдРрдб-рдСрди рд╣реИрдВ рдХрд┐ рдХреИрд╕реЗ рдПрдореНрдмрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреВрд╕рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдРрдб-рдСрди рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рд╣рд░ рдХреЛрдИ рдПрдХ рд╣реА рд╕реЗрдЯ рдХрд╛ рдХрдо рдпрд╛ рдЬреНрдпрд╛рджрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЬрдм рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдерд╛рдкрд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдЖрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк 90% рдРрдб-рдСрди рдЬрд╛рдирддреЗ рд╣реИрдВ рдЬреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЖрдкрд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдк рдЕрдкрдиреЗ рдЬреАрд╡рди рдореЗрдВ рдкрд╣рд▓реА рдмрд╛рд░ рдЗрд╕рдХрд╛ рдХреЛрдб рджреЗрдЦреЗрдВред


рдмреАрдИ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░


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


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


рдбреАрдПрд╕рдПрд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдПрдореНрдмрд░-рдбреЗрдЯрд╛


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


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


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


рдХрд╣рд╛рдБ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ?


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


рд╡рд╣ рдзреАрд░реЗ-рдзреАрд░реЗ рдЖрдкрдХреЛ рд╕рднреА рдореБрдЦреНрдп рдмрд┐рдВрджреБрдУрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░рд╛рдПрдЧрд╛:


  • рдПрдореНрдмрд░-рдХреНрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреИрд╕реЗ рдмрдирд╛рдПрдВ
  • рдХреИрд╕реЗ рдШрдЯрдХ, рдкрде, рдореЙрдбрд▓, рдЖрджрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП
  • рдПрдореНрдмрд░-рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ
  • рдПрдХ рдЬрдЯрд┐рд▓ рдШрдЯрдХ рдХреИрд╕реЗ рд▓рд┐рдЦреЗрдВ
  • рддреГрддреАрдп-рдкрдХреНрд╖ рд▓рд╛рдпрдмреНрд░реЗрд░реА рдХреЛ рдПрдореНрдмреЗрдб рдХреИрд╕реЗ рдХрд░реЗрдВ
  • рдХреИрд╕реЗ рддреИрдирд╛рдд рдХрд░реЗрдВ

рдХрд╣рд╛рдВ рд╕реЗ рдорд╛рдВрдЧреЗ?


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


рдЕрдиреНрдп рд╕рдВрдЪрд╛рд░ рдЪреИрдирд▓ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред


рдЕрджреНрдпрддрди: рд░реВрд╕реА рдореЗрдВ, рдЖрдк рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рдЪреИрдирд▓ ember_js рдореЗрдВ рдПрдореНрдмрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫ рд╕рдХрддреЗ рд╣реИрдВ


рдЕрдВрддрднрд╛рд╖рдг


рдлрд╛рдЗрдирд▓ рдореЗрдВ, рдореИрдВ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдореБрдЦреНрдп рдереАрд╕рд┐рд╕ рдкрд░ рдЬреЛрд░ рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдЖрдк рдПрдХ рдмрд╛рд░ Ember.js рд╕реАрдЦрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЬреНрдЮрд╛рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ ред


рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

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


All Articles