рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХрдорд╛рди рдФрд░ рд░рдгрдиреАрддрд┐ рдкреИрдЯрд░реНрди

рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдореЗрд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдкреНрд░рдХрдЯ рд╣реБрдП рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЖрдкрдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдбрд┐рдЬрд╛рдЗрди рдкреИрдЯрд░реНрди рдФрд░ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ? рдпрд╣ рднреА рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ?


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

рд▓рдпрд╛рддреНрдордХ рд╡рд┐рд╖рдпрд╛рдВрддрд░: рд╡рд╛рд╕реНрддреБрдХрд▓рд╛, рдбрд┐рдЬрд╛рдЗрди рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░

рдмрд╣реБрдд рдкрд╣рд▓реЗ рдирд╣реАрдВ рдерд╛ рдЬрдм рдореИрдВ рдПрдХ рдмрд╣реБрдд рд╣реА рд░реЛрдЪрдХ рдЕрдзреНрдпрдпрди рдореЗрдВ рдЖрдпрд╛ рдерд╛ - (2)ред рдпрд╣ "рд╡рд╛рд╕реНрддреБрдХрд▓рд╛", "рдбрд┐рдЬрд╛рдЗрди" рдФрд░ "рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди" рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рдФрдкрдЪрд╛рд░рд┐рдХ рд░реВрдк рджреЗрдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рдорд╛рдирддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдЕрдХреНрд╕рд░ рдЕрдиреМрдкрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдФрд░ рд▓реЗрдЦрдХ рдПрдХ рдмрд╣реБрдд рд╣реА рджрд┐рд▓рдЪрд╕реНрдк рдорд╛рдирджрдВрдб рдореЗрдВ рдХрдЯреМрддреА рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддреЗ рд╣реИрдВ: рдЗрдВрдЯреЗрдВрд╕рд┐рдЯреА / рд▓реЛрдХрд▓рд┐рдЯреА рдорд╛рдирджрдВрдбред рдореИрдВ рджрд░реНрд╢рдирд╢рд╛рд╕реНрддреНрд░ рдореЗрдВ рдЧрд╣рд░рд╛рдИ рддрдХ рдирд╣реАрдВ рдЬрд╛рдКрдВрдЧрд╛ рдФрд░ рдХреЗрд╡рд▓ рдХрд╕реМрдЯреА рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рджреВрдВрдЧрд╛ (рдпрд╣ рд╣рд┐рд╕реНрд╕рд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рд╣реИ) рдФрд░ рдЗрд╕рд╕реЗ рдореЗрд░рд╛ рдирд┐рд╖реНрдХрд░реНрд╖ред
рдЗрдВрдЯреЗрдВрд╕рд┐рдЯреА рдкреНрд░реЙрдкрд░реНрдЯреА рдХрд╛ рдорддрд▓рдм рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЗрдХрд╛рдИ рдХреА рдПрдХ рдЕрдирдВрдд рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЕрднрд╛рдЬреНрдп рд╕рдВрдЦреНрдпрд╛ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ред рдмрд╣реБрдореБрдЦреА рдкреНрд░рддрд┐рднрд╛ рдХреА рд╕рдВрдкрддреНрддрд┐ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рд╣реИ - рд╕рд╛рд░ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдПрдХ рд╕реАрдорд┐рдд рд╕реЗрдЯ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рджреЗрд╢ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╛рдЯреЛ рдХрд╛ рдПрдХ рд╕рджрд╕реНрдп рд╣реИред
рд╕реНрдерд╛рдиреАрдпрддрд╛ рд╕рдВрдкрддреНрддрд┐ - рдПрдХ рдЗрдХрд╛рдИ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдХреЗрд╡рд▓ рдПрдХ рдЕрд▓рдЧ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИред рддрджрдиреБрд╕рд╛рд░, рд╡реИрд╢реНрд╡рд┐рдХрддрд╛ - рд╕рд╛рд░ рдкреВрд░реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП, рдЗрди рджреЛ рдЧреБрдгреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдЗрд╕ рдЕрдзреНрдпрдпрди рдХреЗ рд▓реЗрдЦрдХ рдРрд╕реА рддрд╛рд▓рд┐рдХрд╛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
рдЫрд╡рд┐
рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рд╕реНрддрд░ рд╕реЗ рдХреНрдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдФрд░ рдХреНрдпрд╛ - рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд╕реНрддрд░ рддрдХред рдФрд░ рдпрд╣рд╛рдВ рдореЗрд░рд╛ рдирд┐рд╖реНрдХрд░реНрд╖ рд╣реИ: рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░рддрд┐рдорд╛рди, рдордВрдЪ рдФрд░ рднрд╛рд╖рд╛ рдХреА рдкрд╕рдВрдж рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд╕реНрддрд░ рдХрд╛ рдПрдХ рдирд┐рд░реНрдгрдп рд╣реИ , рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд┐рдХрд▓реНрдк рд╡реИрд╢реНрд╡рд┐рдХ рд╣реИ (рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рднреА рднрд╛рдЧреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ) рдФрд░ рдЕрдВрддрд░рдВрдЧ (рдкреНрд░рддрд┐рдорд╛рди рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЕрдирдВрдд рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП)ред

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

