рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реЛрдбрд┐рдВрдЧ рдФрд░ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди


рдореЛрдмрд╛рдЗрд▓ рд╡реЗрдм рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде, рд╣рдорд╛рд░рд╛ рдЗрдВрдЯрд░рдиреЗрдЯ рдлрд┐рд░ рд╕реЗ рдЦрд░рд╛рдм рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЙрдкрдХрд░рдг рдзреАрдорд╛ рд╣реИрдВред 3G, 4G, Wi-Fi ... - рд╡реЗ, рдмреЗрд╢рдХ, рдХрд╣реАрдВ рди рдХрд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдЧрддрд┐ рдореЙрдбреЗрдо рдореЛрдб рдХреЗ рдкрд╛рд╕ рдЪрд▓реА рдЬрд╛рддреА рд╣реИ рдФрд░ рдпрд╣ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ "рдкрд╛рд╖рд╛рдг рдпреБрдЧ" рдореЛрдмрд╛рдЗрд▓ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реВрдЪрдирд╛ рдХреЗ рдЖрдзреБрдирд┐рдХ рд╡реЙрд▓реНрдпреВрдо рдХреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЖрддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╢рд╣рд░ рдХреЗ рдХреЗрдВрджреНрд░ рдореЗрдВ (рд╣рд╛рд▓рд╛рдВрдХрд┐ 15 рд╡реАрдВ рдордВрдЬрд┐рд▓ рдкрд░), рдореЛрдмрд╛рдЗрд▓ рдЗрдВрдЯрд░рдиреЗрдЯ рдЖрдЗрдХрди рдЬрд╛рджреВ рдкрддреНрд░ рдИ рджрд┐рдЦрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╣ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реБрдП рдХрд┐ рдпрд╣ рдЖрдкрдХреА рдирд╕реЛрдВ рдХреЛ рдмрд░реНрдмрд╛рдж рдХрд░рдиреЗ рдФрд░ рдкреАрдбрд╝рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рд╣рд░ рдмрд╛рд░ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рдореВрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рд▓рдШреБ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рджреНрд╡рд╛рд░рд╛ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВред рд╡реЗрдм рд╕реЗрд╡рд╛ рдХрд╛ рдореВрд▓ рд╕рдВрд╕реНрдХрд░рдг ... рд╕реНрдкрд╖реНрдЯ рд╡реНрдпрд╛рдкрд╛рд░ рд╡рд┐рдкрдгрди, рдЖрд╡реЗрджрди рджреМрдбрд╝ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреЗрд╢реА рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪреБрдирддреЗ рд╣реИрдВ рдЬреЛ рддреЗрдЬреА рд╕реЗ рдЪрд▓рддреЗ рд╣реИрдВ, рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ рд╕рдордп-рд╕рдордп рдкрд░ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

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


рд╕рднреА рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рдореИрдВрдиреЗ рдЙрд╕ рдХреЛрдб рдХреА рдорд╛рддреНрд░рд╛ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рд╢реЛрдз рдХрд┐рдпрд╛ рдЬреЛ рдХрд┐рд╕реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд▓реЛрдХрдкреНрд░рд┐рдп рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдореЛрдмрд╛рдЗрд▓ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдкрд╣рд▓реЗ рдкреГрд╖реНрда рдкрд░ рдЬрд╛рдиреЗ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдХреНрд░реЛрдо + рд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдХрд╡рд░ рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

рдЕрд╕реНрдкрддрд╛рд▓ рдХрд╛ рдФрд╕рдд рд▓рдЧрднрдЧ 40 рдкреНрд░рддрд┐рд╢рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдРрд╕реА рд╕рд╛рдЗрдЯреЗрдВ рд╣реИрдВ рдЬреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ 80% рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдРрд╕реЗ рднреА рд╣реИрдВ рдЬреЛ рдХреЗрд╡рд▓ 20% рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ "рдЖрдк рдмрд╛рдХреА рдкреГрд╖реНрдареЛрдВ рдкрд░ рдХреИрд╢ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛" - рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЗрддрдирд╛ рд▓реЛрдб рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣рд░ рдмрд╛рд░ рдЗрд╕ рд╕рднреА рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд▓реЛрдб рд╣реЛрдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрд╕реЗ рд╕рд┐рд░реНрдл рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЕрдкрдиреЗ рджреЛрд╕реНрддреЛрдВ рдХреЗ рд▓рд┐рдП

