# ЁЯТб рдлрд╝реАрдЪрд░ рд╕реНрдкреЙрдЯрд▓рд╛рдЗрдЯ: рд▓рдЧрд╛рддрд╛рд░ рдкреНрд▓рдЧрдЗрди рдХреИрд╢рд┐рдВрдЧ ## ЁЯТ╛ рдкреНрд░рджрд░реНрд╢рди, рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рджрдХреНрд╖рддрд╛ рдХреЗ рд▓рд┐рдП рдХреИрд╢рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЕрдм рдПрдХ рдХреЗрдВрджреНрд░реАрдп, рд▓рдЧрд╛рддрд╛рд░ рдХреИрд╢рд┐рдВрдЧ рддрдВрддреНрд░ (`simple_plugin_cache`) рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдмрд╛рд╣рд░реА рдиреЗрдЯрд╡рд░реНрдХ рд▓реЛрдб (рдЬреИрд╕реЗ, рдореМрд╕рдо, рдЕрдиреБрд╡рд╛рдж рдПрдкреАрдЖрдИ) рдХреЛ рдХрдо рдХрд░рдиреЗ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди рдореЗрдВ рддреЗрдЬреА рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреИрд╢ **рдирд┐рд░рдВрддрд░** рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рд╕реЗрд╡рд╛ рдкреБрдирд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рддрдХ рдЬреАрд╡рд┐рдд рд░рд╣рддреА рд╣реИрдВред **рд▓рдХреНрд╖реНрдп:** рдиреЗрдЯрд╡рд░реНрдХ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХрдо рдХрд░реЗрдВ, рдПрдкреАрдЖрдИ рджреБрд░реБрдкрдпреЛрдЧ рдХреЛ рд░реЛрдХреЗрдВ, рдФрд░ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛ рдЖрдЙрдЯреЗрдЬ рдХреЗ рджреМрд░рд╛рди рддреНрд╡рд░рд┐рдд рдлрд╝реЙрд▓рдмреИрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░реЗрдВред --- ### 1. рдмреЗрд╕рд┐рдХ рдХреИрд╢рд┐рдВрдЧ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (рдЯреАрдЯреАрдПрд▓-рд╕рдВрдЪрд╛рд▓рд┐рдд) рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдХреИрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рддреАрди рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рдореБрдЦреНрдп рддрд░реНрдХ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛: **рдЪреЗрдХ**, **рдирд┐рд╖реНрдкрд╛рджрд┐рдд**, рдФрд░ **рд╕реНрдЯреЛрд░**ред #### 1.1 рдЖрдпрд╛рдд рдФрд░ рд╡рд┐рдиреНрдпрд╛рд╕ рдЖрд╡рд╢реНрдпрдХ рдЖрдпрд╛рдд рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдЕрдкрдиреА рдкреНрд▓рдЧрдЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЯрд╛рдЗрдо-рдЯреВ-рд▓рд╛рдЗрд╡ (рдЯреАрдЯреАрдПрд▓) рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, `weather.py`): __CODE_рдмреНрд▓реЙрдХ_0__ #### 1.2 'рдирд┐рд╖реНрдкрд╛рджрд┐рдд' рдмреНрд▓реЙрдХ рдореЗрдВ рдХреИрд╢рд┐рдВрдЧ рд▓реЙрдЬрд┐рдХ рдХрд┐рд╕реА рднреА рдиреЗрдЯрд╡рд░реНрдХ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ 'рдирд┐рд╖реНрдкрд╛рджрд┐рдд' рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд╣рд▓реЗ рдХреИрд╢реНрдб рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред __CODE_рдмреНрд▓реЙрдХ_1__ --- ### 2. рдЙрдиреНрдирдд рдХреИрд╢рд┐рдВрдЧ рдореЛрдб #### рдП. рд╕реНрдерд╛рдпреА (рдЕрдирдиреНрдд) рдХреИрд╢рд┐рдВрдЧ рдпрджрд┐ рдХреЛрдИ рдкрд░рд┐рдгрд╛рдо **рдХрднреА рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП** (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдерд┐рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд▓реБрдХрдЕрдк), рддреЛ `ttl_thirds` рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджреЗрдВред __CODE_рдмреНрд▓реЙрдХ_2__ #### рдмреА. рдХреИрд╢ рдХреБрдВрдЬреА (`key_args`) рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ * `key_args` рдПрдХ **рдЯреБрдкрд▓** рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд╡реЗрд░рд┐рдПрдмрд▓ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, `(рд╢рд╣рд░, рднрд╛рд╖рд╛, рдпреВрдирд┐рдЯ_рд╕рд┐рд╕реНрдЯрдо)`)ред * рдХреИрд╢рд┐рдВрдЧ рддрдВрддреНрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдЧреИрд░-JSON-рдХреНрд░рдордмрджреНрдз рдкрд╛рдпрдерди рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕, рдЬреИрд╕реЗ **`pathlib.Path`** рдХреЛ рдХреБрдВрдЬреА рдкреАрдврд╝реА рдХреЗ рд▓рд┐рдП рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИред