Aspnetcore: рдПрдУрдЯреА рд╕рдВрдХрд▓рди

рдХреЛ рдирд┐рд░реНрдорд┐рдд 25 рдЬрдире░ 2018  ┬╖  72рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: dotnet/aspnetcore

WebAssembly рдореЗрдВ рд╕рдм рдХреБрдЫ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ

Components Big Rock External Design affected-most area-blazor blazor-wasm blocked enhancement severity-major

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@ danroth27 рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдФрд░ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рд╕рдореЗрдВ рдЖрдк .NET 5 рдХреЛ рдЕрдиреНрдп рд╕рднреА рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ/рдкреНрд░рд╢реНрди:

AoT рдХреЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ рдХрджрдо рд╣реИ Blazor WebAssembly рдХреЛ рдЙрд╕реА рдХреЛрд░ .NET рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЬреЛ .NET рдХреЛрд░ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рднреА рдорджрдж рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдореЛрдиреЛ mscorlib рд╕реЗ CoreFX рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдХрджрдо рд╣реИ рдпрджрд┐ рдРрд╕рд╛ рдХрдИ рдкреНрд░рдХрд╛рд╢рд┐рдд рдкреНрд░рджрд░реНрд╢рди рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдХреЛрд░рдПрдлрдПрдХреНрд╕ рдХреЛ рдореЛрдиреЛ (рдФрд░ рдЙрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдиреЗрдЯрдПрдлрдПрдХреНрд╕) рд╕реЗ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддреЗ рд╣реБрдП рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдлрд┐рд░ рд╣рдореЗрдВ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рдЖрдИрдПрд▓ рд▓рд┐рдВрдХрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдПрдУрдЯреА рдХреЛ рдХреИрд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╣реИред

рд╣рд╛рдБ рд▓рд┐рдВрдХрд┐рдВрдЧ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝реА рдмрд╛рдзрд╛ рд░рд╣реА рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдБ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ

рдбрд╛рдЙрдирд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкреНрд░рджрд░реНрд╢рди рдХреЛ рджреЗрдЦрдиреЗ рдХреА рднреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред

рдЗрд╕рдХреЗ DOM рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдкреАрд╕ рдХреЛ рднреА рдзреНрдпрд╛рди рд╕реЗ рджреЗрдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рдПрдХ рдЦрд╛рд▓реА Blazor рдРрдк рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдореЗрд░реЗ рдбреЗрд╕реНрдХрдЯреЙрдк рдкрд░ 1-2 рд╕реЗрдХрдВрдб рдФрд░ рдореЛрдмрд╛рдЗрд▓ рдкрд░ рдХреБрдЫ рдФрд░ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдХреЛрдгреАрдп рджреБрдирд┐рдпрд╛ рдореЗрдВ рд░рд╣рдиреЗ рдХреЗ рдмрд╛рдж рдореБрдЭреЗ рд╣рд░ рдмрд╛рд░ "рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ ..." рджреЗрдЦрдиреЗ рдХреА рдЖрджрдд рд╣реИ рдФрд░ рдЖрдзрд╛рд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп рдареАрдХ рд▓рдЧрддрд╛ рд╣реИред рдмрдбрд╝реА рд╕рдорд╕реНрдпрд╛ рдЬрдЯрд┐рд▓ DOMs рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рд╡рд╛рд▓реА рдХрд╖реНрдЯрджрд╛рдпреА рдзреАрдореА рдЧрддрд┐ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ 1000-2000 рддрддреНрд╡реЛрдВ рд╡рд╛рд▓реЗ рдбреЛрдо рднреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд▓реЛрдб рдХреЗ рд▓рд┐рдП 5-10 рд╕реЗрдХрдВрдб рддрдХ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдФрд░ рдЬрдЯрд┐рд▓ рд╡рд╕реНрддреБрдУрдВ рд╕реЗ рдЬреБрдбрд╝реА рдЕрдВрддрдГрдХреНрд░рд┐рдпрд╛рд╢реАрд▓рддрд╛ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдВрддрд░рд╛рд▓ рдЬреЛрдбрд╝рддреА рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рдмрд╛рдд рд╣реЛ рд░рд╣реА рд╣реИ рдФрд░ рдореБрдЭреЗ рдЪрд┐рдВрддрд╛ рд╣реИ рдХрд┐ (1) рдПрдУрдЯреА рдЗрд╕реЗ рд╣рд▓ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбрдмреНрд▓реНрдпреВрдПрдПрд╕рдПрдо/рдЬреЗрдПрд╕ рдЗрдВрдЯрд░рдСрдк рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдирд┐рдХ рд╣реИ рдФрд░ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рджреЛрдиреЛрдВ рдХреЗ рдмреАрдЪ рддрд╛рд░реЛрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ; рдФрд░ (реи) рдмреНрд▓реЗрдЬрд╝рд░ рдореЗрдВ рд░реЗрдВрдбрд░рд┐рдВрдЧ/рдбрд┐рдлрд┐рдВрдЧ рдореИрдХреЗрдирд┐рдЬреНрдо рдЕрдм рдЗрддрдирд╛ рдмреЗрдХ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬрд╝ рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдмрд╣реБрдд рджреЗрд░ рд╣реЛ рдЪреБрдХреА рд╣реИ рдЬреЛ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рд╡рд╛рд▓реА рд╣реЛрдЧреАред

рд╡рд░реНрддрдорд╛рди рд╕реЛрдЪ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдПрдУрдЯреА рдЯреВрд▓рдЪреЗрди рдХреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдПрдВрдЧреЗ рддрд╛рдХрд┐ рдЖрдк рдпрд╣ рддрдп рдХрд░ рд╕рдХреЗрдВ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдРрдк рдХреЛ рдХрд┐рддрдирд╛ рдПрдУрдЯреА рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдРрдк рдорд┐рд╢реНрд░рд┐рдд рдореЛрдб рдореЗрдВ рдЪрд▓реЗрдЧрд╛,

рдареАрдХ рд╡реИрд╕реЗ рд╣реА рдЬреИрд╕реЗ Uno рдкрд╣рд▓реЗ рд╕реЗ рдХрд░ рд░рд╣рд╛ рд╣реИ...

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

рдПрд╕рдкреАрдП рдХреЗ рдХрд╛рд░реНрдпрднрд╛рд░ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ .NET рдиреЗ рдПрдХ рдлреНрд░рдВрдЯрдПрдВрдб рд╡реЗрдм рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд░реВрдк рдореЗрдВ рдЗрддрдирд╛ рдЖрдзрд╛рд░ рдЦреЛ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдХреНрд░реЛрдо рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдХреА рдореГрддреНрдпреБ рд╣реЛ рдЧрдИ рд╣реИред рдмреНрд▓реЗрдЬрд╝рд░ рд╡рд╣ рд╕рдм рдмрджрд▓ рд╕рдХрддрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рдпрд╣ рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддрд╛ рдХрд┐ рдХреНрдпрд╛ Blazor WASM рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ Microsoft рджреНрд╡рд╛рд░рд╛ рд░рдгрдиреАрддрд┐рдХ рдЧреЗрдо рдЪреЗрдВрдЬрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИ рдпрд╛ рдпрд╣ рдореЗрд░реЗ рдЬреИрд╕реЗ рдлреИрдирдмреЙрдп рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ рдЬрд┐рдЬреНрдЮрд╛рд╕рд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рд▓реЗрдХрд┐рди рдлреИрдирдмреЙрдп рдпрд╛ рдирд╣реАрдВ, рдПрдХ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЗ рд╕реНрд╡рд╛рдореА рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЧрд░ рдореИрдВ рдЖрдЬ рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдлреНрд░рдВрдЯрдПрдВрдб рдлреНрд░реЗрдорд╡рд░реНрдХ рдЪреБрди рд░рд╣рд╛ рд╣реВрдВ рдпрд╛ рдПрдХ рдкреБрд░рд╛рдиреЗ рдХреЗ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЕрдкрдиреЗ рд╕рдорд░реНрдердХреЛрдВ рдХреЛ рдХреИрд╕реЗ рдЙрдЪрд┐рдд рдард╣рд░рд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдмреНрд▓реЗрдЬрд╝рд░ рдЬрд╛рдиреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рд╣реИ, рд░рд┐рдПрдХреНрдЯ рдпрд╛ рдПрдВрдЧреБрд▓рд░ рдкрд░? рдЬрдм рдореИрдВ рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╡рд┐рдкрдХреНрд╖реЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рд╕реА # рдкрд╕рдВрдж рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рд╕рдорд░реНрдердХ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрдпрд╛ рдмрдЪрд╛ рд╣реИ? рджреВрд╕рд░реА рдУрд░, рд╡рд┐рдкрдХреНрд╖ рдмрдврд╝рддреЗ рд░рд╣рддреЗ рд╣реИрдВред

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

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

рд╕рднреА 72 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mono-wasm . рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдЕрдиреБрд╡рд░реНрддреА рдХрд╛рд░реНрд░рд╡рд╛рдИ

рдХреНрдпрд╛ рдЖрдк рдХреЛрдИ рдРрд╕рд╛ рдореБрджреНрджрд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рд╣рдо рдЗрд╕ рдкрд░ рдкреНрд░рдЧрддрд┐ рдХреЛ рдЯреНрд░реИрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рд╡рд░реНрддрдорд╛рди рджреБрднрд╛рд╖рд┐рдпрд╛ рдореЛрдб рдмрд╣реБрдд рдзреАрдорд╛ рд╣реИред
https://dotnetfiddle.net/JUpsRT

.NET 300 рдПрдордПрд╕
WASM: резрейрезрелрел рдПрдордПрд╕

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

@ danroth27 рдореЛрдиреЛ рдЖрдИрдПрд▓ рджреБрднрд╛рд╖рд┐рдпрд╛ рдФрд░ рд╡рд░реНрддрдорд╛рди mono.wasm рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмреАрдЪ рдкреНрд░рджрд░реНрд╢рди рдЕрдВрддрд░ рд▓рдЧрднрдЧ 5-10x рд╣реИред рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ mono.wasm рд▓рдЧрднрдЧ 50-80x рд╣реИ рдФрд░ IL рджреБрднрд╛рд╖рд┐рдпрд╛ рдореВрд▓ .NET рдХреЛрд░ рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ 10x рдзреАрдорд╛ рд╣реИред

рддреЛ рджреБрднрд╛рд╖рд┐рдпрд╛ рдЕрднреА рднреА рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рдмрд╣реБрдд рддреЗрдЬрд╝ рдирд╣реАрдВ рд╣реИ рдФрд░ WebAssembly рдЙрд╕рдХреЗ рдКрдкрд░ рдФрд░ рднреА рдЕрдзрд┐рдХ рдУрд╡рд░рд╣реЗрдб рдЬреЛрдбрд╝рддрд╛ рд╣реИред

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

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

рдХреНрдпрд╛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ Blazor рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП AoT рд╕рдВрдХрд▓рди рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рддрд░реАрдХрд╛ рд╣реИ? рдореИрдВ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдкрдврд╝рддрд╛ рд░рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ Blazor рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА AoT рдореЛрдб рд╣реИ; рдпрджрд┐ рдпрд╣ рд╕рдЪ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдХреЛрдИ рдХреГрдкрдпрд╛ рдХрд┐рд╕реА рд▓реЗрдЦ рдХреА рдУрд░ рд╕рдВрдХреЗрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛рдП?

@TheFanatr рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдореЛрдиреЛ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИред рдЬрд╣рд╛рдБ рддрдХ рдореЗрд░рд╛ рд╡рд┐рд╖рдп рдкрд░ рдЕрдВрддрд┐рдо рдЕрджреНрдпрддрди рдмрддрд╛ рд╕рдХрддреЗ рдореЗрдВ @migueldeicaza рд╕реЗ рдерд╛ Blazor Gitter ред

рдорд┐рдЧреБрдПрд▓ рдбреА рдЗрдХрд╛рдЬрд╝рд╛ (2018-06-08 19:01):
рд╣рдо рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреНрдпрд╛ рд╣реБрдЖ рдпрд╣ рд╣реИ:
рджреБрднрд╛рд╖рд┐рдпрд╛ "рдПрдореНрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрди" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХрд╛рдлреА рдкреВрд░реНрдг libc рд╣реИ рдЬрд┐рд╕ рдкрд░ рд╣рдо рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рд╣рдорд╛рд░рд╛ AOT рдЗрдВрдЬрди рд╢реБрджреНрдз LLVM рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдкреВрд░реНрдг libc рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рдЖрджрд░реНрд╢ рд╕реНрдерд╛рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рджреЗрд╢реА рд▓рд┐рдВрдХрд░реНрд╕ рдФрд░ рддрддреНрдХрд╛рд▓ рдПрд▓рдПрд▓рд╡реАрдПрдо рд╕рдорд░реНрдерди рдЖрджрд┐ рдорд┐рд▓рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди woudl рд╣рдореЗрдВ рдЙрд╕ libc рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд░рд╛рд╕реНрддреЗ рдкрд░ рднреЗрдЬ рджреЗрдЧрд╛ред
рддреЛ рдЕрд▓реНрдкрд╛рд╡рдзрд┐ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдУрдЯреА рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдПрдореНрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд░рд╣реЗ рд╣реИрдВ, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╣рдо рд╕рдВрдЧрддрддрд╛ рдмрдирд╛рдП рд░рдЦреЗрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдпрд╣ рд╣реИ рдХрд┐ рдПрдореНрд╕реНрдХреНрд░рд┐рдкреНрдЯрди рдЯреВрд▓рд┐рдВрдЧ рдкреБрд░рд╛рдиреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрд▓рдПрд▓рд╡реАрдПрдо рд▓рд┐рдВрдХрд░ рдЬреИрд╕реЗ рдХрдИ рдмреЗрд╣рддрд░ рдЯреБрдХрдбрд╝реЗ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП рд╣рдо рдЙрди рдЪреАрдЬреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдореВрд▓ рд░реВрдк рд╕реЗ, рд╣рдордиреЗ рдХреБрдЫ рдХрд┐рдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдЕрдкрдиреЗ рджрдо рдкрд░ рд╕рдм рдХреБрдЫ рд▓рд┐рдЦрдиреЗ рдФрд░ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдП рдмрд┐рдирд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЬреЛ рдХреБрдЫ рднреА рд╣реИ рдЙрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд░реЛрдВрдЪ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рд╣рдо рдЙрди рджреЛрдиреЛрдВ рдХреЛ рдорд┐рд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рдереЗ, рд▓реЗрдХрд┐рди рдпрд╣ рднреА рдПрдХ рдмрдбрд╝рд╛ рдкреНрд░рдпрд╛рд╕ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдФрд░ рд╡рд╣рд╛рдВ рдХреБрдЫ рдХрд▓рд╛рддреНрдордХ рд╣реИрдХреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрднреА рдХреЗ рд▓рд┐рдП рдПрдореНрд╕реНрдХреНрд░рд┐рдкреНрдЯрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рддреЛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╡реЗ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореМрдЬреВрджрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред

CoreRT рдореЗрдВ рдХреБрдЫ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдкреНрд░рдЧрддрд┐ рдХреА рд╕реВрдЪрдирд╛ рдорд┐рд▓реА рд╣реИ !!

https://github.com/dotnet/corert/issues/4659#issuecomment -425690500

рдХрд┐рд╕реА рдХреЛ рдЗрд╕ рдкрд░ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреНрдпрд╛ рд░реЛрдХ рд░рд╣рд╛ рд╣реИ? рдореИрдВ рдПрдУрдЯреА рдХреЛ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдШрдЯрд┐рдд рд╣реЛрддреЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЯреНрд░рд┐рд▓рд┐рдпрди рд╢реНрд░рдо рдШрдВрдЯреЗ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдХреНрд▓рд╛рдЗрдВрдЯрд╕рд╛рдЗрдб рдмреНрд▓реЗрдЬрд╝рд░ рдЙрди рд╢рдХреНрддрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рдмрджреНрдз рд╣реИ рдЬреЛ рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рдореЗрдВ рд╣реИрдВред AOT рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдпрджрд┐ рд╣рдо Blazor рдХреЗ рд╕рд╛рде (рдЙрддреНрдХреГрд╖реНрдЯ) PWA рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

@honkmother AoT рдкрд░ https://github.com/mono/mono рд░реЗрдкреЛ рдореЗрдВ mono.wasm рд▓реЛрдЧ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рд╡реЗ рдЖрдкрдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рд░реЛрдорд╛рдВрдЪрд┐рдд рд╣реЛрдВрдЧреЗ! рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЙрдирдХреЗ рдХрд╛рдо рдХреЗ рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЦрдкрдд рдХреЛ рдЯреНрд░реИрдХ рдХрд░рддреА рд╣реИред

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

@honkmother рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рдареЛрд╕ рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдЖрдкрдХреЗ рдкреНрд░рдпреЛрдЧ рдХреЗ рдкрд░рд┐рдгрд╛рдо

рдореИрдВ /dist/bin/ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ ILRepack рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ System.Core.dll рд╕рд╣рд┐рдд рдЙрдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХреЛ рдПрдХ рд╕рд╛рде рдорд┐рд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рдмрд╛рдж рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдиреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕рд┐рд░ рдЦреБрдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдмрдЧ рдкреЗрд╢ рдХрд┐рдП рдЬрд┐рдиреНрд╣реЗрдВ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП; рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдк рдкреВрд░реЗ рдмреНрд▓реЙрдм рдХреЛ рдлрд┐рд░ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рдХреЛрдб рдХреЗ рдЕрджреНрдпрддрди рдЯреБрдХрдбрд╝реЛрдВ рдХреЗ рд▓рд┐рдП рдХреИрд╢рд┐рдВрдЧ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЦреЛ рд░рд╣реЗ рд╣реИрдВред

рддреЛ рдХреНрдпрд╛ рдЗрд╕ рдкрд░ рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдИрдЯреАрдП рдкрд░ рдХреЛрдИ рд╡рд┐рдХрд╛рд╕ рд╣реБрдЖ рд╣реИ? рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд╛рдЗрдб WASM рдкреНрд░рджрд░реНрд╢рди рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрднреА рднреА рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ рдЬреИрд╕реЗ рд╣реА DOM рдпрдереЛрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

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

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