рдЙрдЪреНрдЪрддрд░ рдХрд╛рд░реНрдп


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

let f = (+) 10 let g = (*) 2 let composition = f << g printfn "%i" <| g 15 printfn "%i" <| f 30 printfn "%i" <| composition 15 

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

 30 40 40 

рдЬрд╛рд╣рд┐рд░ рд╣реИ, рд╕рдВрдХреЗрддрди f << g рд╕рдВрдХреЗрддрди f (g (x)) рдпрд╛ F тЧЛ рдЬреА рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред
рдЗрд╕реЗ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд░рдЪрдирд╛ рдСрдкрд░реЗрдЯрд░ рдХреЗ рдкреНрд░рдХрд╛рд░ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ:

 ('a -> 'b) -> ('c -> 'a) -> 'c -> 'b 

рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рднрд╛рдЧ рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрд╛рд░реНрдп рд╣реИрдВред рдпрд╣реА рд╣реИ, рдпрд╣ рдПрдХ рдРрд╕рд╛ рдХрд╛рд░реНрдп рд╣реИ рдЬреЛ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддрд╛ рд╣реИ:
  • рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рдЬреЗрдиреЗрд░рд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдорд╛рди рдХреЛ 'рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЬреЗрдиреЗрд░рд┐рдХ рдкреНрд░рдХрд╛рд░' b рдХрд╛ рдорд╛рди рджреЗрддрд╛ рд╣реИ
  • рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рдЬреЗрдиреЗрд░рд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реА рдХреЗ рдорд╛рди рдХреЛ рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЬреЗрдиреЗрд░рд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдорд╛рди рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИ 'рдП
  • рдореВрд▓реНрдп рдХрд╛ рдкреНрд░рдХрд╛рд░ 'рд╕реА

