рд╣реИрдХреНрд╕ 4: рдирдпрд╛ рдХреНрдпрд╛ рд╣реИ?

рдореИрдВ рдЖрдкрдХреЗ рдзреНрдпрд╛рди рдореЗрдВ рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░ рдХреБрдЬрд╝рдореЗрдирдХреЛ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рд▓рд╛рддрд╛ рд╣реВрдВ (рдЗрд╕ рд╕рд╛рд▓ рдЕрдкреНрд░реИрд▓ рд╕реЗ рд╡рд╣ рд╣реЗрдХреНрд╕ рд╕рдВрдХрд▓рдХ рдХреЗ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ) рд╣реЗрдХреНрд╕ рднрд╛рд╖рд╛ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬреЛ рд╣реЗрдХреНрд╕ 3.4 рдХреЗ рд░рд┐рд▓реАрдЬ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рд╣реБрдЖ рд╣реИред


рдЫрд╡рд┐

рд╣реИрдХреНрд╕ 3.4 рдХреА рд░рд┐рд▓реАрдЬ рдХреЛ рдврд╛рдИ рд╕рд╛рд▓ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рд╕рдордп рдмреАрдд рдЪреБрдХрд╛ рд╣реИред рдЗрд╕ рд╕рдордп рдХреЗ рджреМрд░рд╛рди, 7 рдкреИрдЪ рд░рд┐рд▓реАрдЬрд╝, рд╣реЗрдХреНрд╕ 4 рдХреЗ 5 рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рд░рд┐рд▓реАрдЬрд╝ рдФрд░ рд╣реЗрдХреНрд╕ 4 рдХреЗ 2 рд░рд┐рд▓реАрдЬрд╝ рдЙрдореНрдореАрджрд╡рд╛рд░реЛрдВ рдХреЛ рд░рд┐рд▓реАрдЬрд╝ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдПрдХ рд▓рдВрдмрд╛ рд░рд╛рд╕реНрддрд╛ рдерд╛ рдФрд░ рдпрд╣ рд▓рдЧрднрдЧ рддреИрдпрд╛рд░ рд╣реИ ( рд▓рдЧрднрдЧ 20 рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдмрд╛рдХреА рд╣реИ)ред


рдмрд╣реБрдд рдкрд╣рд▓реЗ ...

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


  • рдЗрдирд▓рд╛рдЗрди рдорд╛рд░реНрдХрдЕрдк
  • рдХреЙрд▓ рд╕реНрдерд╛рди рдкрд░ рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧ рдХрд╛рд░реНрдп
  • рддреАрд░ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ

рдЫрд╡рд┐

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


рдЗрд╕рдХреЗ рдмрд╛рдж, рд╕рд┐рдХрдВрджрд░ рдиреЗ рднрд╛рд╖рд╛ рдХреЗ рд╡рд╛рдХреНрдп рд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреАред


рдирдП рдЯрд╛рдЗрдкреНрд╕ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдк рдХрд░реЗрдВ рдХрд╛ рд╡рд░реНрдгрди

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


рддреАрд░ рдХрд╛ рдХрд╛рд░реНрдп

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


рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЯреАрдбреА рдореЗрдВ рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдирд╣реАрдВ рд╣реИ

рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЯреНрд░реА рдореЗрдВ рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдирд╣реАрдВ рд╣реИ, рд╡реЗ рдирд┐рдпрдорд┐рдд рдЕрдирд╛рдо рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреА рддрд░рд╣ рд╣реА рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдЕрдиреБрдХреНрд░рдо -> return рдХреАрд╡рд░реНрдб рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рдЕрдВрддрд┐рдо - рдЕрдм рдПрдХ рдХреАрд╡рд░реНрдб рд╣реИ

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


рдЕрдирд╛рдо рд╕рдВрд░рдЪрдирд╛рдПрдБ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХреНрд╖реЗрддреНрд░ рдШреЛрд╖рд┐рдд рдХрд┐рдП рдЧрдП