рдЦреИрд░, рдореИрдВ рдпрд╣ рднреА рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдХреБрдЫ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ .NET 5 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдШреЛрд╖рдгрд╛ рдХреЗ рдЖрд▓реЛрдХ рдореЗрдВ рдХреБрдЫ рдмрджрд▓ рдЧрдпрд╛ рд╣реИред рд╡рд╣рд╛рдВ рджрд┐рд▓рдЪрд╕реНрдк рдЙрджреНрдзрд░рдг:

Blazor рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореЛрдиреЛ AOT рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реА рд╣реИред рдпрд╣ .NET 5 рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдкрд╣рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реЛрдЧреАред рд╣рдо рдЗрд╕ рдпреЛрдЬрдирд╛ рдХреЛ рд╕рд╛рдмрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдПрдХ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдХреНрдпрд╛ рд╡реЗ рдХреБрдЫ рдРрд╕рд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ рдЬреЛ рд╣рдо рдирд╣реАрдВ рдЬрд╛рдирддреЗ?

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

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

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

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

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

https://github.com/SamProf/BlazorVirtualScrolling рднреА рд╣реИ рдЬреЛ рджреЗрдЦрдиреЗ рд▓рд╛рдпрдХ рднреА рд╣реИред

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

рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмреНрд▓реЗрдЬрд╝рд░-рд╡рд╛рд╕рдо рдЯреИрдЧ рд╕реЗ рдЯреИрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ? рд╕рднреА рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб (рдпрд╛ рдЕрдЬреНрдЮреЗрдпрд╡рд╛рджреА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ) рдмреНрд▓реЗрдЬрд╝рд░ рдореБрджреНрджреЛрдВ рдХреЗ рдмреАрдЪ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреЛрдЬрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред

рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдореЛрдиреЛ WASM AOT рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд┐рдВрд╣рд╛рд╡рд▓реЛрдХрди рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдореБрдЭреЗ рдпрд╣ рд▓рд┐рдВрдХ рдорд┐рд▓рд╛:
https://github.com/mono/mono/projects/11

рдЖрдкрдХреА рдЗрдЪреНрдЫрд╛ рд╣реА рдореЗрд░реА рдЖрдЬреНрдЮрд╛ рд╣реИ

рдзрдиреНрдпрд╡рд╛рдж рдпрд╣ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реИ!

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

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

рдореИрдВрдиреЗ рдЗрд╕ рдкреНрд░рд╢реНрди рдХреЛ рдпрд╣рд╛рдВ https://github.com/mono/mono/issues/10222 рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрддреНрддрд░ рдорд┐рд▓рд╛ рдХрд┐ рдпрд╣ рдЧрд▓рдд рдЬрдЧрд╣ рд╣реИред рдпрд╣рд╛рдВ рджреЛрдмрд╛рд░рд╛ рдкреЛрд╕реНрдЯрд┐рдВрдЧ:

рдпрд╣ рдШреЛрд╖рдгрд╛ рдХреА рдЧрдИ рдереА рдХрд┐ Blazor WASM рдордИ 2020 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдХреНрдпрд╛ рд╣рдо рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЗрд╕ рд╕рдордп рдореВрд▓ WASM рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реЛрдЧрд╛? рд╕рд╣реА рдЙрддреНрддрд░ рдХреНрдпрд╛ рд╣реИ?

  1. рд╣рд╛рдВред
  2. рд╣рдо рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдпрдХреАрди рдирд╣реАрдВ рд╣реИред
  3. рдирд╣реАрдВ, рдпрд╣ рдирд╡рдВрдмрд░ 2020 рдореЗрдВ .NET 5.0 рдХреЗ рд╕рд╛рде рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред
  4. рдирд╣реАрдВ, рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рдХреЛрдИ рд░реЛрдбрдореИрдк рдирд╣реАрдВ рд╣реИред

рд╕рднреА Blazor рдкреНрд░рд╢рдВрд╕рдХреЛрдВ рдХреЗ рд▓рд┐рдП рджреЛ рдЪреАрдЬреЗрдВ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ:

  • рд░рдирдЯрд╛рдЗрдо рдЧрддрд┐ - рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреБрдЫ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдзреАрдорд╛ рд╣реИред
  • рдбрд╛рдЙрдирд▓реЛрдб рдЖрдХрд╛рд░ - рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдк рд╡рд░реНрддрдорд╛рди .NET DLL рдХреЗ рд╕рдорд╛рди WASM рдЖрдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ рдФрд░ рд╣рдо mono.wasm рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ (рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЗрд╡рд▓ IL рджреБрднрд╛рд╖рд┐рдпрд╛ рд╣реИ - рдХреНрдпрд╛ рдореИрдВ рд╕рд╣реА рд╣реВрдБ?)

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

рдЖрдкрдХреА рдХрдбрд╝реА рдореЗрд╣рдирдд рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рджреЛрд╕реНрддреЛрдВ !!!

@ Andrzej-W рдпрд╣ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рднреА рдереЛрдбрд╝рд╛ рднреНрд░рд╛рдордХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдХрд┐рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ рдирд╡рдВрдмрд░ 2020 рд╡рд┐рд╣рд┐рдд рд░рд┐рд▓реАрдЬ рд╣реИред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореИрдВрдиреЗ рд╕реБрдирд╛ рд╣реИ рдХрд┐ рдпрд╣ 2020 рдХреА рдкрд╣рд▓реА рддрд┐рдорд╛рд╣реА рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рд╕рд╛рдордиреЗ рдЖрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдлреВрд▓рд╛ рд╣реБрдЖ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдЖрдХрд╛рд░ рд╕реЗ рдкрд░реЗ рд╣реИ рдФрд░ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рддрдХ Microsoft рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рддрдм рддрдХ рд╣рдореЗрдВ рдЗрд╕реЗ рдЕрдкрдиреА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдХреЛрдИ рд░реЛрдХ рдирд╣реАрдВ рд╕рдХрддрд╛ рд╣реИред

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдлреВрд▓рд╛ рд╣реБрдЖ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдЖрдХрд╛рд░ рд╕реЗ рдкрд░реЗ рд╣реИ рдФрд░ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рддрдХ Microsoft рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рддрдм рддрдХ рд╣рдореЗрдВ рдЗрд╕реЗ рдЕрдкрдиреА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдХреЛрдИ рд░реЛрдХ рдирд╣реАрдВ рд╕рдХрддрд╛ рд╣реИред

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

.NET Conf рдореЗрдВ рд╣рдордиреЗ рдШреЛрд╖рдгрд╛ рдХреА рдХрд┐ Blazor WebAssembly рдХреА рдкрд╣рд▓реА рд░рд┐рд▓реАрдЬрд╝ рдордИ 2020 рдХреЗ рд▓рд┐рдП рдпреЛрдЬрдирд╛рдмрджреНрдз рд╣реИред рдЗрд╕ рдкрд╣рд▓реА Blazor WebAssembly рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд▓рд┐рдП рд╣рдо рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд░рдирдЯрд╛рдЗрдо рдЕрднреА рднреА IL рдЗрдВрдЯрд░рдкреНрд░реЗрдЯрд░ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдХрд╛ рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

.NET рд░рдирдЯрд╛рдЗрдо рдЯреАрдо рд╕реАрдзреЗ WASM рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рд╕рдВрдХрд▓рди рд╕рдорд░реНрдерди рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рд░рдирдЯрд╛рдЗрдо рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд▓рд╛рдн рд╣реИ, рд▓реЗрдХрд┐рди рдРрдк рдЖрдХрд╛рд░ рдХреА рдХреАрдордд рдкрд░ред

рдордИ рдореЗрдВ Blazor WebAssembly рдХреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд▓рд┐рдП рд╣рдо рдорд┐рд╢реНрд░рд┐рдд рдореЛрдб рдореЗрдВ IL рджреБрднрд╛рд╖рд┐рдпрд╛ рдЪрд▓рд╛рдиреЗ рдХреА рдЦреЛрдЬ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬрд╣рд╛рдБ рд╣реЙрдЯ рдкрд╛рде рдХреЛ WASM рдХреЗ рд▓рд┐рдП рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╛рдХреА рдРрдк .NET рдЕрд╕реЗрдВрдмрд▓реА рд╣реИрдВред рдпрд╣ рд░рдирдЯрд╛рдЗрдо рдкреНрд░рджрд░реНрд╢рди рдФрд░ рдРрдк рдЖрдХрд╛рд░ рдХреЗ рдмреАрдЪ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдордЭреМрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рдЕрднреА рддрдХ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдордИ рдХреЗ рд▓рд┐рдП рд╕рдордп рдкрд░ рдЙрддрд░реЗрдЧрд╛ рдпрд╛ рдирд╣реАрдВред

