рдЕрдкрдиреЗ JIT рдХреЛ рдЬрд╛рдиреЗрдВ: рдХрд╛рд░ рдХреЗ рдХрд░реАрдм

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



рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓реЗрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ WASM рдХреЛрдб рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЪрд╛рдВрджреА рдХреА рдЧреЛрд▓реА рд╣реИ, рдФрд░ рдХреНрдпрд╛ рдЕрдиреБрдХреВрд▓рди рд╣рдореЗрд╢рд╛ рдЙрдЪрд┐рдд рд╣реИрдВред

рд╕реНрдкреЛрдЗрд▓рд░: "рдкреНрд░реАрдореЗрдЪреНрдпреЛрд░ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рд╕рднреА рдмреАрдорд╛рд░рд┐рдпреЛрдВ рдХреА рдЬрдбрд╝ рд╣реИ," рдбреЛрдирд╛рд▓реНрдб рдиреБрдеред



рд╡рдХреНрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ: рдЖрдВрджреНрд░реЗрдИ рдореЗрд▓рд┐рдЦреЛрд╡ Yandex.Money рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, Node.js рдкрд░ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдХрдо рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрд╕рдХреЗ рдХрд░реАрдм рд╣реИред рдПрдВрдбреНрд░рдпреВ рджреЗрд╡рд╢рд╛рдд рд╕рдореБрджрд╛рдп рдХрд╛ рд╕рдорд░реНрдерди рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП GitHub рдпрд╛ рдорд╛рдзреНрдпрдо рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред

рдкреНрд░реЗрд░рдгрд╛ рдФрд░ рд╢рдмреНрджрд╛рд╡рд▓реА


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

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



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

рд╕рдВрдХрд▓рди рдФрд░ рд╡реНрдпрд╛рдЦреНрдпрд╛

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

рд╡реНрдпрд╛рдЦреНрдпрд╛ - рдЬрдм рд╣рдо рдХреЛрдб рд╡рд┐рддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рд╣реЛрддрд╛ рд╣реИред

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдпрд╣ рдПрдХ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЧрдИ рднрд╛рд╖рд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рдкрд░ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред

рдЧрддрд┐рд╢реАрд▓ рдФрд░ рд╕реНрдерд┐рд░ рдЯрд╛рдЗрдкрд┐рдВрдЧ

рд╕реНрдерд┐рд░ рдФрд░ рдЧрддрд┐рд╢реАрд▓ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдЕрдХреНрд╕рд░ рдХрдордЬреЛрд░ рдФрд░ рдордЬрдмреВрдд рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рднреНрд░рдорд┐рдд рд╣реЛрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, C рд╕реНрдерд┐рд░ рдХрдордЬреЛрд░ рдЯрд╛рдЗрдкрд┐рдВрдЧ рд╡рд╛рд▓реА рднрд╛рд╖рд╛ рд╣реИред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХрдордЬреЛрд░ рдЧрддрд┐рд╢реАрд▓ рдЯрд╛рдЗрдкрд┐рдВрдЧ рд╣реИред

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

рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рд╣рдорд╛рд░рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛрддрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ: рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рджреЛрдиреЛрдВ рдкрд░, Node.js рдкрд░ рд╡рд┐рд╢рд╛рд▓ рдХреНрд▓рд╕реНрдЯрд░ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рдЬреЛ рдареАрдХ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЬрд╛рд╡рд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрддреЗ рд╣реИрдВред

рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЕрдЧрд░ рдпрд╣ рд╢реБрд░реВ рдореЗрдВ рдПрдХ рд╣рд╛рд░реЗ рд╣реБрдП рд▓рдЧрддрд╛ рд╣реИред

JIT рд╕рдмрдХреЛ рд╕рдореЗрдЯ рджреЗрдЧреА! рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЬреЗрдЖрдИрдЯреА (рдЬрд╕реНрдЯ рдЗрди рдЯрд╛рдЗрдо рд╕рдВрдХрд▓рди) рд╣реИ рдЬреЛ рд░рдирдЯрд╛рдЗрдо рдкрд░ рд╣реЛрддрд╛ рд╣реИред рд╣рдо рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред

рдЬреЗрдПрд╕ рдЗрдВрдЬрди


  • рдЕрдирд▓реЙрдХреНрдб рдЪрдХреНрд░, рдЬреЛ рдЗрдВрдЯрд░рдиреЗрдЯ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди Jscript рдХреЗ рд╕рд╛рде - рдРрд╕рд╛ рдПрдХ рд╕рдмрд╕реЗрдЯ рд╣реИред
  • рдЖрдзреБрдирд┐рдХ рдЪрдХреНрд░ рдФрд░ рдЪрдХреНрд░ рдЬреЛ рдПрдЬ рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ;
  • рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдореЗрдВ рд╕реНрдкрд╛рдЗрдбрд░рдореЛрдВрдХреА;
  • WebKit рдореЗрдВ JavaScriptCoreред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ React Native рдореЗрдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ Android рдХреЗ рд▓рд┐рдП RN рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИ, рддреЛ рдпрд╣ JavaScriptCore рдкрд░ рднреА рдЪрд▓рддрд╛ рд╣реИ - рдЗрдВрдЬрди рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд╕рд╛рде рдмрдВрдбрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
  • V8 рдореЗрд░рд╛ рдкрд╕рдВрджреАрджрд╛ рд╣реИред рдпрд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ, рдореИрдВ рд╕рд┐рд░реНрдл Node.js рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ, рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдореБрдЦреНрдп рдЗрдВрдЬрди рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рд╕рднреА рдХреНрд░реЛрдо рдЖрдзрд╛рд░рд┐рдд рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рд╣реИред
  • рд░рд╛рдЗрдиреЛ рдФрд░ рдиреИрд╢реЛрд░реНрди рдЬрд╛рд╡рд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЗрдВрдЬрди рд╣реИрдВред рдЙрдирдХреА рдорджрдж рд╕реЗ, рдЖрдк рд╡рд╣рд╛рдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рднреА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  • рдЬреЗрд░реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ - рдПрдореНрдмреЗрдбреЗрдб рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП;
  • рдФрд░ рдЕрдиреНрдп ...

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

рдЖрдЬ рд╣рдо V8 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ, рдФрд░ рд╣рд╛рдБ, рдпрд╣ 8-рд╕рд┐рд▓реЗрдВрдбрд░ рдЗрдВрдЬрди рдХреЗ рдирд╛рдо рдкрд░ рд╣реИред

рд╣рдо рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рдЪрдврд╝рддреЗ рд╣реИрдВ


рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХреИрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

  • рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХреЛрдб рд▓рд┐рдЦрд╛ рд╣реИ, рдЬреЛ рдЖрдкреВрд░реНрддрд┐ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
  • рд╡рд╣ рдкрд╛рд░реНрд╕ рдХрд░ рд░рд╣рд╛ рд╣реИ;
  • рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ;
  • рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред



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


рдПрдХ рдкреЗрдбрд╝ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реВрдЪрдХрд╛рдВрдХ 1 рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд░рдгреА рддрддреНрд╡ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдПрдХ рдСрдкрд░реЗрдЯрд░ рдФрд░ рджреЛ рдСрдкрд░реЗрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдХреБрдВрдЬреА рдФрд░ рдЗрди рдХреБрдВрдЬрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд▓реЛрдб рдХрд░реЗрдВред

рдПрдПрд╕рдЯреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд╣рд╛рдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?


рдПрдПрд╕рдЯреА рдХреЗрд╡рд▓ рдЗрдВрдЬрдиреЛрдВ рдореЗрдВ рдирд╣реАрдВ рд╣реИред рдПрдПрд╕рдЯреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдХрдИ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

  • ESLint;
  • рдХреЛрд▓рд╛рд╣рд▓;
  • рдЦреВрдмрд╕реВрд░рдд;
  • Jscodeshiftред

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



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


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

JIT рдХрдореНрдкрд╛рдЗрд▓рд░ рдХрд╛ рдЕрдиреБрдХреВрд▓рди


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

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

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

const foo=(a, b) => a + b;
foo (1, 2);
foo (2, 3);


рдПрдХ рдмрд╛рд░ рддрд╣, рджреВрд╕рд░реА рдмрд╛рд░ред рд╕рдВрдХрд▓рдХ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдмрдирд╛рддрд╛ рд╣реИ: "рдпреЗ рд╕рдВрдЦреНрдпрд╛рдПрдВ рд╣реИрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ!" рдФрд░ рдЖрдк foo('WTF', 'JS') рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓рд╛рдЗрдиреЗрдВ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ - рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ, рд╣рдо рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, deoptimization рд╣реЛрддрд╛ рд╣реИред