рдФрд░ 'b' рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд╛рди рд▓реМрдЯрд╛рддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ 'c' рдХрд╛ рдорд╛рди рд▓реЗрддрд╛ рд╣реИ рдФрд░ 'b' рдХрд╛ рдорд╛рди рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдкреНрд░рдХрд╛рд░ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 ('a -> 'b) -> ('c -> 'a) -> ('c -> 'b) 

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

 private void CalculateAdditionalQuantityToIncreaseGain() { //  var unitPrice = ExtractDecimal(gainUnitPriceEdit); var quantityReleased = ExtractDecimal(gainQuantityEdit); ... } 


рдФрд░ рдпрд╣рд╛рдБ FEP рд╣реИ рдЬреЛ рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ:

 private static void ExecuteErrorProneCode(Action procedure) { try { procedure(); //      } catch (WrongDecimalInputInTextBoxException ex) { MessageBox.Show(ex.Message, "  "); } catch (Exception ex) { MessageBox.Show(ex.Message, ""); } } 

рдлрд┐рд░, рдХрд┐рд╕реА рднреА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдХрд╛рд░рдг рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рд▓рд┐рдЦрдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:

 ExecuteErrorProneCode(CalculateAdditionalQuantityToIncreaseGain); 

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

рдХрдорд╛рдВрдб рдкреИрдЯрд░реНрди


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

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

рдЫрд╡рд┐

рдореИрдВ рдкреВрд░реНрд╡рд╡рдд рдФрд░ рдлрд┐рд░ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛ - рдЖрдк рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдПрдХ рд╕рд╛рдл OO рд╕рдВрд╕реНрдХрд░рдг рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рдЖрд░реЗрдЦ рдореЗрдВ рднреВрдорд┐рдХрд╛ рд╡рд┐рддрд░рдг:

рдЫрд╡рд┐

рдпрд╣рд╛рдБ рдлрд╝рд┐рд▓реНрдЯрд░ рд░рд┐рд╕реАрд╡рд░ рдХреЗ y, рд▓реЙрдЧрд┐рдВрдЧрдЗрдиреНрдХреЛрд╡рд░ - рдЗрдиреЛрдХрд░ 'y, IFilterCommand - ICommand рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ ред рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╣рдо рдСрдкрд░реЗрд╢рдВрд╕ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВрдЧреЗ (рдЖрдк рдХреНрд▓рд╛рдЗрдВрдЯ рдИ рдореЗрдВ рджреЛрдиреЛрдВ рдХрдорд╛рдВрдб рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдПрдЧреНрдЬрд┐рдХреНрдпреВрдЯ Execute() рд▓реЙрдЧрд┐рдВрдЧрдЗрдиреНрдХреЛрд╡рд░ рдХреА рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд▓реЙрдЧрд┐рдВрдЧрдЗрдиреНрдХреЛрд╡рд░ рдИ-рдЦреБрдж рдореЗрдВ - рдЪреБрдирд╛рд╡ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдерд┐рддрд┐ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ):

рдЫрд╡рд┐

рдФрд░ рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд░рджреНрдж рдХрд░реЗрдВрдЧреЗ:

рдЫрд╡рд┐

PerformOps рдФрд░ undoneOps рд╕реНрдЯреИрдХ рд╣реИрдВ рдЬреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдФрд░ рд░рджреНрдж рдХреА рдЧрдИ рдЯреАрдореЛрдВ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдВрдХрд┐, FEP рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдпрд╣ рд╕рднреА рд╡реНрдпрд╡рд╣рд╛рд░ FEP рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрджрд┐ рдЪрдпрдирд┐рдд рднрд╛рд╖рд╛ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, Invoker рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ FPF рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдСрдкрд░реЗрд╢рди рдХреЗ рдЕрдиреБрд░реВрдк рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддрд╛ рд╣реИ - рд╣рдореЗрдВ рдЕрдм рдХрдорд╛рдВрдб рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдлрд╝рдВрдХреНрд╢рди рд╕реНрд╡рдпрдВ рдорд╛рди рд╣реИрдВ, рдФрд░ ICommand рдЗрдВрдЯрд░рдлрд╝реЗрд╕, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рднрд╛рд╖рд╛ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХ рдкреНрд░рдгрд╛рд▓реА рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░рддрд┐рдорд╛рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рдкреИрдЯрд░реНрди рдХреЛ рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░рддрд┐рдорд╛рди рдореЗрдВ рдПрдХ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд╕рд╛рде рдмрджрд▓рдиреЗ рдХрд╛ рдПрдХ рдЖрд░реЗрдЦ рд╣реИ рдЬреЛ рд╕рдорд╛рди рдХрд╛рд░реНрдп рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

рдЫрд╡рд┐

Pseudocode (F # рд╕реЗ рдкреНрд░реЗрд░рд┐рдд) рдкрд░, рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

 //      //    -       type OpType = (DataType -> DataType) * DataType //      let performedOps = Stack<OpType>() let undoneOps = Stack<OpType>() // LoggingInvoker -  let execute operation data = let res = operation data //  performedOps.Push(operation, data) //       res //    let undo () = if performedOps.Count > 0 then //          undoneOps.Push(performedOps.Pop()) //      Some (snd undoneOps.Peek()) //     'a option, . (5)  (7) else None // let OperationOne data = ... let OperationTwo data = ... //  OperationOne let mutable a = execute OperationOne data //  let b <- undo () 

рд╣рдо рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкрд╛рд╕ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╣рдо рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдПрдлрд╡реАрдкреА execute ред execute рдлрд╝рдВрдХреНрд╢рди рдкреВрд░реНрдг рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдвреЗрд░ рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд░рддрд╛ рд╣реИ, рдСрдкрд░реЗрд╢рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рджреЗрддрд╛ рд╣реИред рдкреВрд░реНрд╡рд╡рдд рдХрд╛рд░реНрдп рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдП рдЧрдП рдЕрдВрддрд┐рдо рдСрдкрд░реЗрд╢рди рдХреЛ рд░рджреНрдж рдХрд░ рджреЗрддрд╛ рд╣реИред

рдХрдорд╛рдВрдб рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд╛рдн рд╣реИрдВ:
  1. рдкрд░рд┐рдгрд╛рдореА рдХреЛрдб рдЕрдзрд┐рдХ рдкреНрд░рд╛рдХреГрддрд┐рдХ, рдЫреЛрдЯрд╛ рдФрд░ рд╕рд░рд▓ рд╣реИред
  2. рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рд░рдЪрдирд╛ рдпрд╛ рдкрд╛рдЗрдк-рд▓рд╛рдЗрдирд┐рдВрдЧ (рдкрд╛рдЗрдк-рд▓рд╛рдЗрдирд┐рдВрдЧ рджреЗрдЦреЗрдВ (5) рдпрд╛ (7)) рдСрдкрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореИрдХреНрд░реЛ рдФрд░ рдЬрдЯрд┐рд▓ рдСрдкрд░реЗрд╢рди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ
  3. рдЖрдк рдЬрдЯрд┐рд▓ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдПрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдСрдкрд░реЗрд╢рди рд╣реЛрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдореЗрдиреВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред

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

рд░рдгрдиреАрддрд┐ рдкреИрдЯрд░реНрди


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

рдЫрд╡рд┐

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

рдЫрд╡рд┐

рдЫрджреНрдо рдХреЛрдб рдкрд░:

 let strategyA data = ... let strategyB data = ... let useStrategy strategy data = ... strategy data ... useStrategy strategyA data 

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

 let a = sort (<) data 

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


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

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

рд╕реВрддреНрд░реЛрдВ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ


1. рдЖрдкрд░рд╛рдзрд┐рдХ рдЕрддрд┐рд░рдВрдЬрдирд╛
2. рд╡рд╛рд╕реНрддреБрдХрд▓рд╛, рдбрд┐рдЬрд╛рдЗрди, рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди ред рдПрдореЛрди рдПрдЪред рдИрдбрди, рд░рд┐рдХ рдХрдЬрд╝рдореИрдиред рдкреЛрд░реНрдЯрд▓реИрдВрдб: B.Sc. 2003. рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдкрд░ 25 рд╡рд╛рдВ рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рд╕рдореНрдореЗрд▓рди - ICSE
3. рдмреИрдВрдХрд┐рдВрдЧ рдлрд░реНрдо 50 рдкреНрд░рддрд┐рд╢рдд рддрдХ рдЧрддрд┐ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрд╛рддреНрдордХ рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред Microsoft рдХреЗрд╕ рд╕реНрдЯрдбреАрдЬред рдорд╛рд░реНрдЪ 2010
4. рдмрд┐рд╢рдк, рдЬреБрдбрд┐рдеред рд╕реА # 3.0 рдбрд┐рдЬрд╛рдЗрди рдкреИрдЯрд░реНрдиред рд╕реЗрдмреЗрд╕реНрдЯреЛрдкреЛрд▓, рдХреИрд▓рд┐рдлреЛрд░реНрдирд┐рдпрд╛: рдУ'рд░реЗрд▓реА, 2008ред
5. рдЯреЙрдорд╕ рдкреЗрдЯреНрд░рд┐рд╕рдХ, рдЬреЙрди рд╕реНрдХреАрдЯред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧред рдмреА.рдПрдо.: рдореИрдирд┐рдВрдЧ рдкреНрд░рдХрд╛рд╢рди, 2010ред
6. рдЧреЗрдмреНрд░рд┐рдпрд▓, рд░рд┐рдЪрд░реНрдб рдкреАред рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдлреЗрд▓реНрдб рд╕реНрд▓рд╛рдЗрдбреНрд╕ рдбреНрд░реАрдордЧреЛрдВрдЧреНрд╕ред
7. рд╕реНрдорд┐рде, рдХреНрд░рд┐рд╕ред рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдПрдл #ред рд╕реЗрдмреЗрд╕реНрдЯреЛрдкреЛрд▓, рдХреИрд▓рд┐рдлреЛрд░реНрдирд┐рдпрд╛: рдУ'рд░реЗрд▓реА, 2010ред

рдпреВрдбреАрдкреА:
alexeyrom рдиреЗ рдПрдХ рдмрд╣реБрдд рд╣реА рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА рд▓рд┐рдЦреА, рдЙрдирдХреА рд╕рд╣рдорддрд┐ рд╕реЗ рдореИрдВрдиреЗ рдЗрд╕реЗ рдкреЛрд╕реНрдЯ рдХреА рдмреЙрдбреА рдореЗрдВ рдбрд╛рд▓рд╛ рддрд╛рдХрд┐ рдЗрд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХреЗ:

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

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


All Articles