рдЪреМрдерд╛ рдкрд░рд┐рд╡рд░реНрддрди рдЕрдирд╛рдо рд╕рдВрд░рдЪрдирд╛рдУрдВ рдореЗрдВ рд╡реИрдХрд▓реНрдкрд┐рдХ рдлрд╝реАрд▓реНрдб рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдкрд╣рд▓реЗ, рдЗрд╕рдХреЗ рд▓рд┐рдП @:optional рдореЗрдЯрд╛ рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЕрдм рдлрд╝реАрд▓реНрдб рдирд╛рдо рдХреЗ рд╕рд╛рдордиреЗ рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░рд╢реНрди рдЪрд┐рд╣реНрди рдЬреЛрдбрд╝реЗрдВред


рд╕рд╛рд░ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ

рдкрд╛рдБрдЪрд╡рд╛рдБ, рдЕрдореВрд░реНрдд рдЧрдгрдирд╛рдПрдБ Haxe рдкреНрд░рдХрд╛рд░ рдХреЗ рдкрд░рд┐рд╡рд╛рд░ рдХрд╛ рдПрдХ рдкреВрд░реНрдг рд╕рджрд╕реНрдп рдмрди рдЧрдпрд╛ рд╣реИ, рдФрд░ @:enum meta рдЯреИрдЧ рдХреЗ рдмрдЬрд╛рдп @:enum рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдм рдЙрдиреНрд╣реЗрдВ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рдмрд╛рд╣рд░реА рд╢рдмреНрдж

рдЗрд╕реА рддрд░рд╣ рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдиреЗ @:extern рдореЗрдЯрд╛ рдЯреИрдЧ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ред


рдЯрд╛рдЗрдк рдпреВрдирд┐рдпрди (рдЯрд╛рдЗрдк рдЪреМрд░рд╛рд╣реЗ) рдХреЗ рд▓рд┐рдП рдирдпрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕

рд╕рд╛рддрд╡реАрдВ рдПрдХ рдирдП рдкреНрд░рдХрд╛рд░ рдХрд╛ рдкреНрд░рддрд┐рдЪреНрдЫреЗрджрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ рдЬреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд╕рд╛рд░ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдПрдХ рд╣реА рдирдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рдХрд╛рд░ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдХрдореА рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рдПрдХ рдкреНрд░рдХрд╛рд░ рдкрд░ рд▓рдЧрд╛рдП рдЧрдП рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЛ рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ рдмрддрд╛рддрд╛ рд╣реИред рд╣реЗрдХреНрд╕ рдХреЗ рд╕рд╛рде рдЕрдкрд░рд┐рдЪрд┐рдд рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП, рдкреБрд░рд╛рдиреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ MyClass<T:(Type1, Type2)> рдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рдкреНрд░рдХрд╛рд░ T рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ Type1 рдпрд╛ Type1 рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдирдпрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╣рдореЗрдВ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ T Type1 рдФрд░ Type1 рджреЛрдиреЛрдВ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред


рдЦрд╛рд▓реА рд╢рдмреНрджрдХреЛрд╢ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓реАрдХреГрдд рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕

рдЖрдард╡рд╛рдВ рдПрдХ рдЦрд╛рд▓реА Map рдХрдВрдЯреЗрдирд░ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП [] рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ (рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдЖрдк рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЪрд░ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдВрдХрд▓рдХ рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░реЗрдЧрд╛)ред


рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реБрдП, рдЖрдЗрдП рднрд╛рд╖рд╛ рдореЗрдВ рдирдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╡рд┐рд╡рд░рдг рдкрд░ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ ред
рдЪрд▓реЛ рдирдП рдХреБрдВрдЬреА-рдореВрд▓реНрдп рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ


рдХреБрдВрдЬреА-рдореВрд▓реНрдп рдкреБрдирд░рд╛рд╡рд░реНрддрди рдФрд░

рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред
рдРрд╕реЗ keyValueIterator():KeyValueIterator<K, V> рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рдХрд╛рд░ рдХреЛ рдпрд╛ рддреЛ keyValueIterator():KeyValueIterator<K, V> рд╡рд┐рдзрд┐ keyValueIterator():KeyValueIterator<K, V> , рдпрд╛ hasNext():Bool рд╡рд┐рдзрд┐рдпреЛрдВ hasNext():Bool рдФрд░ next():{key:K, value:V} ред рдЗрд╕реА рд╕рдордп, рдЯрд╛рдЗрдк рдХрд░реЗрдВ KeyValueIterator<K, V> рдЕрдирд╛рдо рд╕рдВрд░рдЪрдирд╛ Iterator<{key:K, value:V}> рдореЗрдВ рдПрдХ рдирд┐рдпрдорд┐рдд рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реНрдпрд╛рдпрд╡рд╛рдЪреА рд╣реИ Iterator<{key:K, value:V}> ред
рдХреА-рд╡реИрд▓реНрдпреВ DynamicAccess рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп ( String , Map , DynamicAccess ) рд╕реЗ рдХреБрдЫ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рднреА рдЪрд▓ рд░рд╣рд╛ рд╣реИред


рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдирдП рдкреБрдирд░реНрд╡рд┐рдХреНрд░рдп рдФрд░ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП

рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд▓рд┐рдП, рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рд╡рд░реНрдг рдЗрдВрдбреЗрдХреНрд╕ рдХреЛ рдХреБрдВрдЬреА рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рджрд┐рдП рдЧрдП рдЗрдВрдбреЗрдХреНрд╕ рдкрд░ рд╡рд░реНрдг рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдпрджрд┐ рд╡рд░реНрдг рд╕реНрд╡рдпрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ String.fromCharCode() рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред
Map рдХрдВрдЯреЗрдирд░ рдХреЗ рд▓рд┐рдП, рдирдпрд╛ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдкреБрд░рд╛рдиреЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╡рд┐рдзрд┐ рдХреЗ рд╕рдорд╛рди рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд, рдпрд╣ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЧреБрдЬрд░рддрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдХреБрдВрдЬреА рдХреЗ рд▓рд┐рдП рдорд╛рдиреЛрдВ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИред
DynamicAccess (рдЕрдирд╛рдо рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд░рдг) рдХреЗ рд▓рд┐рдП, DynamicAccess рдкреНрд░рддрд┐рдмрд┐рдВрдм ( Reflect.fields() рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдлрд╝реАрд▓реНрдб рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ Reflect.field() рд╡рд┐рдзрд┐) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдирдХреЗ рдирд╛рдо рд╕реЗ рдлрд╝реАрд▓реНрдб рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред


рдирдИ рдореИрдХреНрд░реЛ рджреБрднрд╛рд╖рд┐рдпрд╛

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


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

рдпреВрдирд┐рдХреЛрдб рд╕рдорд░реНрдерди

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


  • Lua, PHP, Python рдФрд░ eval (рдореИрдХреНрд░реЛ рджреБрднрд╛рд╖рд┐рдпрд╛) рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдпреВрдирд┐рдХреЛрдб рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (UTF8 рдПрдиреНрдХреЛрдбрд┐рдВрдЧ)
  • рдЕрдиреНрдп рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рд╕реА #, рдЬрд╛рд╡рд╛, рдлреНрд▓реИрд╢, рд╣реИрд╢рд▓рд┐рдВрдХ рдФрд░ рд╕реА ++) рдХреЗ рд▓рд┐рдП, рдпреВрдЯреАрдПрдл 16 рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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


рдирдИ рд╕реНрдЯреНрд░рд┐рдВрдЧ Iterators

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


 haxe.iterators.StringIteratorUnicode haxe.iterators.StringKeyValueIteratorUnicode 

рдпреВрдирд┐рдХреЛрдб рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдПрдБ

рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕реЗ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рддрдХ рднрд┐рдиреНрди рд╣реЛрддрд╛ рд╣реИ, рдЙрдирдХреЗ рдХрд╛рдо рдХреА рдХреБрдЫ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред UTF16 рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдг рдореЗрдВ 2 рдмрд╛рдЗрдЯреНрд╕ рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рд╡рд░реНрдг рдХреЛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рджреНрд╡рд╛рд░рд╛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдирд╛ рддреЗрдЬрд╝ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдореБрдЦреНрдп рдмрд╣реБрднрд╛рд╖реА рд╡рд┐рдорд╛рди рдХреЗ рднреАрддрд░ред рджреВрд╕рд░реА рдУрд░, UTF8 рдореЗрдВ рд╕рднреА рд╡рд░реНрдгреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдПрдХ рдЪрд░рд┐рддреНрд░ рдХреЗ рд▓рд┐рдП рдзреАрдореА рдЦреЛрдЬ рдХреА рдХреАрдордд рдкрд░ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рд╡рд░реНрдг рд╕реНрдореГрддрд┐ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдмрд╛рдЗрдЯреНрд╕ рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реВрдЪрдХрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рдХрд┐рд╕реА рд╡рд░реНрдг рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╢реБрд░реБрдЖрдд рд╕реЗ рд╣реА рд╣рд░ рдмрд╛рд░ рд▓рд╛рдЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ)ред рдЗрд╕рд▓рд┐рдП, рдЬрдм рд▓реБрдЖ рдФрд░ PHP рдореЗрдВ рдмрдбрд╝реЗ рддрд╛рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдПрдХ рдордирдорд╛рдирд╛ рдЪрд░рд┐рддреНрд░ рддрдХ рдкрд╣реБрдВрдЪ рдХрд╛рдлреА рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ (рдЗрди рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдкрд░ рднреА, рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд▓рдВрдмрд╛рдИ рд╣рд░ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ)ред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкрд╛рдЗрдерди рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдпреВрдирд┐рдХреЛрдб рд╕рдорд░реНрдерди рдХреА рдШреЛрд╖рдгрд╛ рдХреА рдЧрдИ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдкреНрд░рддрд┐рдмрдВрдз рдЙрд╕ рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рд▓рд╛рдЗрдиреЗрдВ рдХреБрдЫ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХреА рдЬрд╛рддреА рд╣реИрдВ: рдореБрдЦреНрдп рдмрд╣реБрднрд╛рд╖реА рд╡рд┐рдорд╛рди рдХреЗ рднреАрддрд░ рд╡рд░реНрдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ UTF16 рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╡реНрдпрд╛рдкрдХ рд╡рд░реНрдгреЛрдВ рдХреЗ рд▓рд┐рдП (3 рдФрд░ 3) рдЕрдзрд┐рдХ рдмрд╛рдЗрдЯреНрд╕) рдкрд╛рдпрдерди рдпреВрдЯреАрдПрдл 32 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдиреБрдХреВрд▓рди рдХреЛ рдЗрдХреЛрд▓ рдореИрдХреНрд░реЛ рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: рд╕реНрдЯреНрд░рд┐рдВрдЧ "рдЬрд╛рдирддрд╛ рд╣реИ" рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рдореЗрдВ рдпреВрдирд┐рдХреЛрдб рд╡рд░реНрдг рд╣реИрдВред рдЗрд╕ рдШрдЯрдирд╛ рдореЗрдВ рдХрд┐ рдЗрд╕рдореЗрдВ рдРрд╕реЗ рд╡рд░реНрдг рдирд╣реАрдВ рд╣реИрдВ, рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ ASCII рд╡рд░реНрдг (рдЬрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдг 1 рдмрд╛рдЗрдЯ рд▓реЗрддрд╛ рд╣реИ) рд╕реЗ рдорд┐рд▓рдХрд░ рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕реВрдЪрдХрд╛рдВрдХ рдореЗрдВ рдЕрдиреБрдХреНрд░рдорд┐рдХ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрдХреНрд░рдорд┐рдХ рдкрд╣реБрдВрдЪ рдХреЛ рднреА рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдЕрдВрддрд┐рдо рд╡рд░реНрдг рдХреА рд╕реНрдерд┐рддрд┐ рд▓рд╛рдЗрди рдореЗрдВ рдХреИрд╢реНрдб рд╣реИред рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдкрд╣рд▓реА рдмрд╛рд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ 10 рд╡реЗрдВ рдЪрд░рд┐рддреНрд░ рдХреА рдУрд░ рдореБрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдЬрдм рдЖрдк рдЕрдЧрд▓реА рдмрд╛рд░ 20 рд╡реЗрдВ рдЪрд░рд┐рддреНрд░ рдХреА рдУрд░ рдореБрдбрд╝реЗрдВрдЧреЗ, рддреЛ eval рдЗрд╕реЗ рд▓рд╛рдЗрди рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ 10 рд╡реАрдВ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, eval рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд▓рдВрдмрд╛рдИ рдХреИрд╢ рдХреА рдЬрд╛рддреА рд╣реИ, рдЕрд░реНрдерд╛рдд, рдпрд╣ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рдЕрдиреБрд░реЛрдз рдкрд░ рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИред


рдирд┐рд╖реНрдХрд░реНрд╖ рдЭрдВрдбреЗ рдХреЗ рд▓рд┐рдП рдирд╛рдо рд╕реНрдерд╛рди рдХрд╛ рд╕рдорд░реНрдерди

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


  • target.name - рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдирд╛рдо (js, cpp, php, рдЖрджрд┐)
  • target.utf16 - рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ target.utf16 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпреВрдирд┐рдХреЛрдб рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
  • target.sys - рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ sys рдкреИрдХреЗрдЬ рд╕реЗ рдХрдХреНрд╖рд╛рдПрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)
  • target.static - рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдордВрдЪ рд╕реНрдерд┐рд░ рд╣реИ (рд╕реНрдерд┐рд░ рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдкрд░, рдЖрдзрд╛рд░ рдкреНрд░рдХрд╛рд░ Int , Float рдФрд░ Bool рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ null рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ)
  • target.threaded - рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ

рдорд┐рд▓реЗ рдЯреИрдЧ рдХреЗ рд▓рд┐рдП рдирд╛рдорд╕реНрдерд╛рди рд╕рдорд░реНрдерди

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


рдирдП рдкреНрд░рдХрд╛рд░ - ReadOnlyArray

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


рдЕрдВрддрд┐рдо рдХреНрд╖реЗрддреНрд░ рдФрд░ рд╕реНрдерд╛рдиреАрдп рдЪрд░

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


рд╕рдВрдХрд▓рдХ рдЕрдВрддрд┐рдо рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдЖрд░рдВрдн рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ

рдЕрдВрддрд┐рдо рдлрд╝реАрд▓реНрдб рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ рдпрд╛ рддреЛ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╛ рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛ рдореЗрдВ, рдЕрдиреНрдпрдерд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ рджреЗрдЧрд╛ред


HashLink

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


рдЕрд╢рдХреНрдд рд╕реБрд░рдХреНрд╖рд╛

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


рдорд╛рдирдХ рдЕрд╢реЛрдХ рд╕реБрд░рдХреНрд╖рд╛ рдЬрд╛рдВрдЪ рдореЛрдб

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


  • рдЬрдм рд╡рд╕реНрддреБ рдХреЗ рдХреБрдЫ рдХреНрд╖реЗрддреНрд░ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ (рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ null рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)
  • рдЬрдм рдПрдХ рдЪрд░ String рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ null рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдЕрдиреНрдпрдерд╛ рд╣рдореЗрдВ рдЗрд╕реЗ String рд░реВрдк рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ Null<String> рд░реВрдк рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП)
  • рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╕рдордп (рдХреНрдпреЛрдВрдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛ null рдирд╣реАрдВ рд▓реМрдЯрдирд╛ рдЪрд╛рд╣рд┐рдП)