рдЗрд╕рд▓рд┐рдП, рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рджреНрд╡рд╛рд░рд╛ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдКрдкрд░ рджрд┐рдП рдЧрдП рдЖрд░реЗрдЦ рдореЗрдВ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рд╣реИред



рдЬреЛ рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓ рддрдХ рдерд╛ред рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓, рдЖрдк Google рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реА рд░рд┐рдкреЛрд░реНрдЯ рд╕реБрди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЯрд░реНрдмреЛрдлреИрди рдХреЗ рд╕рд╛рде рдПрдХ рдирдИ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд▓реЙрдиреНрдЪ рдХреА рд╣реИ рдФрд░ рдЕрдм рдпрд╣ рдпреЛрдЬрдирд╛ рд╕рд░рд▓ рд╣реИред



рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдПрдХ рджреБрднрд╛рд╖рд┐рдпрд╛ рдпрд╣рд╛рдБ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред



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

рджреБрднрд╛рд╖рд┐рдпрд╛ рдкреНрд░рдЬреНрд╡рд▓рди


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

рд▓реЗрдХрд┐рди рдореЛрдмрд╛рдЗрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЯреАрдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рднрд╛рдЧ рдЧрдИред



2013-2014 рдореЗрдВ, рд▓реЛрдЧреЛрдВ рдиреЗ рдбреЗрд╕реНрдХрдЯреЙрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрдВрдЯрд░рдиреЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ред рдореВрд▓ рд░реВрдк рд╕реЗ, рдпрд╣ рдПрдХ iPhone рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд░рд▓ рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ - рдЙрдирдХреЗ рдкрд╛рд╕ рдЫреЛрдЯреА рдореЗрдореЛрд░реА рдФрд░ рдПрдХ рдХрдордЬреЛрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИред



рдЗрдВрдЯрд░рдкреНрд░реЗрдЯрд░ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ 1 рдПрдордмреА рдХреЛрдб рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдПрдХ рдЧреНрд░рд╛рдл рдКрдкрд░ рд╣реИред рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдбреЗрд╕реНрдХрдЯреЙрдк рдмрд╣реБрдд рдЬреАрддрддрд╛ рд╣реИред IPhone рднреА рдЦрд░рд╛рдм рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдЗрдВрдЬрди рд╣реИ, рдФрд░ рд╣рдо V8 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ рдХреНрд░реЛрдо рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрджрд┐ рдЖрдк iPhone рдкрд░ Chrome рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЕрднреА рднреА JavaScriptCore рдкрд░ рдХрд╛рдо рдХрд░реЗрдЧрд╛?

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рдордп рдмрд░реНрдмрд╛рдж рд╣реЛрддрд╛ рд╣реИ - рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╣реИ, рдирд┐рд╖реНрдкрд╛рджрди рдирд╣реАрдВ - рдЖрдкрдХреА рдлрд╝рд╛рдЗрд▓ рд▓реЛрдб рд╣реЛ рдЧрдИ рд╣реИ, рдФрд░ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдХреНрдпрд╛ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред


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

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЗ рджреЛ рдХрд╛рд░реНрдп рдереЗ:

  1. рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдУрд╡рд░рд╣реЗрдб рдХреЛ рдХрдо рдХрд░рдирд╛;
  2. рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдХрдо рдХрд░реЗрдВред

рдХрд╛рд░реНрдп рдПрдХ рдмрд╛рдЗрдЯреЗрдХреЛрдб рджреБрднрд╛рд╖рд┐рдпрд╛ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдХреЗ рд╣рд▓ рдХрд┐рдП рдЧрдП рдереЗред


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

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



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

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


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

рдЕрдиреБрдХреВрд▓рди рдФрд░ рд╡рд┐рдХреГрддрд┐


рдардВрдбрд╛ рдФрд░ рдЧрд░реНрдо рд╕реБрд╡рд┐рдзрд╛рдПрдБ


рдпрд╣ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рд╡рд┐рд╖рдп рд╣реИред

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



рдХрд╛рдо рдХреА рдпреЛрдЬрдирд╛ред

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

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

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

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

рдЫрд┐рдкреА рд╣реБрдИ рдХрдХреНрд╖рд╛рдПрдВ


рд╡реА 8 рдореЗрдВ рд╣реА рдирд╣реАрдВ, рд╕рднреА рдЗрдВрдЬрдиреЛрдВ рдореЗрдВ рдЫрд┐рдкреЗ рд╣реБрдП рд╡рд░реНрдЧ рд╣реИрдВред рд╣рд░ рдЬрдЧрд╣ рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡реА 8 рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдпрд╣ рдорд╛рдирдЪрд┐рддреНрд░ рд╣реИред

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

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

рдЫрд┐рдкреА рд╣реБрдИ рдХрдХреНрд╖рд╛рдУрдВ рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ / рдЬреЛрдбрд╝рдиреЗ рдкрд░, рдСрдмреНрдЬреЗрдХреНрдЯ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдПрдХ рдирдпрд╛ рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЛрдб рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред


рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдирд┐рд░реНрдорд╛рддрд╛ рд╣реИ рдЬреЛ рдЯрд╛рдЗрдк рдкреНрд╡рд╛рдЗрдВрдЯ рдХреА рдПрдХ рдирдИ рд╡рд╕реНрддреБ рдмрдирд╛рддрд╛ рд╣реИред

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

рдореИрдВ рдЫрд┐рдкреА рд╣реБрдИ рдХрдХреНрд╖рд╛рдУрдВ рдХреА рдЬрд╛рдВрдЪ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

Node.js рдореЗрдВ, рдЖрдк рдиреЛрдб-рдиреЗрдЯрд┐рд╡-рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рддрдм рдЖрдкрдХреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдХрдорд╛рдВрдб рд▓рд┐рдЦрдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдорд┐рд▓реЗрдЧрд╛, рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

 %HaveSameMap({'a':1}, {'b':1}) 

рдХреЛрдИ рднреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХрд▓ рдпреЗ рдХрдорд╛рдВрдб рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ, рд╡реЗ ECMAScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВ, рдпрд╣ рд╕рднреА рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╣реИред

рдЖрдкрдХреЛ рдХреНрдпрд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреЛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП% HaveSameMap рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реЛрдЧрд╛ред рд╕рд╣реА рдЙрддреНрддрд░ рдЧрд▓рдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдХреЗ рдкрд╛рд╕ рдПрдХ рдХреНрд╖реЗрддреНрд░ рд╣реИ, рдФрд░ рджреВрд╕рд░реЗ рдХреЗ рдкрд╛рд╕ рдмреА рд╣реИ ред рдпреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВред рдЗрд╕ рдЬреНрдЮрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрдирд▓рд╛рдЗрди рдХреИрд╢ рддрдХрдиреАрдХ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрдирд▓рд╛рдЗрди рдХреИрд╢


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


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



  • рдпрджрд┐ рд╣рдо рдкрд╣рд▓реА рдмрд╛рд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ, рджреБрднрд╛рд╖рд┐рдпрд╛ рдиреЗ рдЕрдиреБрдХреВрд▓рди рдХрд┐рдпрд╛ рд╣реИ
  • рджреВрд╕рд░реА рдХреЙрд▓ рдХреЗ рд▓рд┐рдП, рдПрдХ рдореЛрдиреЛрдореЛрд░реНрдлрд┐рдХ рд░рд╛рдЬреНрдп рдХреЛ рдмрдЪрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдореИрдВ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рддреАрд╕рд░реА рдмрд╛рд░ рдХрд╣рддрд╛ рд╣реВрдВ, рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ {x: 3, y: 1} рдкрд╛рд╕ рдХрд░реЗрдВред Deoptimization рд╣реЛрддрд╛ рд╣реИ, рдпрджрд┐ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдПрдХ рдмрд╣реБрд░реВрдкреА рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рдЪрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВред рдЕрдм рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдб рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБрдПрдВ рдЗрд╕рдореЗрдВ рдЙрдбрд╝ рд╕рдХрддреА рд╣реИрдВред
  • рдпрджрд┐ рд╣рдо рдХрдИ рдмрд╛рд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдПрдХ рдмрд╣реБрд░реВрдкреА рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рд░рд╣рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдирдП рдЗрдлрд╝реЗ рдЬреБрдбрд╝рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рдЖрддреНрдорд╕рдорд░реНрдкрдг рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдореЗрдЧрд╛рдореЙрд░реНрдлрд┐рдХ рд░рд╛рдЬреНрдп рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреНред рдЬрдм: "рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдкреНрд░рд╡реЗрд╢ рджреНрд╡рд╛рд░ рдкрд░ рдЖрддреЗ рд╣реИрдВ - рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП!"

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