рд▓рдВрдмреЗ рд╕рдордп рддрдХ, рд╣рдо рдПрдХ рдРрд╕рд╛ SDK рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдРрдк рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдпрд╣ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░реЗ рдХрд┐ рдЙрдирдХреЗ рдРрдк рдХреЗ рдХреМрди рд╕реЗ рд╣рд┐рд╕реНрд╕реЗ рд╕реАрдзреЗ WASM рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред рдРрд╕рд╛ рдПрд╕рдбреАрдХреЗ рдХрдм рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛, рдЗрд╕рдХрд╛ рдЕрднреА рдХреЛрдИ рд░реЛрдбрдореИрдк рдирд╣реАрдВ рд╣реИред

@lewing @richlander

рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд▓рд┐рдП @ danroth27 рдзрдиреНрдпрд╡рд╛рджред рдбрд╛рдЙрдирд▓реЛрдб рдЖрдХрд╛рд░ рдХреЛ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкреНрд░реАрд░реЗрдВрдбрд░рд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдЫреБрдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдпрд╣ https://github.com/danroth27/ClientSideBlazorWithPrerendering рднрд╡рд┐рд╖реНрдп рдХреЗ рд╕рднреА рдмреНрд▓реЗрдЬрд╝рд░ (рдкреНрд░реА) рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

@ danroth27 рдЕрджреНрдпрддрди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдПрдХ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдкреНрд░рд╢реНрди - рдХреНрдпрд╛ ".NET рд░рдирдЯрд╛рдЗрдо рдЯреАрдо" рдореЛрдиреЛ рдЯреАрдо, CoreRT, .NET 5, рдпрд╛ рдХреБрдЫ рдФрд░ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ?

@legistek рд╡реЗ рд╕рднреА рдЕрдм рдПрдХ рдЯреАрдо рд╣реИрдВ: рдореБрд╕реНрдХрд╛рди:ред рддрдХрдиреАрдХ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореЛрдиреЛ рд░рдирдЯрд╛рдЗрдо рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред

рдУрд╣, рдареАрдХ рд╣реИ рдореИрдВ рднреВрд▓ рдЧрдпрд╛ред ;рдбреА рдореБрдЭреЗ рдЬреЛ рдорд┐рд▓ рд░рд╣рд╛ рдерд╛ рд╡рд╣ рдпрд╣ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдореЛрдиреЛ/рд╡рд╛рд╕рдо/10222 рд╕рд╣реА рдореБрджреНрджрд╛/рд░реЗрдкреЛ рдерд╛ред

@legistek рд╣рд╛рдБ, рд╕рднреА .NET WASM рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореЛрдиреЛ рд░реЗрдкреЛ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред

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

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдорд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╕рдВрдХрд▓рд┐рдд WASM рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЪрд▓реЗрдЧрд╛ред