рдХреИрд╢


рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдПрдХ рдмрд╛рд░ рд╣рдорд╛рд░реЗ рд╕рднреА рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдерд╛, рдЙрдиреНрд╣реЗрдВ рдХреИрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЕрдЧрд▓реА рдмрд╛рд░ рдЬрдм рдЙрдиреНрд╣реЛрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ (рд╕рдорд╛рдкреНрддрд┐: +300 рд╕рд╛рд▓ рдПрдлрдЯреАрдбрдмреНрд▓реНрдпреВ)ред

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

рдореЛрдмрд╛рдЗрд▓ рдХреЗ рд╕рд╛рде, рд╕рдм рдХреБрдЫ рдмрджрддрд░ рд╣реИ - рдЖрдИрдУрдПрд╕ рд╕рдлрд╛рд░реА рдореЗрдВ рдбрд┐рд╕реНрдХ рдХреИрд╢ (рдХреЗрд╡рд▓ рдореЗрдореЛрд░реА рдореЗрдВ) рдирд╣реАрдВ рд╣реИ, рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд╕рд╛рде рдпрд╣ 20 рдПрдордмреА рддрдХ рд╕реАрдорд┐рдд рд╣реИред

рдЕрдиреБрдХреВрд▓рди рдПрдкреНрд▓рд┐рдХреЗрд╢рди



рдореИрдВрдиреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдпрд╛ - рдпрд╣ рдПрдХ рдЪреИрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╣реИред рд╣рдо рдмрд╣реБрдд рдХрдареЛрд░ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреЛ рддреЗрдЬ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ - 7Kb / s рдХреА рдЗрдВрдЯрд░рдиреЗрдЯ рд╕реНрдкреАрдб рдкрд░ред рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдпрд╣рд╛рдБ azproduction.github.com/loader-test рдкрд░ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдЕрдиреБрдХреНрд░рдорд┐рдХ рд▓реЛрдбрд┐рдВрдЧ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди


рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░, рд╣рдорд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реЛрдб рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
<script src="js/b-roster.js"></script> <script src="js/b-dialog.js"></script> <script src="js/b-talk.js"></script> <script src="js/index.js"></script> 

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

18 рд╕реЗрдХрдВрдб ... рдЗрддрдирд╛ рдЗрдВрддрдЬрд╛рд░ рдордд рдХрд░реЛ ...

рд╕рдорд╛рдирд╛рдВрддрд░ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди


рд╣рдо рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдПрд╕рд┐рдВрдХреНрд╕ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рдереЛрдбрд╝рд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВрдЧреЗ рддрд╛рдХрд┐ рд╣рдорд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реЛрдб рд╣реЛ рдФрд░ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рд╢реБрд░реВ рд╣реЛред рдХрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдбрд╛рдЙрдирд▓реЛрдб рд╡рд┐рдзрд┐ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧреАред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдкрд┐рдЫрд▓реЗ рдХреЛрдб рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
  <script src="js/b-roster.js" async></script> <script src="js/b-dialog.js" async></script> <script src="js/b-talk.js" async></script> <script src="js/index.js" async></script> 

рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдХреНрдпрд╛ рдорд┐рд▓рддрд╛ рд╣реИ

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

рд╕рдорд╛рдирд╛рдВрддрд░ рд▓реЛрдбрд┐рдВрдЧ, рдЕрдиреБрдХреНрд░рдорд┐рдХ рд╢реБрд░реБрдЖрдд


рдЖрдЗрдП рдПрдХ рдФрд░ "рдЕрдиреБрдХреВрд▓рди" рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, рд╣рдо рдПрдХ рд╕рд╛рде рд▓реЛрдб рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдЪрд▓реЗрдВрдЧреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, LAB.js рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
  <script type="text/javascript" src="vendors/LAB.min.js"></script> <script> $LAB .script("js/b-roster.js") .script("js/b-dialog.js") .script("js/b-talk.js") .wait() .script("js/index.js"); </script> 

рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рдмрджрддрд░ рд╣реЛ рдЧрдпрд╛:

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