рд╕рд░рдгрд┐рдпреЛрдВ


рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЯрд╛рдЗрдк рдПрд░реЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рдкреНрд░рдХрд╛рд░ рд╣реИ
рд╕рд░рдгреАред V8 рдЗрдВрдЬрди рдореЗрдВ рдЙрдирдореЗрдВ рд╕реЗ 6 рд╣реИрдВ:

1. [1, 2, 3, 4] // PACKED_SMI_ELEMENTS - рдЫреЛрдЯреЗ рдкреВрд░реНрдгрд╛рдВрдХ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдкреИрдХ рд╕рд░рдгреАред рдЙрд╕рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рд╣реИрдВред

2. [1.2, 2.3, 3.4, 4.6] // PACKED_DOUBLE_ELEMENTS - рджреЛрд╣рд░реЗ рддрддреНрд╡реЛрдВ рдХрд╛ рдПрдХ рдкреИрдХ рд╕рд░рдгреА, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рднреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдзреАрдореЗ рд╣реИрдВред

3. [1, 2, 3, 4, 'X'] // PACKED_ELEMENTS - рдПрдХ рдкреИрдХреНрдб рд╕рд░рдгреА рдЬрд┐рд╕рдореЗрдВ рд╡рд╕реНрддреБрдПрдВ, рддрд╛рд░ рдФрд░ рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рд╣реЛрддрд╛ рд╣реИред рдЙрд╕рдХреЗ рд▓рд┐рдП рднреА, рдЕрдиреБрдХреВрд▓рди рд╣реИрдВред

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

4. [1, / * рдЫреЗрдж * /, 2, / * рдЫреЗрдж * / /, 3, 4] // HOLEY_SMI рд╕рд╛рдордЧреНрд░реА

5. (1.2, / * рдЫреЗрдж * /, 2, / * рдЫреЗрдж * /, 3,4] // HOLEY_DOUBLE / рд╡реЗрд▓реНрдбрд┐рдВрдЧ

6. [1, / * рдЫреЗрдж * /, 'X'] // HOLEY_ELEMENTS

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



рдЖрд░реЗрдЦ рдореЗрдВ, рдКрдкрд░ рдХреА рд╕рдм рдХреБрдЫ рддреЗрдЬреА рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рд╣реИред рдпрд╣реА рд╣реИ, рдЖрдкрдХреЗ рд╕рднреА рдореВрд▓ рддрд░реАрдХреЛрдВ - рдорд╛рдирдЪрд┐рддреНрд░, рдХрдо, рд╕реЙрд░реНрдЯ - рдЕрдВрджрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рд╣реИрдВред рд▓реЗрдХрд┐рди рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде, рдЕрдиреБрдХреВрд▓рди рдЦрд░рд╛рдм рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рд░рдгреА [ 1 , 2 , 3 ] рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП рдЖрдпрд╛ рдерд╛ (рдкреНрд░рдХрд╛рд░ - рдЫреЛрдЯреЗ рдкреВрд░реНрдгрд╛рдВрдХ рдкреИрдХ)ред рд╣рдордиреЗ рдЗрд╕ рд╕рд░рдгреА рдХреЛ рдереЛрдбрд╝рд╛ рдЬреЛрдбрд╝рдХрд░ рдЗрд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ - PACKED_DOUBLE_ELEMENTS рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛ред рдЗрд╕рдореЗрдВ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдЬреЛрдбрд╝реЗрдВ - рдЕрдЧрд▓реЗ рд░рд╛рдЬреНрдп рдкрд░ рдЬрд╛рдПрдВ, рд╣рд░реЗ рд░рдВрдЧ рдХреА рдЖрдпрдд PACKED_ELEMENTSред рдЗрд╕рдореЗрдВ рдЫреЗрдж рдЬреЛрдбрд╝реЗрдВ - HOLEY_ELEMENTS рд╕реНрдерд┐рддрд┐ рдкрд░ рдЬрд╛рдПрдВред рд╣рдо рдЗрд╕реЗ рдЕрдкрдиреА рдкрд┐рдЫрд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдпрд╣ рдлрд┐рд░ рд╕реЗ "рдЕрдЪреНрдЫрд╛" рдмрди рдЬрд╛рдП - рд╣рдо рдЬреЛ рдХреБрдЫ рднреА рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдЙрд╕реЗ рд╣рдЯрд╛ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕реА рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рд░рд╣рддреЗ рд╣реИрдВ ... рдЫреЗрдж рдХреЗ рд╕рд╛рде! рдпрд╣реА рд╣реИ, рдЖрд░реЗрдЦ рдХреЗ рдирд┐рдЪрд▓реЗ рджрд╛рд╣рд┐рдиреЗ рд╣рд┐рд╕реНрд╕реЗ рдореЗрдВ HOLEY_ELEMENTSред рд╡рд╛рдкрд╕ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЖрдкрдХреА рд╕рд░рдгрд┐рдпрд╛рдБ рдХреЗрд╡рд▓ рдмрджрддрд░ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдирд╣реАрдВред

рд╕рд░рдгреА рдЬреИрд╕реА рд╡рд╕реНрддреБ


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


рд╣рдорд╛рд░реЗ рджреЛ рдкрд╕рдВрджреАрджрд╛ рдРрд░реЗ-рд▓рд╛рдЗрдХ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рддрд░реНрдХ рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИрдВ редquerySelectorAIIред рдРрд╕реА рд╕реБрдВрджрд░ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЪреАрдЬреЗрдВ рд╣реИрдВред


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

рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ?

  • рдкреБрд░рд╛рдиреЗ рд╕реНрдХреВрд▓ рдХреЗ рд╡рд┐рдХрд▓реНрдк - slice.call рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ () рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рд░рдгреА рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреЗ рд╣реИрдВред
  • рдЖрдзреБрдирд┐рдХ рд╡рд┐рдХрд▓реНрдк рдФрд░ рднреА рдмреЗрд╣рддрд░ рд╣реИ: рд▓рд┐рдЦрдирд╛ (... рдмрд╛рдХреА), рдПрдХ рд╕рд╛рдл рд╕рд░рдгреА рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ - рддрд░реНрдХ рдирд╣реАрдВ - рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ!

QuerySelectorAll рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдмрд╛рдд - рдкреНрд░рд╕рд╛рд░ рдХреЗ рдХрд╛рд░рдг рд╣рдо рдЗрд╕реЗ рдПрдХ рдкреВрд░реНрдг рд╕рд░рдгреА рдореЗрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдиреНрдп рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдмрдбрд╝реЗ рдРрд░реЗ


рдкрд╣реЗрд▓реА: рдирдпрд╛ рдРрд░реЗ (1000) рдмрдирд╛рдо рд╕рд░рдгреА = []
рдХреМрди рд╕рд╛ рд╡рд┐рдХрд▓реНрдк рдмреЗрд╣рддрд░ рд╣реИ: рддреБрд░рдВрдд рдПрдХ рдмрдбрд╝рд╛ рд╕рд░рдгреА рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдПрдХ рд▓реВрдк рдореЗрдВ 1000 рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд╕рд╛рде рднрд░реЗрдВ, рдпрд╛ рдПрдХ рдЦрд╛рд▓реА рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдзреАрд░реЗ-рдзреАрд░реЗ рднрд░реЗрдВ?

рд╕рд╣реА рдЙрддреНрддрд░: рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред

рдЕрдВрддрд░ рдХреНрдпрд╛ рд╣реИ?

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

рдпрд╣реА рд╣реИ, рдкрд╣рд▓реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдо рдЬрд▓реНрджреА рд╕реЗ рд▓рд┐рдЦрддреЗ рд╣реИрдВ - рд╣рдо рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ; рджреВрд╕рд░реЗ рдореЗрдВ рд╣рдо рдзреАрд░реЗ-рдзреАрд░реЗ рд▓рд┐рдЦрддреЗ рд╣реИрдВ - рд╣рдо рдЬрд▓реНрджреА рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред

рдХрдЪрд░рд╛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛


рдХрдЪрд░рд╛ рдЙрдард╛рдиреЗ рд╡рд╛рд▓рд╛ рднреА рдереЛрдбрд╝рд╛ рд╕рдордп рдФрд░ рд╕рдВрд╕рд╛рдзрди рдЦрд╛рддрд╛ рд╣реИред рдЧрд╣рд░рд╛рдИ рд╕реЗ рдЧреЛрддрд╛ рд▓рдЧрд╛рдП рдмрд┐рдирд╛, рдореИрдВ рд╕рдмрд╕реЗ рдЖрдо рдЖрдзрд╛рд░ рджреВрдВрдЧрд╛ред



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


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

  1. рд╕реНрдХреЗрд╡реЗрдВрдЬ рддреЗрдЬрд╝ рд╣реИ рд▓реЗрдХрд┐рди рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рд╣реИред
  2. рдорд╛рд░реНрдХ-рд╕реНрд╡реАрдк рдзреАрдорд╛ рд▓реЗрдХрд┐рди рдХреБрд╢рд▓ рд╣реИред

рдпрджрд┐ рдЖрдк Node.js рдореЗрдВ рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдХреБрдЫ рдРрд╕рд╛ рдорд┐рд▓рддрд╛ рд╣реИред



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

рдЗрд╕рд▓рд┐рдП, рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рдЪрд░рдг рд╣реИ рдЬреЛ рд╕рдордп рд▓реЗрддрд╛ рд╣реИред



рдФрд░ рднреА рддреЗрдЬ?


рдЖрдЗрдП рднрд╡рд┐рд╖реНрдп рдкрд░ рдЧреМрд░ рдХрд░реЗрдВред рдЖрдЧреЗ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рдХреИрд╕реЗ рддреЗрдЬ рд╣реЛ?


рдЗрд╕ рд░реЗрдЦрд╛ рдкрд░, рдмреНрд▓реЙрдХ рдХрд╛ рдЖрдХрд╛рд░ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдЙрд╕ рд╕рдордп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред

рдкрд╣рд▓реА рдмрд╛рдд рдЬреЛ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рдореЗрдВ рдЖрддреА рд╣реИ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдмрд╛рдпрдЯреЗрдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирд╛ рд╣реИ - рддреБрд░рдВрдд рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рдпрдЯреЗрдХреЛрдб рд╕рдмрдорд┐рдЯ рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдбреАрдХреЛрдб рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЗрд╕реЗ рдбреАрдХреЛрдб рдХрд░реЗрдВ - рддреЗрдЬ рд╣реЛ рдЬрд╛рдПрдЧрд╛!



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

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

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



рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ? WebAssembly рд▓рдЧрднрдЧ
рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: рдореИрдиреНрдпреБрдЕрд▓ рдореЗрдореЛрд░реА рдкреНрд░рдмрдВрдзрди, рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛
рднрд╛рд╖рд╛рдУрдВ рдФрд░ рддреЗрдЬреА рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрдиред


рдХреНрдпрд╛ WebAssembly рдПрдХ рдЪрд╛рдВрджреА рдХреА рдЧреЛрд▓реА рд╣реИ?


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

рдЗрд╕рд▓рд┐рдП, рдЬрдмрдХрд┐ рд╣рдорд╛рд░реА рднрд╛рд╖рд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдпрд╣ рд╣реИ, рдФрд░ рдмреНрд▓реИрдХ рдмреЙрдХреНрд╕ рд╕реЗ рдХреБрдЫ рдорджрдж рдорд┐рд▓рддреА рд╣реИред

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░


рддреАрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЛ рдкреНрд░рддрд┐рд╖реНрдард┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

тЧП рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдЕрдиреБрдХреВрд▓рди

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

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

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

тЧП рднрд╛рд╖рд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрдХреВрд▓рди

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

тЧП рдЗрдВрдЬрди-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрдХреВрд▓рди

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

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


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

рдЗрд╕ рддрд░рд╣ рдХреА рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдбрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдФрд░ рдЫреЛрдбрд╝рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВред рдЖрдо рддреМрд░ рдкрд░ рд╣рдореЗрд╢рд╛ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЗрдХрдЯреНрдард╛ рдХрд░рддреЗ рд╣реИрдВред рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ!

рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ:


Frontend Conf Moscow 4 5 . 15 , , :

  • (KeepSolid) , Offline First Persistent Storage
  • (TradingView) WebGL WebAssembly , , API .
  • , Google Docs.

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


All Articles