рдбреЗрд╡рд▓рдкрд░ рдХреБрдХрдмреБрдХ: рдбреАрдбреАрдбреА рд░реЗрд╕рд┐рдкреА (рдкрд╛рд░реНрдЯ 3, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░)

рдкрд░рд┐рдЪрдп


рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ, рд╣рдордиреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рджрд╛рдпрд░реЗ рдХреА рдкрд╣рдЪрд╛рди рдХреА рдФрд░ рдбреЛрдореЗрди рдбреНрд░рд┐рд╡реЗрди рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдкрджреНрдзрддрд┐ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреАред


рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдЖрдзреБрдирд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛: рд╕рдкреНрд▓реА, рд╕реНрдХреНрд░реАрдорд┐рдВрдЧ, рдХреНрд▓реАрди рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдкреВрд░реНрдг рдЯрд░реНрдирдХреА рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдореЗрд░реА рд╕реНрдкрд╖реНрдЯ рд╡реНрдпрд╛рдЦреНрдпрд╛ рджреЗрдирд╛ред


WM


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


рд▓рдЪреАрд▓реА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛


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


рдЕрдкрдиреА рдкреБрд╕реНрддрдХ рдореЗрдВ, рдПрд░рд┐рдХ рдЗрд╡рд╛рдВрд╕ рдЕрдиреБрд╢рдВрд╕рд┐рдд рдбрд┐рдЬрд╝рд╛рдЗрди рдкреИрдЯрд░реНрди рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рд▓рдЪреАрд▓рд╛ рдмрдирд╛рддрд╛ рд╣реИ:


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

рдПрд░рд┐рдХ рдЗрд╡рд╛рдВрд╕, рдбреЛрдореЗрди-рдкреНрд░реЗрд░рд┐рдд рдбрд┐рдЬрд╝рд╛рдЗрди: рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рджрд┐рд▓ рдореЗрдВ рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛

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


рдЖрдХрд░реНрд╖рдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛


рдЗрд╕реА рддрд░рд╣ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдЬрдЯрд┐рд▓ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЗ рдорди рдореЗрдВ рдЙрддреНрдкрдиреНрди рд╣реБрдПред


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


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

рд░реЙрдмрд░реНрдЯ рд╕реАред рдорд╛рд░реНрдЯрд┐рди, 30 рд╕рд┐рддрдВрдмрд░, 2011

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


рд╕рд╛рдл рд╡рд╛рд╕реНрддреБрдХрд▓рд╛


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


  1. рд╕реНтАНрд╡рддрдВрддреНрд░рддрд╛ред рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд┐рд╕реА рднреА рдореМрдЬреВрджрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рдХреЛ рдмрд╛рдВрдзрдиреЗ рд╡рд╛рд▓реА рдмрд╛рдзрд╛рдУрдВ рдХреЗ рдмрдЬрд╛рдп рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
  2. Testabilityред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕, рдбреЗрдЯрд╛рдмреЗрд╕, рд╡реЗрдм рд╕рд░реНрд╡рд░ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рддрдХрдиреАрдХреА рд╕рд╛рдзрдиреЛрдВ рдХреЗ рдмрд┐рдирд╛ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдирд┐рдпрдореЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  3. рдпреВрдЖрдИ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ред рдмрд╛рдХреА рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛ рдпреВрдЬрд░ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛ рдХрдВрд╕реЛрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  4. рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рд╕реНрд╡рддрдВрддреНрд░рддрд╛ред рдЖрдк рдореИрдВрдЧреЛ, рдмрд┐рдЧрдЯреЗрдмрд▓, рдХрд╛рдЙрдЪрдмреАрдбреА рдпрд╛ рдХреБрдЫ рдФрд░ рдХреЗ рд▓рд┐рдП рдУрд░реЗрдХрд▓ рдпрд╛ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдкрдХрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдЬрд┐рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдмрд╛рдЙрдВрдб рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
  5. рдкрд░реНрдпрд╛рд╡рд░рдгреАрдп рдкреНрд░рднрд╛рд╡реЛрдВ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдкрдХреЗ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдирд┐рдпрдо рдмрд╕ рдмрд╛рд╣рд░реА рджреБрдирд┐рдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред

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


рдЪрд░ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛


рдЙрдкрд░реЛрдХреНрдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рд╡рд░реНрдгрди рдЗрддрдирд╛ рд╕реАрдзрд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред рдХрдИ рдЬрдЯрд┐рд▓ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВрдиреЗ рдФрд░ рдореЗрд░реЗ рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рдиреЗ рд╡рд░реНрдгрд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреА рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рд╡реНрдпрд╛рдЦреНрдпрд╛ рд╡рд┐рдХрд╕рд┐рдд рдХреА рд╣реИ, рдЬрд┐рд╕реЗ рдореИрдВ рдиреАрдЪреЗ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддрд╛ рд╣реВрдВред


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


  1. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдирд┐рд░реНрдорд╛рдг
  2. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг
  3. рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ
  4. рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдирд╛

рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ - рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╛рдкрд╛рд░рд┐рдХ рд╡рд╕реНрддреБ рдХреА рдЖрд░реНрдерд┐рдХ рдЧрддрд┐рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджрд░реНрдЬ рдХрд░рдирд╛ред

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


  1. рдПрдХрддреНрд░рд┐рдд
  2. рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг
  3. рднрдВрдбрд╛рд░рдг
  4. рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡

рдХреНрд░рд┐рдпрд╛ - рдПрдХ рд╡реНрдпрд╡рд╕рд╛рдп рдореЙрдбрд▓ рдХреА рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреА рдПрдХ рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рдЗрдХрд╛рдИ; рдПрдХ рд╕рдЪреЗрдд рд▓рдХреНрд╖реНрдп рдХрд╛ рдПрдХ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЕрд▓рдЧ рдХрд╛рд░реНрдп, рдПрдХ рд╡реНрдпрд╛рдкрд╛рд░рд┐рдХ рд╡рд╕реНрддреБ рдХреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреА рдордирдорд╛рдиреА рдФрд░ рдЬрд╛рдирдмреВрдЭрдХрд░ рдЕрдВрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╖реНрдард┐рддред

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


рдореЛрдб (рдЖрдЪрд░рдг) - рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХреНрд░рдо рдореЗрдВ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ, рдЬрд┐рд╕рдХрд╛ рдкреВрд░рд╛ рдЕрд░реНрде рд╣реИ, рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдлрд╛рдпрджреЗрдордВрджред

рдкреНрд░рд╡рд╛рд╣рдХрддреНрддреНрд╡


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


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


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


рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ (рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡)


рдЕрдЧрд░ рд╣рдо рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдпрд╛ рдмрд╛рд╣рд░реА рд╕реНрд░реЛрдд рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓рд┐рдП рдмрд┐рдирд╛ рд╢реБрджреНрдз рдкреНрд░рд╕реНрддреБрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдХреБрдЫ рд╕реНрдерд┐рд░ рдЬрд╛рдирдХрд╛рд░реА рджреЗрддреЗ рд╣реИрдВ: рдПрдХ HTML рдкреГрд╖реНрда, рдПрдХ рдлрд╝рд╛рдЗрд▓, рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЬреЛ рдЬреЗрдирд╕рди рдХреЗ рд░реВрдк рдореЗрдВ рдкрдбрд╝реА рд╣реИред рд╣рдо рд╕рд┐рд░реНрдл рдХреЛрдб рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рднреА рджреЗ рд╕рдХрддреЗ рд╣реИрдВ - 200:


рдЖрдЗрдП рд╕рд░рд▓рддрдо "рд╣реЗрд▓реНрде рдЪреЗрдХрд░" рд▓рд┐рдЦреЗрдВ


module Health class Endpoints < Sinatra::Base get '/check' do; end end end 

рдЗрд╕рдХреЗ рд╕рдмрд╕реЗ рдЖрджрд┐рдо рд░реВрдк рдореЗрдВ, рд╣рдорд╛рд░реА рдпреЛрдЬрдирд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:


рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡


рдЧреАрддрд╛рддреНрдордХ рд╡рд┐рд╖рдпрд╛рдВрддрд░

рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рдиреЛрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╕рд┐рдирд╛рддреНрд░рд╛ рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ, рдПрдВрдбрдкреЙрдЗрдВрдЯреНрд╕ рдХреНрд▓рд╛рд╕ рд░рд╛рдЙрдЯрд░ рдФрд░ рдХрдВрдЯреНрд░реЛрд▓рд░ рджреЛрдиреЛрдВ рдХреЛ рдПрдХ рдХреНрд▓рд╛рд╕ рдореЗрдВ рдЬреЛрдбрд╝рддреА рд╣реИред рдХреНрдпрд╛ рдпрд╣ рдПрдХрдорд╛рддреНрд░ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИ? рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдВрдбрдкреЙрдЗрдВрдЯ рдПрдХ рд╡рд░реНрдЧ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рд╡рд░реНрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡реНрдпрдХреНрдд рдХреА рдЧрдИ рдкрд░рдд рд╣реИ, рдФрд░ рдЙрдЪреНрдЪ рд╕реНрддрд░ рдкрд░ рдЗрд╕рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХрд╛ рдХреНрд╖реЗрддреНрд░ рд╣реИред


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


рднрдВрдбрд╛рд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ


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


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


  module Reception class Endpoints < Sinatra::Base # Show item get '/residents/:id', provides: :json do resident = Repository::Residents.find params[:id] status 200 serialize(resident) end end end 