рд╣рдо рдЗрдХрдЯреНрдард╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреИрдХ рдХрд░рддреЗ рд╣реИрдВ


рдЖрдЗрдП рдПрдХ рдФрд░ рдмрд▓реНрдХрд┐ рд╕реНрдкрд╖реНрдЯ рдЕрдиреБрдХреВрд▓рди рд▓рд╛рдЧреВ рдХрд░реЗрдВ - рд╣рдо рд╕рднреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ 1 рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХрддреНрд░рд┐рдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЗрд╕ рдХреЛрдб рдХреЛ рдХреБрдЫ рдорд┐рдирд┐рдлрд╝рд╛рдпрд░ рдХреЗ рд╕рд╛рде рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░реЗрдВрдЧреЗред
 $ cat **/*.js > main.js $ java -jar yuicompressor.jar main.js -o main.min.js 

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпреЗ рд▓рд╛рдЗрдиреЗрдВ рдХрдИ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рдореИрдВ YUI рдХрдВрдкреНрд░реЗрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ UglifyJs рдпрд╛ рдХреНрд▓реЛрдЬрд░ рдХрдВрдкреНрд░реЗрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреВрдВрдЧрд╛

рдЗрд╕ рдЕрдиреБрдХреВрд▓рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЕрддреНрдпрдВрдд рд╕реНрдкрд╖реНрдЯ рд╣реИред рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЖрдЧреЗ рдЕрдиреБрдХреВрд▓рди рдирд╣реАрдВ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ :) рд▓реЗрдХрд┐рди! 9s ... - рдЗрддрдиреЗ рд╕рд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣рд░ рдмрд╛рд░ рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред

AppCache - рдСрдлрд╝рд▓рд╛рдЗрди рд╕рдВрдЧреНрд░рд╣рдг


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

рдЗрд╕реЗ рдЬреЛрдбрд╝рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ:

Appcache рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдкреНрд░рдХрдЯ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ
 <html manifest="example.appcache"> </html> 

рдХреИрд╢ рдореЗрдВ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ (рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ)
 CACHE MANIFEST # v1 - 2011-08-13 http://example.com/index.html http://example.com/main.js 

рдФрд░ рдЕрдкрдиреЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреА рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ, рдХреБрдЫ рд▓рд╛рдЗрдиреЗрдВ рд▓рд┐рдЦреЗрдВ рддрд╛рдХрд┐ рдлрд╝рд╛рдЗрд▓ рд╕рд╣реА MIME рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдП рдФрд░ рдХреИрд╢ рди рд╣реЛ
 AddType text/cache-manifest .appcache ExpiresByType text/cache-manifest "access plus 0 seconds" 

AppCache рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдЖрдк рддреБрд░рдВрдд (рдЕрдирд╛рд╡рд╢реНрдпрдХ рдмреИрд╕рд╛рдЦреА рдХреЗ рдмрд┐рдирд╛) рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЙрд╕рдХрд╛ рдЖрд╡реЗрджрди рдкреБрд░рд╛рдирд╛ рд╣реИ рдФрд░ рдкреГрд╖реНрда рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВ, рдпрд╛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рдкреВрдЫреЗрдВред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рднреА рдиреЗрдЯрд╡рд░реНрдХ рдЧрддрд┐рд╡рд┐рдзрд┐ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдХреИрд╢ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ - рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЗрд╡реЗрдВрдЯ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдиреЗ рдФрд░ рдХреИрд╢ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
 if (window.applicationCache) { applicationCache.addEventListener('updateready', function() { if (confirm('An update is available. Reload now?')) { window.location.reload(); } }); //       if(window.applicationCache.status === window.applicationCache.UPDATEREADY) { if (confirm('An update is available. Reload now?')) { window.location.reload(); } } } 

AppCache рдХреЗ рдкреЗрд╢реЗрд╡рд░реЛрдВ
1. рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдХреИрд╢рд┐рдВрдЧ
2. рдСрдлрд╝рд▓рд╛рдЗрди рдХрд╛рдо рдХрд░реЗрдВ
3. рд╕рд░рд▓ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг
4. рд╕рдордп рдкрд░ рдЕрджреНрдпрддрди

AppCache рдХреА
1. рдбрд┐рд╕реНрдХ рдХреЛрдЯрд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
2. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рдХреЛ рдХреИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рд╣реИ (рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ)
3. рдСрдирд▓рд╛рдЗрди рд╕рдВрд╕рд╛рдзрди рдХреИрд╢ рдХрд┐рдП рдЧрдП рдкреГрд╖реНрда рдкрд░ рддрдм рддрдХ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ рдЬрдм рддрдХ NETWORK:\n* рдкрдВрдЬреАрдХреГрдд рди рд╣реЛ NETWORK:\n*
4. рдпрджрд┐ рдЖрдк рдЕрдЪрд╛рдирдХ рдЕрдкрдиреЗ .appcache рдлрд╝рд╛рдЗрд▓ рдкрд░ Expires +300 рд╕рд╛рд▓ рд▓рдЧрд╛рддреЗ рд╣реИрдВ - рддреЛ рдЖрдкрдХрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдЕрдЯрдХ рдЬрд╛рдПрдЧрд╛
5. рдЕрдиреНрдп рдбреЛрдореЗрди рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдХреЛ рд╡рд┐рдлрд▓рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ
AppCache www.alistapart.com/articles/application-cache-is-a-upoubag рдХреЗ рдХреБрдЫ рдФрд░ рдорд┐рдирд┐рдЕрд▓реНрд╕

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


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

AppCache рдкрд░ рдЕрдзрд┐рдХ
рдПрдордбреАрдПрди рдкрд░ AppCache рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓реЗрдЦ smallurl.com/mdn-appcache
AppCache рдЕрдХрд╕рд░ рдХрд┐рдпреЗ рдЧрдП рд╕рд╡рд╛рд▓ appcachefacts.info
рд╢реБрд░реБрдЖрддреА рдХреЗ рд▓рд┐рдП AppCache www.html5rocks.com/en/tutorials/appcache/beginner

рдЪреБрдирд┐рдВрджрд╛ рдбрд╛рдЙрдирд▓реЛрдб


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

1. рдореБрдЦреНрдп рднрд╛рдЧреЛрдВ рдЬрд╣рд╛рдЬ
2. рдмрд╛рдХреА рдЬрд░реВрд░рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░
3. рдСрдЯреЛ рдирд┐рд░реНрднрд░рддрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ
4. ...
5. рд▓рд╛рдн

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

рд╣рдорд╛рд░рд╛ html рдРрд╕рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ
 <script data-main="js/amd/index" src="vendors/require.js"></script> 

рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЖрд╡рд╢реНрдпрдХ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЖрд╡рд░рдг рдореЗрдВ рд▓рдкреЗрдЯрддреЗ рд╣реИрдВред Index.js рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╣реЛрдЧрд╛:
 require(["b-roster"], function(Roster) { new Roster($('body')); }); 

рдФрд░ рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд▓реЛрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдореЙрдбреНрдпреВрд▓ рдХреЛ рджреВрд╕рд░реЗ рдЖрд╡рд░рдг рдореЗрдВ рд▓рдкреЗрдЯреЗрдВрдЧреЗ:
 define(function () { //  -   return ModuleName; }); 

рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░, рд╣рдо рдХреЗрд╡рд▓ index.js рдФрд░ roster.js рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд░реЛрд╕реНрдЯрд░ рддрддреНрд╡ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рд╣рдо рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ:
 querySelector('.b-roster').addEventListener('click', function (e) { require(["b-dialog"], function(Dialog) { new Dialog(element); }); }, false); 

рд╡рд┐рдЪрд╛рд░ рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рд░рд▓ рд╣реИ, рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдХреНрдпрд╛ рдорд┐рд▓рд╛:

рдкрд┐рдЫрд▓реЗ рдкрд░рд┐рдгрд╛рдо рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рд╣рдордиреЗ 2 рдФрд░ рдЕрдиреБрд░реЛрдз рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рд╢реБрд░реБрдЖрддреА рдорд╛рддреНрд░рд╛ 16.5Kb, 2.1 рдХреЗ рд╕рдордп рд╕реЗ рдХрдо рд╣реЛ рдЧрдИ

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

рдЖрд▓рд╕реА рд▓реЛрдбрд┐рдВрдЧ рдФрд░ рдЖрд░рдВрднреАрдХрд░рдг


рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ 7.4 рд╕реЗрдХрдВрдб - рдпрд╣, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдЕрдм 18 рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ 3-5 рд╕реЗрдХрдВрдб рд╣реИ, рдЬрд┐рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рд╣рди рдХрд░ рд╕рдХрддрд╛ рд╣реИред

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

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

LMD


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

2. рдиреЛрдб.рдЬреЗрдПрд╕-рдЬреИрд╕реЗ рдореЙрдбреНрдпреВрд▓

рдПрдПрдордбреА рдХреЛ рд╣рдореЗрдВ рд╣рд░ рдмрд╛рд░ рдбрд┐рдлрд╛рдЗрди (рд▓рд┐рдЦрдиреЗ) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рдмрд┐рдирд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреЛрдб 1 рдореЗрдВ 1 рдХреЗ рд▓рд┐рдП рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ Node.js рдмрд┐рдирд╛ рдХрд┐рд╕реА рд░реИрдкрд░ рдФрд░ рдирд┐рд░реНрдпрд╛рдд рдХреЗ рд╕рд╛рде рдЬрд╛рджреВ рдХреЗ рдмрд┐рдирд╛ред

рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ index.js рдХреЛрдб LMD рдХреЗ рдЕрдВрддрд░реНрдЧрдд рджрд┐рдЦрддрд╛ рд╣реИ:
 var $ = require().$, // require("undefined") Roster = require("b-roster"); new Roster($('body')); 

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

3. рдирд┐рд░реНрдорд┐рдд рдХрд▓реЗрдХреНрдЯрд░ рдФрд░ рдкреИрдХрд░

LMD рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрдкрдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рдХрд╛ рдПрдХ рдмрд┐рд▓реНрдЯ-рдЗрди рдХрд▓реЗрдХреНрдЯрд░ рдФрд░ рдПрдХ рдкреИрдХрд░ рд╣реИред рдЖрдкрдХреЛ рдЕрдкрдиреА рд╕рднреА рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдкреИрдХреЗрдЬ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
 { "path": "./modules/", "modules": { "main": "index.js", "b-roster": "b-roster.js", "undefined": "utils.js", //     * "*": "*.js" } } 

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

4. рд▓рдЪреАрд▓реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЖрдХрд╛рд░

Need.js-AMD рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╕рднреА LMD рдХреЛрдб рдЖрдкрдХреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреИрдХреЗрдЬ рдореЗрдВ рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд╕рдордп рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЗрд╢рд╛рд░реЗ рдХреЗ рд╢рд╛рдорд┐рд▓ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЖрдк рд▓рдЪреАрд▓реЗ рдврдВрдЧ рд╕реЗ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдФрд░ "рдкреНрд▓рдЧрдЗрдиреНрд╕" рдХреЛ рд╕рдХреНрд╖рдо рдпрд╛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХрд╛ рдХреЛрдб рдХреЗрд╡рд▓ рдЖрдзреБрдирд┐рдХ рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рддреЛ рдЖрдкрдХреЛ IE6 рдХреЗ рд▓рд┐рдП рдЗрди рд╕рднреА рд╣реИрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ! LMD рдореЗрдВ, рдЗрд╕ "рдЕрдиреБрдХреВрд▓рди" рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╛ рдЖрдк рд╕реАрдПрд╕рдПрд╕ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд▓реЛрдб рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - рдЖрдкрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЛрдб рдЦреАрдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? - рд╡рд┐рдХрд▓реНрдк рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ рдФрд░ рдХреЛрдб рдЫреЛрдЯрд╛ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред LMD.js рдХрд╛ рдиреНрдпреВрдирддрдо рдЖрдХрд╛рд░ рдХреЗрд╡рд▓ 288 рдмрд╛рдЗрдЯреНрд╕ рд╣реИред

5. рд╣реЙрдЯ рдмрд┐рд▓реНрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯ

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

 $ lmd watch config.lmd.json output.js 

6. рд╕реНрдорд╛рд░реНрдЯ рдХрд▓реЗрдХреНрдЯрд░

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

рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреНрд▓рд╕ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛:

рдПрдПрдордбреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рд╣рдордиреЗ рд╡реЙрд▓реНрдпреВрдо рдХреЛ рдПрдХ рдФрд░ 13.5 Kb рд╕реЗ рдХрдо рдХрд░ рджрд┐рдпрд╛, рд╢реБрд░реБрдЖрдд рд╕рдордп 2.1s, рдФрд░ 2 рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ред

рдкрд╣рд▓реЗ рдорд╛рдорд▓реЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рд╣рдореЗрдВ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓реЗ:


рдирд┐рд╖реНрдХрд░реНрд╖


1. AppCache рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рд╕рд╛рд╡рдзрд╛рдиреА рдХреЗ рд╕рд╛рде
AppCache рдПрдХ рдХрд╛рдлреА рд╕рд░рд▓ рдЕрдиреБрдХреВрд▓рди рд╣реИ, рдЬреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛрдб рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛, рдЖрдкрдХреЗ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛ рдХреИрд╢ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред AppCache рдореЗрдВ рдХрдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдк рдпрд╣рд╛рдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ Application Cache рдПрдХ рдбреЙрдпрдЪреЗрдЧ рд╣реИ ред рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдПрдХрддреНрд░ рдХрд░рдиреЗ рдпрд╛ рдХреБрдЫ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд▓рд╕реА рд╣реИрдВ, рддреЛ рдЖрдк рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрдиреНрдлрд╝рд░реНрдо рдЯрд┐рдиреАрд▓рд░рд▓. com/ confessjs рдЬреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рдм рдХрд░реЗрдЧрд╛ рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЗ рд╕реАрдПрд╕рдПрд╕ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХрд░реЗрдЧрд╛ред

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

3. LMD рдпрд╛ AMD рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ
рдореМрдЬреВрджрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди LMD рдпрд╛ AMD рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рдХрд╛рдлреА рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдРрд╕рд╛ рдХрд░рдирд╛ рдЖрдкрдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рдФрд░ рд▓рд╛рднрджрд╛рдпрдХ рд╣реИред рдЖрд▓рд╕реА рд▓реЛрдбрд┐рдВрдЧ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреГрдердХ рдореЙрдбреНрдпреВрд▓ рднреА рдорд┐рд▓рддреЗ рд╣реИрдВ, рдЬреЛ рдЯреАрдо рд╡рд░реНрдХ рдореЗрдВ рдмрд╣реБрдд рдлрд╛рдпрджреЗрдордВрдж рд╣реИред



рдХреЛрдИ рд▓рд┐рдВрдХ


рдЖрд╡реЗрджрди рд╣рдордиреЗ azproduction.github.com/loader-test рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рд╣реИ

рдЙрдкрдХрд░рдг рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ
LMD github.com/azproduction/lmd
рдЫреЛрдЯреЗ рд╕реЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ
рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдпреВрдЖрдИрдИ рдХрдВрдкреНрд░реЗрд╕рд░ рдЯрд┐рдиреАрд▓рд░рд▓.com/yui- compressor
рдХреНрдпрд╛ рдореИрдВ caniuse.com рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ
рд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдХрд╡рд░ рдХреЛрдб. google.com/p/script-cover
UglifyJS github.com/mishoo/UglifyJS
рдкреНрд░рдХрдЯреАрдХрд░рдг ompiler code.google.com/p/closure-compiler

AppCache рджреНрд╡рд╛рд░рд╛
рдПрдордбреАрдПрди рдкрд░ AppCache рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓реЗрдЦ smallurl.com/mdn-appcache
AppCache рдЕрдХрд╕рд░ рдХрд┐рдпреЗ рдЧрдП рд╕рд╡рд╛рд▓ appcachefacts.info
рд╢реБрд░реБрдЖрддреА рдХреЗ рд▓рд┐рдП AppCache www.html5rocks.com/en/tutorials/appcache/beginner
AppCache рдореБрджреНрджреЗ рдЕрдиреБрдЪреНрдЫреЗрдж www.alistapart.com/articles/application-cache-is-a-douchebag

PS рдпрд╣ рдбреАрдпреВрдПрдордкреА 2012 рдореЗрдВ рдореЗрд░реА рд░рд┐рдкреЛрд░реНрдЯ рдХрд╛ рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рд╣реИ

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

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


All Articles