рдЗрди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рдареАрдХ рдХрд░реЗрдВ?


рдЕрд╢рдХреНрдд рд╕реБрд░рдХреНрд╖рд╛ рдХреАрдбрд╝реЗ рдХреЛ рдареАрдХ рдХрд░реЗрдВ

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


рдирд▓ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╕рдордп, рдХрдВрдкрд╛рдЗрд▓рд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдирд┐рдХрд╛рд╕ рдХреНрд░рдо рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддрд╛ рд╣реИ

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


рдЕрд╢рдХреНрдд рд╕реБрд░рдХреНрд╖рд╛ рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдЦреНрдд рдореЛрдб

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


рдЕрд╢рдХреНрдд рд╕реБрд░рдХреНрд╖рд╛ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдвреАрд▓рд╛ рдореЛрдб

рдвреАрд▓реЗ рдореЛрдб рдореЗрдВ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ), рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдРрд╕реЗ рдЪреЗрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА (рд╡реИрд╕реЗ, рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред


рдЕрд╢рдХреНрдд рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдЪреЗрдХ рдХрд░рддреЗ рд╕рдордп рдЦреЗрддреЛрдВ рдХреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЬрд╛рдВрдЪ рдХрд░рдирд╛

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


рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП ES6 рдХрдХреНрд╖рд╛рдПрдВ рдмрдирд╛рдирд╛

Haxe 4 рдиреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП ES6 рдХрдХреНрд╖рд╛рдПрдВ рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреЗрд╢ рдХреА, рдпрд╣ рд╕рдВрдХрд▓рди рдзреНрд╡рдЬ js-es=6 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред


рдЗрди-рдкреНрд▓реЗрд╕ рдлрд╝рдВрдХреНрд╢рдирд▓рд┐рдЯреА

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


рдСрдЯреЛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП

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


рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдлрд╝реАрд▓реНрдб рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдСрдкрд░реЗрдЯрд░ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛

рд╣реЗрдХреНрд╕ 4 рдореЗрдВ, рдЕрдореВрд░реНрдд рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреЗ рдЦреЗрддреЛрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдСрдкрд░реЗрдЯрд░ рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ (рдХреЗрд╡рд▓ рдЙрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдкреНрд░рдХрд╛рд░ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИрдВ)ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, @:op(ab) рдореЗрдЯрд╛ рдЯреИрдЧ рдХреЗ рд╕рд╛рде рдЪрд┐рд╣реНрдирд┐рдд рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред


рдирд┐рд░реНрдорд┐рдд рдорд╛рд░реНрдХрдЕрдк

рдирд┐рд░реНрдорд┐рдд рдорд╛рд░реНрдХрдЕрдк рд╣реИрдХреНрд╕ рдореЗрдВ рдПрдХ рдФрд░ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИред рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдорд╛рд░реНрдХрдЕрдк рдХреЛрдб рдХреЛ рд╕рдВрдХрд▓рдХ рджреНрд╡рд╛рд░рд╛ xml-document рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдХрдВрдкрд╛рдЗрд▓рд░ рдЗрд╕реЗ @:markup рдореЗрдЯрд╛ рдЯреИрдЧ рдореЗрдВ рд▓рд┐рдкрдЯреЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддрд╛ рд╣реИред .



-, - @:markup , .


untyped-

( untyped ). . , , Js.build() - @:markup , <js> , js-.


-  -

Haxe 4 - - , тАФ .



. , . , Int , , C.



тАФ .


:


JVM-

JVM- JDK, Java-. . .



, async / await yield . ( C#, ). Haxe github.


,

Haxe , . ( ) . , .


API

API . , , API .


Haxe 4 !

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


All Articles