рдПрдХ рдЧреНрд░рд╛рдлрд┐рдХ рдЖрд░реЗрдЦ рдХреЗ рд░реВрдк рдореЗрдВ рднрдВрдбрд╛рд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ :


рднрдВрдбрд╛рд░рдг


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


рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг (рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ)


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


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


  module Reception class Endpoints < Sinatra::Base # Register resident arrival post '/residents/:uid/arrival', provides: :json do result = Interactors::Arrival.call(resident_id: params[:id]) check!(result) do status 201 serialize result.data end end # Register resident departure post '/residents/:uid/departure', provides: :json do result = Interactors::Departure.call(resident_id: params[:id]) check!(result) do status 201 serialize result.data end end end end 

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


рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг


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


рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░рдирд╛


рд╣реЛрдЯрд▓ рдореЗрдВ рдПрдХ рдЕрддрд┐рдерд┐ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкрдВрдЬреАрдХрд░рдг рдХреЗ рджреМрд░рд╛рди, рд╡рд╣ рдкрдВрдЬреАрдХрд░рдг рдлреЙрд░реНрдо рднрд░рддрд╛ рд╣реИред рдЗрд╕ рдлреЙрд░реНрдо рдХрд╛ рд╕рддреНрдпрд╛рдкрди рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдпрджрд┐ рдбреЗрдЯрд╛ рд╕рд╣реА рд╣реИ, рддреЛ рдкрдВрдЬреАрдХрд░рдг рд╡реНрдпрд╡рд╕рд╛рдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реЛрддреА рд╣реИред рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдбреЗрдЯрд╛ рд▓реМрдЯрд╛рддреА рд╣реИ - рдирд┐рд░реНрдорд┐рдд "рдХрд┐рд░рд╛рдпреЗрджрд╛рд░" рд╡реНрдпрд╡рд╕рд╛рдп рдореЙрдбрд▓ред рд╣рдо рдЗрд╕ рдореЙрдбрд▓ рдХреЛ рдЕрддрд┐рдерд┐ рдХреЗ рд▓рд┐рдП рдкрдардиреАрдп рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ:


 module Reception class Endpoints < Sinatra::Base # Register new resident post '/residents', provides: [:json] do form = Forms::Registration.new(params) complete! form do check! form.result do status 201 serialize form.result.data end end end end end 

рдпреЛрдЬрдирд╛рдмрджреНрдз рд░реВрдк рд╕реЗ, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:


рдПрдХрддреНрд░рд┐рдд


рдЦреЗрд▓ рдХреЗ рдирд┐рдпрдо (рдирд┐рдпрдо)


  • рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
  • рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЕрдиреБрдХреНрд░рдо рдореЛрдб рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдореЛрдб рд╡реГрджреНрдзрд┐рд╢реАрд▓ рд╣реИрдВред
  • рдПрдХ рдЕрдзрд┐рдХ "рдЬрдЯрд┐рд▓" рдореЛрдб рдХрдбрд╝рд╛рдИ рд╕реЗ рдПрдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдзрд┐рдХ "рд╕рд░рд▓" рдкреВрд░рдХ рд╣реИред
  • рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдПрдХ рдкрд░рдд рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░ рд╣реЛрддреА рд╣реИред
  • рдкреНрд░рддреНрдпреЗрдХ рдкрд░рдд рдХреЛ рдПрдХ рд╡рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдПрдХ рд▓реЗрдпрд░ рдХреЗ рдЕрдВрджрд░ рд▓реЗрдпрд░ рдХреНрд▓рд╛рд╕реЗрд╕ рдФрд░ рд░рд┐рд╕реНрдкреЙрдиреНрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рдХреНрд▓рд╛рд╕реЗрд╕ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ ред
  • рд╕рдВрдЪрд╛рд░ рдХреЗрд╡рд▓ рд▓реЗрдпрд░ рдФрд░ рдЗрдВрдЯрд░рд▓реЗрдпрд░ рдХреНрд▓рд╛рд╕ рдХреЗ рдмреАрдЪ рд╣реЛрддрд╛ рд╣реИ ред
  • рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдореЙрдбрд▓ рдЕрдкрд╡рд╛рдж рд╣реИрдВред
  • рдХрдХреНрд╖рд╛-рд▓реЗрдпрд░ рд╕реНрддрд░ рдкрд░ рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

рдкреЗрдбрд╝


рд╕рд╛рдорд╛рдиреНрдп рдпреЛрдЬрдирд╛


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


рдЙрдЪреНрдЪ рд╕рдВрдХрд▓реНрдк рдирдХреНрд╢рд╛




рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд╕реНрд░реЛрдд

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


All Articles