рдЕрдЧрд░ рд╣рдо рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдбрд╛рдЙрдирд▓реЛрдб рдЖрдХрд╛рд░ рдпрд╛ рд╕рдВрдХрд▓рди рд╕рдордп рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХреНрдпрд╛ рдПрдУрдЯреА рджреНрд╡рд╛рд░рд╛ рдмреНрд▓реЗрдЬрд╝рд░ рдРрдк рдХреЛ рдбрдмреНрд▓реНрдпреВрдПрдПрд╕рдПрдо рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ? рдореЛрдиреЛ рд░реЗрдкреЛ (https://github.com/mono/mono/issues/10222) рдкрд░ рд▓реЛрдЧ AOT рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг Uno рдЬреИрд╕реЗ рдЕрдиреНрдп рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд╕рд╛рде рдкреЛрд╕реНрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рддрдХ рдПрдХ Blazor рдЙрджрд╛рд╣рд░рдг рджреЗрдЦрдирд╛ рд╣реИ, рдЕрдХреЗрд▓реЗ рдирд┐рд░реНрджреЗрд╢ рджреЗрдВ рдХрд┐ рдХреИрд╕реЗ рдЗрд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

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

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

@legistek рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЕрдкрдирд╛ рдРрдк рдпрд╛ рдХреБрдЫ рдФрд░ рдмрдирд╛рдпрд╛ рд╣реИ? рдкреНрд░рджрд░реНрд╢рди рдХрд┐рддрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ? рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдореАрдЯреНрд░рд┐рдХ рд╣реИрдВ? рдЙрддреНрд╕реБрдХрддрд╛рд╡рд╢ рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВред

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

рдЧрдгрд┐рдд рдХреЗ рд▓рд┐рдП (рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдкреАрдврд╝реА рдФрд░ рд╕рд░рд▓ рдЕрдВрдХрдЧрдгрд┐рдд) рдореИрдВрдиреЗ рдПрдУрдЯреА рдХреЛ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ 40x рддреЗрдЬ рдкрд╛рдпрд╛ред

рдЬрд┐рди рдЪреАрдЬреЛрдВ рдореЗрдВ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рдереА, рд╡реЗ рдЪреАрдЬреЗрдВ рдереАрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЬрд╛рдирддрд╛ рдерд╛ рдХрд┐ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореИрдирд┐рдкреБрд▓реЗрд╢рди рдЬреИрд╕реЗ рдЕрдХреНрд╖рдо рд╣реЛрдВрдЧреЗред рдореЗрд░реЗ рдРрдк рдореЗрдВ рдбрдмреНрд▓реНрдпреВрдкреАрдПрдл рдХреЗ рд╕рдорд╛рди рдПрдХ рдХрд╕реНрдЯрдо рдбреЗрдЯрд╛ рдмрд╛рдзреНрдпрдХрд╛рд░реА рдврд╛рдВрдЪрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдПрдХ рдЬрдЯрд┐рд▓ рдбреЗрдЯрд╛ рдмрд╛рдзреНрдпрдХрд╛рд░реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдорд╛рди рдХреЛ 10,000 рдмрд╛рд░ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдмрджрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рдпрд╣рд╛рдБ рдкрд░рд┐рдгрд╛рдо рдереЗ:

рдореЛрдиреЛ рдЗрдВрдЯрд░рдкреНрд░реЗрдЯреЗрдб рдЖрдИрдПрд▓: 2.49s
рдкреВрд░реНрдг рдПрдУрдЯреА (рдХреНрд░реЛрдо): 0.702s
рдкреВрд░реНрдг рдПрдУрдЯреА (рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕): 0.5s
рдореВрд▓ рдирд┐рд╡рд╛рд╕реА: 0.067s

рддреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдУрдЯреА рдХреА рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рд╣реИ рдЬреЛ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд┐рдП рдЧрдП рдЖрдИрдПрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рдЧрднрдЧ 4x рддреЗрдЬ рд╣реИ, рд▓реЗрдХрд┐рди 40x рдЬрд┐рддрдирд╛ рдЕрдЪреНрдЫрд╛ рдорд╛рдорд▓рд╛ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╢рд╛рдпрдж рдЗрд╕рдХреА рдЙрдореНрдореАрдж рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред

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

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

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

https://d07riv.github.io/diabloweb/ рдЬреИрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдВрджреЗрд╣ рдХреЗ рд╕рд╛рдмрд┐рдд рдХрд░рддреА рд╣реИрдВ рдХрд┐ WebAssembly рдЦреБрдж рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рддрдХ Mono+WASM рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХрд╛ рдПрдХ рд╕рдорд╛рди рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдкреНрд░рдорд╛рдг рджреЗрдЦрдирд╛ рдмрд╛рдХреА рд╣реИред

рдпрд╣ рдореБрджреНрджрд╛ рджреЛ рд╕рд╛рд▓ рдХреЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рд╣реИ.. рдХреНрдпрд╛ рдХреЛрдИ рдкреНрд░рдЧрддрд┐ рд╣реБрдИ рд╣реИ?

@рдкрд╛рд░реНрдЯреАрд▓рд╛рдЗрдЯ рд╣рд╛рдВ, рдкреНрд░рдЧрддрд┐ рд╣реБрдИ рд╣реИред https://github.com/mono/mono repo рдореЗрдВ WASM рдХреЗ рд▓рд┐рдП AoT рд╕рдВрдХрд▓рди рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ рдФрд░ .NET IL рдФрд░ рд╕рдВрдХрд▓рд┐рдд WASM рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдорд┐рд╢реНрд░рдг рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рд░рдирдЯрд╛рдЗрдо рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, AoT рд╕рдкреЛрд░реНрдЯ рдЖрдЧрд╛рдореА рдордИ рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рд╣рдо рдЗрд╕реЗ .NET 5 рдХреЗ рд▓рд┐рдП рд╢рд┐рдкрд┐рдВрдЧ рдкрд░ рдлрд┐рд░ рд╕реЗ рджреЗрдЦреЗрдВрдЧреЗред

рдореИрдВрдиреЗ рдПрдУрдЯреА рд╕рдВрдХрд▓рди рд╡рд┐рдХрд▓реНрдк рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдбреИрди рдХрд╛ рдЬрд┐рдХреНрд░ рд╣реИ рдФрд░ рдпрд╣ рдпреВрдиреЛ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

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

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд┐рдВрдХрдлреНрдпреВрдЬрди рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдкрд░ рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛ рдХреА рд╕реВрдЪрдирд╛ рджреА рдЧрдИ рдереА (https://github.com/syncfusion/blazor-samples/issues/50), рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдореЛрдиреЛ рдХрд╛ рдзреАрдорд╛ рдкреНрд░рджрд░реНрд╢рдиред

рдореЗрд░реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЗрдВ, рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛ js_to_wasm рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рд╣реЛ рдЬрд╛рддреА рд╣реИ:
grafik

рдХреНрдпрд╛ рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЗрд╕ рдФрд░ рдореЛрдиреЛ рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛? рдпрд╛ рдпрд╣ рдХреБрдЫ рдЕрд╕рдВрдмрдВрдзрд┐рдд рд╣реИ?

@Herdo рдпрд╣ рдЗрд╕рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ: https://github.com/dotnet/aspnetcore/issues/5617

рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╡реЗрдм рдХрдВрд╕реЛрд▓ рд▓реЙрдЧ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЕрддреНрдпрдзрд┐рдХ GCing рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ WASM рдореЛрдиреЛ рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рдмреЗрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп IMO рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@honkmother ,
рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдмреНрд▓реЗрдЬрд╝рд░ рдбреАрдПрд▓рдПрд▓ рдХреЛ ILRepack рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬрд┐рдВрдЧ рдХрд░рдиреЗ рдореЗрдВ рдХреИрд╕реЗ рд╕рдлрд▓ рд╣реБрдП? рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░ ILRepack.MSBuild.Task рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛

WASM: System.IO.FileNotFoundException: рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдЕрд╕реЗрдВрдмрд▓реА 'рдиреЗрдЯрд╕реНрдЯреИрдВрдбрд░реНрдб, рд╡рд░реНрдЬрди = 2.1.0.0, рдХрд▓реНрдЪрд░ = рдиреНрдпреВрдЯреНрд░рд▓, рдкрдмреНрд▓рд┐рдХрдХреАрдЯреЛрдХрди = cc7b13ffcd2ddd51' рдпрд╛ рдЗрд╕рдХреА рдХрд┐рд╕реА рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд▓реЛрдб рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред

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

рд╣рдореНрдо AOT, UNO рдореЗрдВ рд╣реИ . рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЛ рд╕реА рдПрдВрдб рдкреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

.рдиреЗрдЯ 5 рдмреНрд▓реЗрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░реЗрдЧрд╛?

рдпрд╣ рд░реЛрдбрдореИрдк рд╕реЗ рднреА рд╣рдЯ рдЧрдпрд╛ рд╣реИред

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

рдЗрд╕рдХреЗ рдореЛрдиреЛ рдкрдХреНрд╖ рдкрд░ рдорд╣реАрдиреЛрдВ рдореЗрдВ рдХреЛрдИ рд░рд┐рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИ:
https://github.com/mono/mono/issues/10222

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдШрд╛рдЯреЗ рдореЗрдВ рдХрдЯреМрддреА рдХрд░рдиреЗ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп CoreRT рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реЛред

@ ram16g @legistek рд╣рдо .NET 5 (рдФрд░ рдЙрд╕рд╕реЗ рдЖрдЧреЗ) рдореЗрдВ Blazor WebAssembly рд░рдирдЯрд╛рдЗрдо рдкреНрд░рджрд░реНрд╢рди рдХреЛ

рдирдорд╕реНрддреЗ @ danroth27 , рд╕рдордЧреНрд░ рдкреНрд░рджрд░реНрд╢рди рдЕрднреА рдореЗрд░реА рдЪрд┐рдВрддрд╛ рдХреЗ рд▓рд┐рдП рдЗрддрдирд╛ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ? рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреГрд╖реНрда рд▓реЛрдб рд╣реЛрдиреЗ рддрдХ рдкреНрд░рддреНрдпреЗрдХ рдкреГрд╖реНрда рдкрд░ рдЬрд╛рдиреЗ рдореЗрдВ 2-3 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ, рдЬрдм рддрдХ рдХрд┐ рд░рдирдЯрд╛рдЗрдо рд▓реЛрдб рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рдВрдХрд▓рд┐рдд рдбреАрдПрд▓рдПрд▓ рдЖрджрд┐ред рдХреНрдпрд╛ рдПрдУрдЯреА рдХреЗ рдмрд┐рдирд╛ рд╕реБрдзрд╛рд░ рд╣реЛрдЧрд╛? рдпрд╛ рдХреНрдпрд╛ рд╣рдореЗрдВ рдкреНрд░реАрд░реЗрдВрдбрд░рд┐рдВрдЧ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ?

рд╣рд╛рдп @MichaelPeterред рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреГрд╖реНрда рд▓реЛрдб рд╕рдордп рдРрдк рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рд░рдирдЯрд╛рдЗрдо рд╢реБрд░реВ рдХрд░рдиреЗ рдкрд░ рд╣рд╛рд╡реА рд╣реИред AoT рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдореЗрдВ рдорджрдж рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред AoT рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд░рдирдЯрд╛рдЗрдо рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ рд╣реИ, рди рдХрд┐ рдРрдк рдбрд╛рдЙрдирд▓реЛрдб рдЖрдХрд╛рд░ рдХреЛ рдХрдо рдХрд░рдирд╛ред JIT рдЖрдзрд╛рд░рд┐рдд рд░рдирдЯрд╛рдЗрдо рдХреЗ рд▓рд┐рдП AoT рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рд░рдирдЯрд╛рдЗрдо рдкрд░ JIT рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдмрдЪрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди Blazor WebAssembly рдмрд┐рдирд╛ рдХрд┐рд╕реА JIT рд╕рдорд░реНрдерди рдХреЗ IL рджреБрднрд╛рд╖рд┐рдпрд╛ рдЖрдзрд╛рд░рд┐рдд рд░рдирдЯрд╛рдЗрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

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

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

@ danroth27 рдХреНрдпрд╛ рдРрдк рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкреНрд░рджрд░реНрд╢рди рдХреА рдкреНрд░рдЧрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВ рдЕрдиреБрд╕рд░рдг рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ? рдмреНрд▓реЗрдЬрд╝рд░ рдХреЛ рд▓реЗрдХрд░ рдЗрд╕ рд╕рдордп рдореЗрд░реА рд╕рдмрд╕реЗ рдмрдбрд╝реА рдЪрд┐рдВрддрд╛ рдпрд╣реА рд╣реИред

@ danroth27 : +1: рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдЬреНрдпрд╛рджрд╛рддрд░ рд▓реИрди envoirements рдореЗрдВ Blazor рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд╣рд╛рдВ рдбрд╛рдЙрдирд▓реЛрдб рд╕рдордп рд▓рдЧрднрдЧ рд╢реВрдиреНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕реЛрдЪрд╛ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреИрд╢рд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред рдиреЗрдЯ рдбреАрдПрд▓рдПрд▓ рд╡реИрд╕реЗ рднреАред рд▓реЗрдХрд┐рди рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдЗрд╢реНрдпреВ рдореЗрдВ рдореБрдЭреЗ рднреА рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреАред

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

рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЖрдк https://v8.dev/blog/wasm-code-caching рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдореЗрдВ рдПрдХ рд╕рдорд╛рди рддрдВрддреНрд░ рд╣реИ, рдФрд░ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рд╕рдлрд╛рд░реА рднреА рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВред

@ danroth27 рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдФрд░ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рд╕рдореЗрдВ рдЖрдк .NET 5 рдХреЛ рдЕрдиреНрдп рд╕рднреА рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ/рдкреНрд░рд╢реНрди:

AoT рдХреЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ рдХрджрдо рд╣реИ Blazor WebAssembly рдХреЛ рдЙрд╕реА рдХреЛрд░ .NET рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЬреЛ .NET рдХреЛрд░ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рднреА рдорджрдж рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдореЛрдиреЛ mscorlib рд╕реЗ CoreFX рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдХрджрдо рд╣реИ рдпрджрд┐ рдРрд╕рд╛ рдХрдИ рдкреНрд░рдХрд╛рд╢рд┐рдд рдкреНрд░рджрд░реНрд╢рди рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдХреЛрд░рдПрдлрдПрдХреНрд╕ рдХреЛ рдореЛрдиреЛ (рдФрд░ рдЙрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдиреЗрдЯрдПрдлрдПрдХреНрд╕) рд╕реЗ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддреЗ рд╣реБрдП рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдлрд┐рд░ рд╣рдореЗрдВ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рдЖрдИрдПрд▓ рд▓рд┐рдВрдХрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдПрдУрдЯреА рдХреЛ рдХреИрд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╣реИред

рд╣рд╛рдБ рд▓рд┐рдВрдХрд┐рдВрдЧ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝реА рдмрд╛рдзрд╛ рд░рд╣реА рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдБ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ

рдбрд╛рдЙрдирд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкреНрд░рджрд░реНрд╢рди рдХреЛ рджреЗрдЦрдиреЗ рдХреА рднреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред

рдЗрд╕рдХреЗ DOM рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдкреАрд╕ рдХреЛ рднреА рдзреНрдпрд╛рди рд╕реЗ рджреЗрдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рдПрдХ рдЦрд╛рд▓реА Blazor рдРрдк рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдореЗрд░реЗ рдбреЗрд╕реНрдХрдЯреЙрдк рдкрд░ 1-2 рд╕реЗрдХрдВрдб рдФрд░ рдореЛрдмрд╛рдЗрд▓ рдкрд░ рдХреБрдЫ рдФрд░ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдХреЛрдгреАрдп рджреБрдирд┐рдпрд╛ рдореЗрдВ рд░рд╣рдиреЗ рдХреЗ рдмрд╛рдж рдореБрдЭреЗ рд╣рд░ рдмрд╛рд░ "рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ ..." рджреЗрдЦрдиреЗ рдХреА рдЖрджрдд рд╣реИ рдФрд░ рдЖрдзрд╛рд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп рдареАрдХ рд▓рдЧрддрд╛ рд╣реИред рдмрдбрд╝реА рд╕рдорд╕реНрдпрд╛ рдЬрдЯрд┐рд▓ DOMs рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рд╡рд╛рд▓реА рдХрд╖реНрдЯрджрд╛рдпреА рдзреАрдореА рдЧрддрд┐ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ 1000-2000 рддрддреНрд╡реЛрдВ рд╡рд╛рд▓реЗ рдбреЛрдо рднреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд▓реЛрдб рдХреЗ рд▓рд┐рдП 5-10 рд╕реЗрдХрдВрдб рддрдХ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдФрд░ рдЬрдЯрд┐рд▓ рд╡рд╕реНрддреБрдУрдВ рд╕реЗ рдЬреБрдбрд╝реА рдЕрдВрддрдГрдХреНрд░рд┐рдпрд╛рд╢реАрд▓рддрд╛ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдВрддрд░рд╛рд▓ рдЬреЛрдбрд╝рддреА рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рдмрд╛рдд рд╣реЛ рд░рд╣реА рд╣реИ рдФрд░ рдореБрдЭреЗ рдЪрд┐рдВрддрд╛ рд╣реИ рдХрд┐ (1) рдПрдУрдЯреА рдЗрд╕реЗ рд╣рд▓ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбрдмреНрд▓реНрдпреВрдПрдПрд╕рдПрдо/рдЬреЗрдПрд╕ рдЗрдВрдЯрд░рдСрдк рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдирд┐рдХ рд╣реИ рдФрд░ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рджреЛрдиреЛрдВ рдХреЗ рдмреАрдЪ рддрд╛рд░реЛрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ; рдФрд░ (реи) рдмреНрд▓реЗрдЬрд╝рд░ рдореЗрдВ рд░реЗрдВрдбрд░рд┐рдВрдЧ/рдбрд┐рдлрд┐рдВрдЧ рдореИрдХреЗрдирд┐рдЬреНрдо рдЕрдм рдЗрддрдирд╛ рдмреЗрдХ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬрд╝ рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдмрд╣реБрдд рджреЗрд░ рд╣реЛ рдЪреБрдХреА рд╣реИ рдЬреЛ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рд╡рд╛рд▓реА рд╣реЛрдЧреАред

рд╡рд░реНрддрдорд╛рди рд╕реЛрдЪ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдПрдУрдЯреА рдЯреВрд▓рдЪреЗрди рдХреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдПрдВрдЧреЗ рддрд╛рдХрд┐ рдЖрдк рдпрд╣ рддрдп рдХрд░ рд╕рдХреЗрдВ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдРрдк рдХреЛ рдХрд┐рддрдирд╛ рдПрдУрдЯреА рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдРрдк рдорд┐рд╢реНрд░рд┐рдд рдореЛрдб рдореЗрдВ рдЪрд▓реЗрдЧрд╛,

рдареАрдХ рд╡реИрд╕реЗ рд╣реА рдЬреИрд╕реЗ Uno рдкрд╣рд▓реЗ рд╕реЗ рдХрд░ рд░рд╣рд╛ рд╣реИ...

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

рдПрд╕рдкреАрдП рдХреЗ рдХрд╛рд░реНрдпрднрд╛рд░ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ .NET рдиреЗ рдПрдХ рдлреНрд░рдВрдЯрдПрдВрдб рд╡реЗрдм рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд░реВрдк рдореЗрдВ рдЗрддрдирд╛ рдЖрдзрд╛рд░ рдЦреЛ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдХреНрд░реЛрдо рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдХреА рдореГрддреНрдпреБ рд╣реЛ рдЧрдИ рд╣реИред рдмреНрд▓реЗрдЬрд╝рд░ рд╡рд╣ рд╕рдм рдмрджрд▓ рд╕рдХрддрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рдпрд╣ рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддрд╛ рдХрд┐ рдХреНрдпрд╛ Blazor WASM рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ Microsoft рджреНрд╡рд╛рд░рд╛ рд░рдгрдиреАрддрд┐рдХ рдЧреЗрдо рдЪреЗрдВрдЬрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИ рдпрд╛ рдпрд╣ рдореЗрд░реЗ рдЬреИрд╕реЗ рдлреИрдирдмреЙрдп рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ рдЬрд┐рдЬреНрдЮрд╛рд╕рд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рд▓реЗрдХрд┐рди рдлреИрдирдмреЙрдп рдпрд╛ рдирд╣реАрдВ, рдПрдХ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЗ рд╕реНрд╡рд╛рдореА рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЧрд░ рдореИрдВ рдЖрдЬ рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдлреНрд░рдВрдЯрдПрдВрдб рдлреНрд░реЗрдорд╡рд░реНрдХ рдЪреБрди рд░рд╣рд╛ рд╣реВрдВ рдпрд╛ рдПрдХ рдкреБрд░рд╛рдиреЗ рдХреЗ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЕрдкрдиреЗ рд╕рдорд░реНрдердХреЛрдВ рдХреЛ рдХреИрд╕реЗ рдЙрдЪрд┐рдд рдард╣рд░рд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдмреНрд▓реЗрдЬрд╝рд░ рдЬрд╛рдиреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рд╣реИ, рд░рд┐рдПрдХреНрдЯ рдпрд╛ рдПрдВрдЧреБрд▓рд░ рдкрд░? рдЬрдм рдореИрдВ рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╡рд┐рдкрдХреНрд╖реЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рд╕реА # рдкрд╕рдВрдж рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рд╕рдорд░реНрдердХ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрдпрд╛ рдмрдЪрд╛ рд╣реИ? рджреВрд╕рд░реА рдУрд░, рд╡рд┐рдкрдХреНрд╖ рдмрдврд╝рддреЗ рд░рд╣рддреЗ рд╣реИрдВред

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

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

рдореЗрд░рд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рдореИрдВ @legistek рдЬреИрд╕реА рд╣реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реВрдВред рдореИрдВ рд╕рдВрд╕реНрдХрд░рдг 0.1 рд╕реЗ Blazor рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдЗрд╕ рддрдХрдиреАрдХ рдХрд╛ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдкреНрд░рд╢рдВрд╕рдХ рд╣реВрдВред рдмреЗрд╢рдХ рд╣рдо рдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдкрд░ рдмреНрд▓реЗрдЬрд╝рд░ рдЪрд▓рд╛рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИред рдореЛрдмрд╛рдЗрд▓ рдкрд░ Blazor рдХрд╛ рд╣реЛрдирд╛ рднреА рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рдХрд▓реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рдЪ рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ WebAssembly рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рд╕рд░реНрд╡реЛрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЧреЗрдо рдЪреЗрдВрдЬрд░ рд╣реИ, рдпрд╣ рднрд╡рд┐рд╖реНрдп рд╣реИред

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

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

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

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

@ ram16g @legistek рд╣рдо .NET 5 (рдФрд░ рдЙрд╕рд╕реЗ рдЖрдЧреЗ) рдореЗрдВ Blazor WebAssembly рд░рдирдЯрд╛рдЗрдо рдкреНрд░рджрд░реНрд╢рди рдХреЛ

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

@hoksource рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдЯреАрдХ рд╕рдВрдЦреНрдпрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреИрд╕реЗ perf рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рдмрджрд▓ рдЬрд╛рдПрдБрдЧреА, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрджрд┐ рдЖрдк 1-2 рдорд╣реАрдиреЛрдВ рдореЗрдВ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдЖрдЬрд╝рдорд╛рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдкрддрд╛ рдЪрд▓ рдЬрд╛рдПрдЧрд╛ред

@hoksource рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдЯреАрдХ рд╕рдВрдЦреНрдпрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреИрд╕реЗ perf рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рдмрджрд▓ рдЬрд╛рдПрдБрдЧреА, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрджрд┐ рдЖрдк 1-2 рдорд╣реАрдиреЛрдВ рдореЗрдВ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдЖрдЬрд╝рдорд╛рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдкрддрд╛ рдЪрд▓ рдЬрд╛рдПрдЧрд╛ред

@SteveSandersonMS рдареАрдХ рд╣реИ рддреЛ
рдореЗрд░рд╛ рд▓рдХреНрд╖реНрдп рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рд╣реЛрдЧрд╛:

рд╡рд┐рдХрд▓реНрдк 1: рдкреНрд░рддреНрдпрдХреНрд╖ рджреГрд╖реНрдЯрд┐рдХреЛрдг (рд╕рдорд╕реНрдпрд╛ рд╕реЗ рд╕реАрдзреЗ рдирд┐рдкрдЯрдирд╛):
[] рдореЛрдиреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рд╕реАрдЦреЗрдВ
[ ] asp.net рдмреНрд▓реЗрдЬрд╝рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рд╕реАрдЦреЗрдВ
[ ] webassembly рдХреЗ рд╕рд╛рде asp.net рдмреНрд▓реЗрдЬрд╝рд░ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рд╕реАрдЦреЗрдВ
[ ] рдмреНрд▓реЗрдЬрд╝рд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡реЗрдм рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рд╕реАрдЦреЗрдВ (рдХреНрдпрд╛ рдореЛрдиреЛ-> рд╡реЗрдмрдЕрд╕реЗрдВрдмрд▓реА рдПрдУрдЯреА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдХреНрдпрд╛ рдпрд╣ рд╕рднреА рд╕рдВрджрд░реНрдн рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдХреЛ 1 wasm рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ?)
[ ] рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдореЛрдиреЛ рд╡реЗрдм рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдкреВрд░реНрдг рд╡реЗрдм рдЕрд╕реЗрдВрдмрд▓реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред
[ ] рд╡реЗрдм рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ рд╕рднреА рдЕрдиреБрдкрд▓рдмреНрдз c#/.net рднрд╛рд╖рд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЬрд╛рдиреЗрдВ
[] рд╕рднреА dll рдХреЛ 1 wasm рдпрд╛ рдПрдХрд╛рдзрд┐рдХ wasm рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╖реНрдЯрддрдо рд▓рд┐рдВрдХрд┐рдВрдЧ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ
[ ] рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рддреМрд▓рдиреЗ рд╕реЗ рдКрдкрд░ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдкрддрд╛ рдХрд░реЗрдВ
[ ] рдмрд╛рдЗрдирд░реА рдХреЛ 1 рд╡реЗрдм рдЕрд╕реЗрдВрдмрд▓реА рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рдФрд░ рдорд░реНрдЬ рдХрд░рдирд╛ рд╕реАрдЦрдирд╛/рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рдирд╛ рдпрд╛ рдЖрдВрд╢рд┐рдХ рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд╕рд╛рде рдЖрд▓рд╕реА рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛
[ ] рд╕рдорд╛рдзрд╛рди рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрдЯ рд╣реИрдВ, рд╢реАрд░реНрд╖ рдХреБрдЫ рд╕рд░реНрд╡реЛрддреНрддрдо рд╕рдорд╛рдзрд╛рди рдЪреБрдиреЗрдВ, рдЙрдиреНрд╣реЗрдВ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рдордиреЗ рдкреНрд░рд╕реНрддреБрдд рдХрд░реЗрдВред рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдХреБрдЫ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ/рдирд┐рдЬреА рднрдВрдбрд╛рд░ рд╢рд╛рдЦрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ

рд╡рд┐рдХрд▓реНрдк 2: (рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ рдирд┐рдкрдЯреЗрдВ)
[ ] рдореИрдВ рдЫреЛрдЯреЗ/рдЖрд╕рд╛рди рдореЙрдбреНрдпреВрд▓/рдбрд┐рдЬрд╛рдЗрдирд┐рдВрдЧ/рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдЬреИрд╕реЗ рдЫреЛрдЯреЗ рдЫреЛрдЯреЗ рд╕рд░рд▓ рдХрд╛рд░реНрдп рдХрд░реВрдВрдЧрд╛, рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдЗрдВрдЬреАрдирд┐рдпрд░/рдбрд┐рдЬрд╛рдЗрдирд░ рдЕрдкрдиреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ nov .net 5 рд░рд┐рд▓реАрдЬ рд╕реЗ рдкрд╣рд▓реЗ рд╡рд┐рдХрд▓реНрдк 1 рдкрд░ рдмрддрд╛рдП рдЧрдП рдкреНрд░рддреНрдпрдХреНрд╖ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд/рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

  • рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рд╢реНрдиред рдХреНрдпрд╛ рд╕рднреА рд╕рдВрджрд░реНрдн рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ? рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛрдб рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЙрди рд╕рднреА рдХреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рдмреЗрдирдХрд╛рдм рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдХрд▓реНрдк 1 рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдХреБрдЫ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреЛ рджреЛрдмрд╛рд░рд╛ рдирд╣реАрдВ рдХрд░реВрдБрдЧрд╛ рдЬреЛ рдЖрдк рдореЗрдВ рд╕реЗ рдПрдХ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреГрдкрдпрд╛ рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдВ рдХрд┐ рдХреНрдпрд╛ рдореИрдВрдиреЗ рдХреБрдЫ рдпрд╛рдж рдХрд┐рдпрд╛ рд╣реИред

@hoksource рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреА рдЖрдкрдХреА рдЗрдЪреНрдЫрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╡рд┐рдХрд▓реНрдк рд╡рд┐рдХрд▓реНрдк 1 рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ ASP.NET рдХреЛрд░ рдЯреАрдо рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╕реНрдд рд╣реИред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЪреАрдЬреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдРрд╕рд╛ рдХреБрдЫ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рд╕рд┐рд░реНрдл .NET 5 рдореАрд▓ рдХреЗ рдкрддреНрдерд░ рдореЗрдВ рдЦрд┐рд╕рдХрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ :) рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдЪреНрдЫреА рдЕрдВрддрд░реНрджреГрд╖реНрдЯрд┐ рд╣реИ рдпрд╣рд╛рдВ рдЖрд╡рд╢реНрдпрдХ рдЪреАрдЬреЛрдВ рдХреА рд╢реНрд░реЗрдгреА рдореЗрдВред

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

рдпрд╣ рдкреВрд░реА рддрд░рд╣ рдЖрдк рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдУрдкрди рд╕реЛрд░реНрд╕ рдХреНрдпрд╛ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдХреНрдпрд╛ рдирд╣реАрдВред ASP.NET Core рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдЗрд╕рдХреЗ рдКрдкрд░ рдХреНрд▓реЛрдЬреНрдб-рд╕реЛрд░реНрд╕ рдЪреАрдЬреЗрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдпрд╣рд╛рдВ рдЕрдкрдиреЗ рд░реЗрдкреЛ рдореЗрдВ рдХреЗрд╡рд▓ рдУрдкрди рд╕реЛрд░реНрд╕ рдЪреАрдЬреЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

JIT рдЖрдзрд╛рд░рд┐рдд рд░рдирдЯрд╛рдЗрдо рдХреЗ рд▓рд┐рдП AoT рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рд░рдирдЯрд╛рдЗрдо рдкрд░ JIT рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдмрдЪрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди Blazor WebAssembly рдмрд┐рдирд╛ рдХрд┐рд╕реА JIT рд╕рдорд░реНрдерди рдХреЗ IL рджреБрднрд╛рд╖рд┐рдпрд╛ рдЖрдзрд╛рд░рд┐рдд рд░рдирдЯрд╛рдЗрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдЬрд┐рдЬреНрдЮрд╛рд╕рд╛ рд╕реЗ рдмрд╛рд╣рд░: рдХреНрдпрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ JITting рдкреВрд░реНрдг AoT рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛/рдЬрд╛рдиреЗ рдХрд╛ рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдЧрд╛?

рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВ! рдмрд╕ рдХреБрдЫ рдЯреАрдореЛрдВ рдФрд░ рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛ред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдХреАрд╢рд░реНрдк рдЬреИрд╕реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд╛рдлреА рдЬрд░реВрд░реА рд╣реИред SkiaSharp рдХрд╛ рдореБрдЦреНрдп рднрд╛рдЧ рдПрдХ рдореВрд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдХ .a рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬрд┐рд╕реЗ рд╕реНрдерд┐рд░ рд░реВрдк рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рджреЗрд╢реА рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ Blazor рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рднреА рдХрд░рддрд╛ рд╣реИ?

рдПрдлрд╡рд╛рдИрдЖрдИ, рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореВрд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рд╕реНрдерд┐рд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рдпрд╣ рдРрд╕рд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЧреИрд░-рддреБрдЪреНрдЫ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╕рднреА рдЯреБрдХрдбрд╝реЗ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╕реНрдерд┐рд░ рд░реВрдк рд╕реЗ рдЬреБрдбрд╝реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдкреА/рдЖрдордВрддреНрд░рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬреЛ рдЗрд╕реЗ рдЕрднреА рддрдХ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬреЛ рдЕрднреА рддрдХ рдмреНрд▓реЗрдЬрд╝рд░ рдореЗрдВ рд╢рд┐рдкрд┐рдВрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдмреНрд▓реЗрдЬрд╝рд░ рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ dotnet.wasm/dotnet.js рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рджрд┐рд▓ рдХреЗ рдмреЗрд╣реЛрд╢ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИред

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

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

рдореИрдВрдиреЗ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП Uno.SkiaSharp рдХреЗ рд╕рд╛рде рдЙрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдпрд╣ рдореЛрдЯрд╛ рдерд╛ рдФрд░ рдЗрд╕реЗ рдПрдХ рддрд░рдл рд░рдЦ рджрд┐рдпрд╛ (рдЬрд┐рд╕ рдмрд┐рдВрджреБ рдкрд░ @vargaz рдиреЗ рд╢рд╛рдпрдж рдЦреБрдж рдХреЛ "рдЖрдкрдХреЛ рдРрд╕рд╛ рдмрддрд╛рдпрд╛" рдХрд╣рдиреЗ рд╕реЗ рдкрд░рд╣реЗрдЬ рдХрд┐рдпрд╛ рдерд╛)ред

Uno рдмреВрдЯрд╕реНрдЯреНрд░реИрдкрд░ рдЕрдм рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рд╕реНрдЯреИрдЯрд┐рдХ рд▓рд┐рдВрдХрд┐рдВрдЧ (рджрд┐рд╢рд╛рдПрдБ рдпрд╣рд╛рдБ ) рдФрд░ P/Invoke рдХрд╛ рдЙрдкрдпреЛрдЧ WSL рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ, рдФрд░ рдЪреВрдВрдХрд┐ рдпрд╣ рдЙрд╕реА рдирд┐рд╖реНрдкрд╛рджрди рдкрде рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдЖрдВрддрд░рд┐рдХ System.Native рдЗрдВрдЯрд░рдСрдк рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдЕрдм рдмрд╣реБрдд рд╕реНрдерд┐рд░ рд╣реИред рддреБрдо рднреА рдЗрд╕ рддрд░рд╣ рдЬрдВрдЧ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдЖрд╕рд╛рдиреА рд╕реЗ рдЗрдВрдЯрд░рдСрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

рд╡рд░реНрддрдорд╛рди рдкреВрд░реНрдг рдПрдУрдЯреА рдХрдВрдкрд╛рдЗрд▓рд░ рдореЛрдиреЛ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдиреЗрдЯ рдХреЛрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдкреВрд░реНрдг рдПрдУрдЯреА рдкрде/рдорд╛рд░реНрдЧ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред (рдкрддрд╛ рдирд╣реАрдВ рдореИрдВ рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВред рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдХреА рдЬрд░реВрд░рдд рд╣реИ)

рдЗрдВрдЯрд░рдиреЗрдЯ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЧрд╣рди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП .net рдХреЛрд░ рдореЛрдиреЛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рджреЛрдЧреБрдирд╛ рддреЗрдЬ рдЪрд▓рддрд╛ рд╣реИред рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк io рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдкрд╣рд▓рд╛ .dll рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдФрд░ рдирд┐рд░реНрднрд░рддрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд░рд╣рд╛ рд╣реИред (рдПрдХрд╛рдзрд┐рдХ рдлрд╛рдЗрд▓реЗрдВ) рдЙрдиреНрд╣реЗрдВ рд╕реНрдореГрддрд┐ рдореЗрдВ рдкрд╛рд░реНрд╕ рдХрд░рдирд╛ред рдлрд┐рд░ рдЙрд╕рдХреЗ рдКрдкрд░ рдмреНрд▓реЗрдЬрд╝рд░ wasm рдХреНрд▓рд╛рдЗрдВрдЯ рдРрдк рд╢реБрд░реВ рдХрд░реЗрдВред рдбрд╛рдЙрдирд▓реЛрдбрд┐рдВрдЧ рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рдХреИрд╢ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ) рдФрд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдПрдУрдЯреА рдХрдВрдкрд╛рдЗрд▓рд░ рдпрд╣ рднреА рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдмреНрд▓реЗрдЬрд╝рд░ рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреМрди рд╕реА рд╣реИ рдФрд░ рдХреМрди рд╕реА рдРрдк рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред рдпрджрд┐ рдЖрдк рд╣рдореЗрд╢рд╛ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕рд╛ dll aot wasm рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рд╣реИ рддреЛ рдпрд╣ рдЧрдбрд╝рдмрдбрд╝ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рддреЛ рдПрдХ рдкреВрд░реНрдг рдЖрдЯ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред (рд▓реЗрдХрд┐рди рдпрд╣ рдореЛрдиреЛ рдХреЗ рдмрдЬрд╛рдп .net рдХреЛрд░ рд░рдирдЯрд╛рдЗрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рддреЗрдЬрд╝ рд╣реЛрдЧрд╛? рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ) рдореБрдЭреЗ рдпрд╣ рднреА рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреВрд░реНрдг рдПрдУрдЯреА рд╡рд╛рд╕рдо рд╕рдВрдХрд▓рди рдХрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди/рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЛрдиреЛ рдпрд╛ .рдиреЗрдЯ рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рдЧрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ

@ danroth27 рдХреНрдпрд╛ рдХреЛрдИ рдкреНрд░рдЧрддрд┐ рд╣реБрдИ рд╣реИ?

рдХреНрдпрд╛ рдпрд╣ .NET 5 рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛?
рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рднреА рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреВрд░реНрд╡-рд░рд┐рд▓реАрдЬрд╝ рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛;)

@redradist AOT .NET 5 рддрдХ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рд╡реЗ рдмреНрд▓реЗрдЬрд╝рд░ рд╡рд╛рд╕рдо рдкрд░ рдЕрдиреБрдХреВрд▓рди рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЬреЛ рдкрдврд╝рд╛ рд╣реИ рдЙрд╕рд╕реЗ рд╡реЗ рдЕрд╕реЗрдВрдмрд▓реА рдФрд░ рдлреАрд▓реНрдб рдЯреНрд░рд┐рдорд┐рдВрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдФрд░ рд░рдирдЯрд╛рдЗрдо рдЕрдиреБрдХреВрд▓рдиред рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдореЛрдмрд╛рдЗрд▓ рдлреЛрди рдкрд░ рдХреИрд╢ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдЙрдиреНрд╣реЗрдВ <1 рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИред danroth27 рдЯрд┐рдкреНрдкрдгреА

@hoksource

@redradist AOT .NET 5 рддрдХ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рд╡реЗ рдмреНрд▓реЗрдЬрд╝рд░ рд╡рд╛рд╕рдо рдкрд░ рдЕрдиреБрдХреВрд▓рди рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЬреЛ рдкрдврд╝рд╛ рд╣реИ рдЙрд╕рд╕реЗ рд╡реЗ рдЕрд╕реЗрдВрдмрд▓реА рдФрд░ рдлреАрд▓реНрдб рдЯреНрд░рд┐рдорд┐рдВрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдФрд░ рд░рдирдЯрд╛рдЗрдо рдЕрдиреБрдХреВрд▓рдиред рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдореЛрдмрд╛рдЗрд▓ рдлреЛрди рдкрд░ рдХреИрд╢ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдЙрдиреНрд╣реЗрдВ <1 рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИред danroth27 рдЯрд┐рдкреНрдкрдгреА

рдпрд╣ рджреБрдЦ рдХреА рдмрд╛рдд рд╣реИ :(

рдореЗрд░рд╛ рдПрдХ рд╕рд╡рд╛рд▓ рд╣реИред рдХреНрдпрд╛ рдЖрдк Blazor AOT рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ:

  1. C# рдХреЛ рд╕реАрдзреЗ WebAssembly рдмрд╛рдЗрдЯрдХреЛрдб рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛
  2. рдпрд╛ рдЖрдк .NET DLL рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд IL рдХреЛ WebAssembly рдмрд╛рдЗрдЯрдХреЛрдб рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдмрджрд▓рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рджреГрд╖реНрдЯрд┐рдХреЛрдг 2) рд╕рднреА .NET рдЙрдкрдХрд░рдг (рд╣рдорд╛рд░реЗ рд╕рд╣рд┐рдд) рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░реЗрдЧрд╛ рдЬреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рдЖрдИрдПрд▓ рдФрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╕рдВрдХрд▓рд┐рдд рдФрд░ рдкреАрдбреАрдмреА рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ 2) рдХреЗ рдкрд╛рд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд╛рдн рд╣реЛрдЧрд╛ рдХрд┐ System DLL рдХреЛ WebAssembly рдореЗрдВ рднреА рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдХреЛ рд░рдирдЯрд╛рдЗрдо рдкрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ (рджреЗрдЦреЗрдВ Mono.Linker рдкреНрд░реЛрдЬреЗрдХреНрдЯ @JbEvain рджреНрд╡рд╛рд░рд╛)ред
рдзрдиреНрдпрд╡рд╛рдж

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

реи рдирд╣реАрдВ рез

рд╕рд╛рде рд╣реА, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдПрдУрдЯреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЛ рдЕрдзрд┐рдХ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░ (wasm рд╕реЗ C# рддрдХ) рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧреАред

рдореИрдВ .Net 6 рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд▓рд┐рдП Q1 2021 рдореЗрдВ рдЗрд╕ рд╕рдорд░реНрдерди рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдпрд╣ рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдЪрд▓ рд░рд╣реЗ рд╕реНрдХреАрдпрд╛рд╢рд░реНрдк рдЬреИрд╕реЗ рд░реЗрдкреЛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд▓рднреВрдд рд╣реИред

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

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

farhadibehnam picture farhadibehnam  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

bgribaudo picture bgribaudo  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

guardrex picture guardrex  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

markrendle picture markrendle  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mj1856 picture mj1856  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