рдЕрдиреБрд╡рд╛рджрдХ рд╕реЗ: рд╕реЗрд╡реЗрд░рд┐рди рдкреЗрд░реНрд╕ рдиреЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ рдПрд╕рдУрдПрд▓рдЖрдИрдбреА рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рдПрдХ рд▓реЗрдЦ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ред рд▓реЗрдЦ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдЕрдиреБрднрд╡ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрддреА рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреАредрдпрджрд┐ рдЖрдк рдПрдХ рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ, рддреЛ рдЖрдкрдиреЗ рд╢рд╛рдпрдж SOLID рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирд╛ рд╣реЛрдЧрд╛ред рд╡реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рд╕реНрд╡рдЪреНрдЫ, рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдВрд░рдЪрд┐рдд рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддреЗ рд╣реИрдВред рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ рдЗрд╕ рдпрд╛ рдЙрд╕ рдХрд╛рд░реНрдп рдХреЛ рдареАрдХ рд╕реЗ рдХреИрд╕реЗ рдХрд░реЗрдВ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрдИ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИрдВред рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдЪрд╛рд░ рдФрд░ рд╕рдордЭ "рд╕рд╣реА рддрд░реАрдХрд╛" рд╣реИ, рдпрд╣ рд╕рдм рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдЕрдиреБрднрд╡ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдлрд┐рд░ рднреА, SOLID рдореЗрдВ рдШреЛрд╖рд┐рдд рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЖрдИрдЯреА рд╕рдореБрджрд╛рдп рдХреЗ рд▓рдЧрднрдЧ рд╕рднреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡реЗ рдХрдИ рдЕрдЪреНрдЫреЗ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдмрдВрдзрди рдкреНрд░рдерд╛рдУрдВ рдХреЗ рдЙрджреНрднрд╡ рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╢реБрд░реБрдЖрддреА рдмрд┐рдВрджреБ рдмрди рдЧрдПред
рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдареЛрд╕ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреНрдпрд╛ рд╣реИрдВ рдФрд░ рд╡реЗ рд╣рдорд╛рд░реА рдорджрдж рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВред
рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ: рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдкрд╛рдареНрдпрдХреНрд░рдо "рдореЛрдмрд╛рдЗрд▓ рдбреЗрд╡рд▓рдкрд░ рдкреНрд░реЛ" ред
рд╣рдо рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддреЗ рд╣реИрдВ: "рд╣реИрдмрд░" рдХреЗ рд╕рднреА рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП - "рд╣реИрдмрд░" рдкреНрд░реЛрдореЛ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рдХреЛрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХрд░рдг рдХрд░рддреЗ рд╕рдордп 10,000 рд░реВрдмрд▓ рдХреА рдЫреВрдЯред
SOLID рдХреНрдпрд╛ рд╣реИ?
рдпрд╣ рд╢рдмреНрдж рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо рд╣реИ, рд╢рдмреНрдж рдХрд╛ рдкреНрд░рддреНрдпреЗрдХ рдЕрдХреНрд╖рд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдирд╛рдо рдХреА рд╢реБрд░реБрдЖрдд рд╣реИ:
- рдПрд╕ рдЗрдВрдЧрд▓рд┐рд╢ рд░рд┐рд╕реНрдкрд╛рдВрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рдкреНрд░рд┐рдВрд╕рд┐рдкрд▓ред рдПрдХ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдПрдХ рдФрд░ рдХреЗрд╡рд▓ рдПрдХ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
- рд╣реЗ рдХрд▓рдо / рдмрдВрдж рд╕рд┐рджреНрдзрд╛рдВрдд ред рдХрдХреНрд╖рд╛рдУрдВ рдФрд░ рдЕрдиреНрдп рддрддреНрд╡реЛрдВ рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рд╕рдВрд╢реЛрдзрди рдХреЗ рд▓рд┐рдП рдмрдВрджред
- рдПрд▓ iskov рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд╕рд┐рджреНрдзрд╛рдВрдд рд╣реИ ред рдЖрдзрд╛рд░ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдп рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд┐рдирд╛ рдЖрдзрд╛рд░ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдкрдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- I nterface рдкреГрдердХреНрдХрд░рдг рд╕рд┐рджреНрдзрд╛рдВрдд ред рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЛ рдЙрди рддрд░реАрдХреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рдирдХрд╛ рд╡реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
- рдбреА рдПрдкреЗрдВрдбреЗрдВрд╕реА рдЙрд▓рдЯрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд ред рдКрдкрд░реА рд╕реНрддрд░ рдХреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдирд┐рдЪрд▓реЗ рд╕реНрддрд░ рдХреЗ рдореЙрдбреНрдпреВрд▓ рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдПрдХрдорд╛рддреНрд░ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд
рдПрдХрд▓ рдЬрд┐рдореНрдореЗрджрд╛рд░реА (рдПрд╕рдЖрд░рдкреА) рдХрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧ рдпрд╛ рдореЙрдбреНрдпреВрд▓ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рдХреЗрд╡рд▓ рдПрдХ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХреЗ рддрддреНрд╡реЛрдВ рдХреЛ рдЙрдирдХреЗ рд╡рд░реНрдЧ рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЕрд╕рдВрдмрдВрдзрд┐рдд рд╡рд░реНрдЧреЛрдВ рдХреЗ рдмреАрдЪ рд╡рд┐рддрд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред SRP рдХреЗ рдбреЗрд╡рд▓рдкрд░ рдФрд░ рд▓реАрдб рдЗрдВрдЬреАрд▓рд╡рд╛рджреА, рд░реЙрдмрд░реНрдЯ рдПрд╕ред рдорд╛рд░реНрдЯрд┐рди, рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдХрд╛рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдЙрдиреНрд╣реЛрдВрдиреЗ рдЗрд╕ рд╢рдмреНрдж рдХреЛ рдЕрдкрдиреЗ рдХрд╛рдо рдХреЗ рддрддреНрд╡реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛, "рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд"ред рдЗрд╕ рдЕрд╡рдзрд╛рд░рдгрд╛ рдореЗрдВ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреИрдЯрд░реНрди рд╢рд╛рдорд┐рд▓ рдереЗ рдЬрд┐рдиреНрд╣реЗрдВ рдкрд╣рд▓реЗ рдЯреЙрдо рдбреЗрдорд╛рд░рдХреЛ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдЕрд╡рдзрд╛рд░рдгрд╛ рдореЗрдВ рдбреЗрд╡рд┐рдб рдкрд░рдирд╛рд╕рд╕ рджреНрд╡рд╛рд░рд╛ рддреИрдпрд╛рд░ рдХрдИ рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдБ рднреА рд╢рд╛рдорд┐рд▓ рдереАрдВред рджреЛ рдореБрдЦреНрдп рд╣реИрдВ рдПрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдФрд░ рдЬрд╛рдирдХрд╛рд░реА рдЫрд┐рдкрд╛рдирд╛ред рдкрд░реНрдирд╛рд╕рд╕ рдиреЗ рддрд░реНрдХ рджрд┐рдпрд╛ рдХрд┐ рдПрдХ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рдлреНрд▓реЛрдЪрд╛рд░реНрдЯ рдпрд╛ рдирд┐рд╖реНрдкрд╛рджрди рдкреНрд░рд╡рд╛рд╣ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХрд┐рд╕реА рднреА рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдиреНрдпреВрдирддрдо рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рд╡реИрд╕реЗ, рдорд╛рд░реНрдЯрд┐рди рдиреЗ рдХрдВрдкрдиреА рдХреЗ рд╡рд░рд┐рд╖реНрда рдкреНрд░рдмрдВрдзрдХреЛрдВ (рд╕реАрдУрдУ, рд╕реАрдЯреАрдУ, рд╕реАрдПрдлрдУ) рдХреЗ рд╕рд╛рде рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдПрдХ рдЕрд▓рдЧ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд╕рд╛рде рд╡реНрдпрд╛рдкрд╛рд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдирддреАрдЬрддрди, рдЙрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдЕрдиреНрдп рдкреНрд░рдмрдВрдзрдХреЛрдВ рдХреЗ рд╣рд┐рддреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рджрд┐рд╡реНрдп рд╡рд╕реНрддреБ
рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рдПрд╕рдЖрд░рдкреА рд╕реАрдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╣рд░ рдЪреАрдЬ рдХреЛ рдПрдХреНрд╢рди рдореЗрдВ рджреЗрдЦреЗрдВред рдЖрдЗрдП рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдПрдХ рднрд╛рдЧ рдХреЛ рджреЗрдЦреЗрдВ рдЬреЛ рд╕рд╛рдЭрд╛ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд░реВрдмреА рдХреЛрдб рд╣реИ рдЬреЛ рдПрдХ рдЕрдВрддрд░рд┐рдХреНрд╖ рд╕реНрдЯреЗрд╢рди рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдФрд░ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:
рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░рд┐рдпрд╛рдВ рдЬреЛ рдЕрдВрддрд░рд┐рдХреНрд╖ рдпрд╛рди рд╡рд░реНрдЧ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред
рдЬрд┐рдиреНрд╣реЗрдВ рд╕реНрдкреЗрд╕ рд╕реНрдЯреЗрд╢рди рдХреЗ рдХрд╛рдо рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛ рд╕рдХрддреА рд╣реИред
class SpaceStation def initialize @supplies = {} @fuel = 0 end def run_sensors puts "----- Sensor Action -----" puts "Running sensors!" end def load_supplies(type, quantity) puts "----- Supply Action -----" puts "Loading
рджрд░рдЕрд╕рд▓, рд╣рдорд╛рд░рд╛ рд╕реНрдкреЗрд╕ рд╕реНрдЯреЗрд╢рди рдиреЙрди-рдлрдВрдХреНрд╢рдирд▓ рд╣реИ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдирд╛рд╕рд╛ рд╕реЗ рдХреЙрд▓ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛), рд▓реЗрдХрд┐рди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реИред
рддреЛ, рдЕрдВрддрд░рд┐рдХреНрд╖ рдпрд╛рди рд╡рд░реНрдЧ рдореЗрдВ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЬрд┐рдореНрдореЗрджрд╛рд░рд┐рдпрд╛рдВ (рдпрд╛ рдХрд╛рд░реНрдп) рд╣реИрдВред рдЙрди рд╕рднреА рдХреЛ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
- рд╕реЗрдВрд╕рд░;
- рдЖрдкреВрд░реНрддрд┐ (рдЙрдкрднреЛрдЧреНрдп);
- рдИрдВрдзрди;
- рдмреВрд╕реНрдЯрд░ред
рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рд╕реНрдЯреЗрд╢рди рдореЗрдВ рдХреЛрдИ рднреА рд╕реНрдЯреЗрд╢рди рдХрд░реНрдордЪрд╛рд░реА рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рд╣реИ, рд╣рдо рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рд╕реЗрдВрд╕рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рддрд░реНрдХрд╢рд╛рд╕реНрддреНрд░реА рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдЖрдкреВрд░реНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ, рдЗрдВрдЬреАрдирд┐рдпрд░ рдИрдВрдзрди рдХреА рдЖрдкреВрд░реНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ, рдФрд░ рдкрд╛рдпрд▓рдЯ рддреНрд╡рд░рдХ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдХреНрдпрд╛ рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдПрд╕рдЖрд░рдкреА рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реИ? рд╣рд╛рдВ рдмрд┐рд▓реНрдХреБрд▓ред рд▓реЗрдХрд┐рди рдЕрдВрддрд░рд┐рдХреНрд╖ рдпрд╛рди рд╡рд░реНрдЧ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ "рджрд┐рд╡реНрдп рд╡рд╕реНрддреБ" рд╣реИ рдЬреЛ рд╕рдм рдХреБрдЫ рдЬрд╛рдирддрд╛ рд╣реИ рдФрд░ рд╕рдм рдХреБрдЫ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ рдореБрдЦреНрдп рд╡рд┐рд░реЛрдзреА рдкреИрдЯрд░реНрди рд╣реИред рдПрдХ рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдРрд╕реА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдмреЗрд╣рдж рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдЕрдм рддрдХ, рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ, рд╣рд╛рдБ, рд▓реЗрдХрд┐рди рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдпрджрд┐ рд╣рдо рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛ред рд╢рд╛рдпрдж рд╣рдорд╛рд░реЗ рдЕрдВрддрд░рд┐рдХреНрд╖ рд╕реНрдЯреЗрд╢рди рдХреЛ рдПрдХ рдЪрд┐рдХрд┐рддреНрд╕рд╛ рдХреЗрдВрджреНрд░ рдпрд╛ рдмреИрдардХ рдХрдХреНрд╖ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдФрд░ рдЬрд┐рддрдиреА рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рд╣реИрдВ, рдЙрддрдиреЗ рд╣реА рдЕрдзрд┐рдХ рдЕрдВрддрд░рд┐рдХреНрд╖ рдпрд╛рди рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдВрдЧреЗред рдЦреИрд░, рдЪреВрдВрдХрд┐ рдпрд╣ рдСрдмреНрдЬреЗрдХреНрдЯ рджреВрд╕рд░реЛрдВ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реЛрдЧрд╛, рдкреВрд░реЗ рдкрд░рд┐рд╕рд░ рдХрд╛ рд░рдЦрд░рдЦрд╛рд╡ рдФрд░ рднреА рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдирддреАрдЬрддрди, рд╣рдо, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддреНрд╡рд░рдХ рдХреЗ рдХрд╛рдо рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдХреЛрдИ рд╢реЛрдзрдХрд░реНрддрд╛ рд╕реЗрдВрд╕рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реНрдЯреЗрд╢рди рдХреА рд╕рдВрдЪрд╛рд░ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдПрд╕рдЖрд░рдкреА рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдПрдХ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╕рд╛рдорд░рд┐рдХ рдЬреАрдд рджреЗ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рд╣рдо "рдпреБрджреНрдз рд╣рд╛рд░ рдЬрд╛рдПрдВрдЧреЗ", рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдРрд╕реЗ рд░рд╛рдХреНрд╖рд╕ рдХреА рд╕реЗрд╡рд╛ рдХрд░рдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдХреЛрдб рдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдСрдкрд░реЗрд╢рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдЗрд╕реЗ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП, 'SpaceStation рдХреНрд▓рд╛рд╕' рдмрджрд▓реЗрдВред
рдЬрд┐рдореНрдореЗрджрд╛рд░реА рд╕рд╛рдЭрд╛ рдХрд░реЗрдВрдКрдкрд░, рд╣рдордиреЗ рдЪрд╛рд░ рдкреНрд░рдХрд╛рд░ рдХреЗ рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХреА рдЬреЛ рдЕрдВрддрд░рд┐рдХреНрд╖ рдпрд╛рди рд╡рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдЬрдм refactoring, рд╣рдо рдЙрдиреНрд╣реЗрдВ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦреЗрдВрдЧреЗред рдЕрдкрдбреЗрдЯреЗрдб рдХреЛрдб SRP рд╕реЗ рдмреЗрд╣рддрд░ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВред
class SpaceStation attr_reader :sensors, :supply_hold, :fuel_tank, :thrusters def initialize @supply_hold = SupplyHold.new @sensors = Sensors.new @fuel_tank = FuelTank.new @thrusters = Thrusters.new(@fuel_tank) end end class Sensors def run_sensors puts "----- Sensor Action -----" puts "Running sensors!" end end class SupplyHold attr_accessor :supplies def initialize @supplies = {} end def load_supplies(type, quantity) puts "----- Supply Action -----" puts "Loading
рдХрдИ рдкрд░рд┐рд╡рд░реНрддрди рд╣реИрдВ, рдХрд╛рд░реНрдпрдХреНрд░рдо рдЕрдм рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдмреЗрд╣рддрд░ рджрд┐рдЦрддрд╛ рд╣реИред рдЕрдм рд╣рдорд╛рд░рд╛ SpaceStation рд╡рд░реНрдЧ рдмрди рдЧрдпрд╛ рд╣реИ, рдмрд▓реНрдХрд┐, рдПрдХ рдХрдВрдЯреЗрдирд░ рдЬрд┐рд╕рдореЗрдВ рдЖрд╢реНрд░рд┐рдд рднрд╛рдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдЪрд╛рд▓рди рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗрдВрд╕рд░ рдХрд╛ рдПрдХ рд╕реЗрдЯ, рдЙрдкрднреЛрдЧреНрдп рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдкреВрд░реНрддрд┐ рдкреНрд░рдгрд╛рд▓реА, рдПрдХ рдИрдВрдзрди рдЯреИрдВрдХ рдФрд░ рдмреВрд╕реНрдЯрд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдХрд┐рд╕реА рднреА рдЪрд░ рдХреЗ рд▓рд┐рдП рдЕрдм рдПрдХ рд╕рдВрдмрдВрдзрд┐рдд рд╡рд░реНрдЧ рд╣реИ: рд╕реЗрдВрд╕рд░; SupplyHold; FuelTank; рдкреНрд░рдгреЛрджрдХред
рдХреЛрдб рдХреЗ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдХрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрджрд▓рд╛рд╡ рд╣реИрдВред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рди рдХреЗрд╡рд▓ рдЕрдкрдиреА рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдЗрдирдХреИрдкреНрд╕реБрд▓реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реЛрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдФрд░ рд╕реБрд╕рдВрдЧрдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рд╣рдо рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ рд╕рдорд╛рди рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдореВрд╣рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЕрдм, рдЕрдЧрд░ рд╣рдореЗрдВ рд╣реИрд╢ рд╕рдВрд░рдЪрдирд╛ рд╕реЗ рд╕рд░рдгреА рдореЗрдВ рдмрджрд▓рдХрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рддреЛ рдХреЗрд╡рд▓ SupplyHold рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд╣рдореЗрдВ рдЕрдиреНрдп рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЫреВрдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрджрд┐ рд░рд╕рдж рдкреНрд░рднрд╛рд░реА рдЕрдзрд┐рдХрд╛рд░реА рдЕрдкрдиреЗ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдХреБрдЫ рдмрджрд▓рддрд╛ рд╣реИ, рддреЛ рд╕реНрдЯреЗрд╢рди рдХреЗ рд╢реЗрд╖ рддрддреНрд╡ рдЕрдЫреВрддреЗ рдирд╣реАрдВ рд░рд╣реЗрдВрдЧреЗред рд╕рд╛рде рд╣реА, рдЕрдВрддрд░рд┐рдХреНрд╖ рдпрд╛рди рд╡рд░реНрдЧ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рднреА рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рд╣рдорд╛рд░реЗ рдЕрдВрддрд░рд┐рдХреНрд╖ рд╕реНрдЯреЗрд╢рди рдЕрдзрд┐рдХрд╛рд░реА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рд╕реЗ рдЦреБрд╢ рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд░рдЦрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЙрди рд▓реЛрдЧреЛрдВ рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХреА рдЙрдиреНрд╣реЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдХреЛрдб рдореЗрдВ Report_supplies рдФрд░ Report_fuel рдЬреИрд╕реЗ рддрд░реАрдХреЗ рд╣реИрдВ рдЬреЛ рдХрд┐ SupplyHold рдФрд░ FuelTank рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИрдВред рдпрджрд┐ рд░рд┐рдкреЛрд░реНрдЯ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдкреГрдереНрд╡реА рдкреВрдЫрддреА рд╣реИ рддреЛ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ? рдЖрдкрдХреЛ рд╕рдкреНрд▓рд╛рдИрд╣реЛрд▓реНрдб рдФрд░ рдлреНрдпреВрд▓рдЯреИрдВрдХ рджреЛрдиреЛрдВ рд╡рд░реНрдЧреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдЖрдкрдХреЛ рдИрдВрдзрди рдФрд░ рдЙрдкрднреЛрдЧреНрдп рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдЖрдкрдХреЛ рд╕рднреА рд╕рдорд╛рди рд╡рд░реНрдЧреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрджрд▓рдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдпрд╣ рдПрд╕рдЖрд░рдкреА рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рд╣реИред рдЪрд▓реЛ рдЗрд╕реЗ рдареАрдХ рдХрд░рддреЗ рд╣реИрдВред
class SpaceStation attr_reader :sensors, :supply_hold, :supply_reporter, :fuel_tank, :fuel_reporter, :thrusters def initialize @sensors = Sensors.new @supply_hold = SupplyHold.new @supply_reporter = SupplyReporter.new(@supply_hold) @fuel_tank = FuelTank.new @fuel_reporter = FuelReporter.new(@fuel_tank) @thrusters = Thrusters.new(@fuel_tank) end end class Sensors def run_sensors puts "----- Sensor Action -----" puts "Running sensors!" end end class SupplyHold attr_accessor :supplies attr_reader :reporter def initialize @supplies = {} end def get_supplies @supplies end def load_supplies(type, quantity) puts "----- Supply Action -----" puts "Loading
рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдЗрд╕ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдЬрд┐рдореНрдореЗрджрд╛рд░рд┐рдпреЛрдВ рдХреЛ рджреЛ рдирдП рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛, рдлреНрдпреВрд▓рд░рдкреЗрдпрд░ рдФрд░ рд╕рдкреНрд▓рд╛рдИрд░рд┐рдкреЛрд░реНрдЯрд░ред рд╡реЗ рджреЛрдиреЛрдВ рд░рд┐рдкреЛрд░реНрдЯрд░ рдХреНрд▓рд╛рд╕ рдХреЗ рдмрдЪреНрдЪреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЖрд╡рд╢реНрдпрдХ рдЙрдкрд╡рд░реНрдЧ рдХреЛ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдордиреЗ рдЕрдВрддрд░рд┐рдХреНрд╖ рдпрд╛рди рд╡рд░реНрдЧ рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдЪрд░ рдЬреЛрдбрд╝реЗред рдЕрдм, рдпрджрд┐ рдкреГрдереНрд╡реА рдХреБрдЫ рдФрд░ рдмрджрд▓рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд░рддреА рд╣реИ, рддреЛ рд╣рдо рдЙрдкрд╡рд░реНрдЧреЛрдВ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░реЗрдВрдЧреЗ, рди рдХрд┐ рдореБрдЦреНрдп рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдПред
рдмреЗрд╢рдХ, рдпрд╣рд╛рдВ рдХреБрдЫ рдХрдХреНрд╖рд╛рдПрдВ рдЕрднреА рднреА рдПрдХ-рджреВрд╕рд░реЗ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИрдВред рддреЛ, SupplyReporter рдСрдмреНрдЬреЗрдХреНрдЯ SupplyHold рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ FuelReporter FuelTank рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдмреЗрд╢рдХ, рдмреВрд╕реНрдЯрд░ рдХреЛ рдИрдВрдзрди рдЯреИрдВрдХ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рддрд╛рд░реНрдХрд┐рдХ рджрд┐рдЦрддрд╛ рд╣реИ, рдФрд░ рдмрджрд▓рд╛рд╡ рдХрд░рдирд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛ - рдПрдХ рд╡рд╕реНрддреБ рдХреЗ рдХреЛрдб рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рджреВрд╕рд░реЗ рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рдкрдбрд╝реЗрдЧрд╛ред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдордиреЗ рдореЙрдбреНрдпреВрд▓рд░ рдХреЛрдб рдмрдирд╛рдпрд╛ рдЬрд╣рд╛рдВ рд╡рд╕реНрддреБрдУрдВ / рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░рд┐рдпреЛрдВ рдХреЛ рдареАрдХ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдРрд╕реЗ рдХреЛрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ; рдЗрд╕рдХрд╛ рд░рдЦрд░рдЦрд╛рд╡ рдПрдХ рд╕рд░рд▓ рдХрд╛рд░реНрдп рд╣реЛрдЧрд╛ред рд╕рдВрдкреВрд░реНрдг "рджреИрд╡реАрдп рд╡рд╕реНрддреБ" рд╣рдордиреЗ рдПрд╕рдЖрд░рдкреА рдореЗрдВ рдмрджрд▓ рджреА рд╣реИред
рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ: