рдЕрдЪреНрдЫрд╛ рд╕рдордп рд╣реИ
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ,
Resharper рдХреЛрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рд╕рднреА рдирд╣реАрдВред
рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ, рдмрд╣реБрдд рд╣рд▓ рдирд╣реАрдВ рд╣реИ, рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЖрдИрдУрд╕реА рдХрдВрдЯреЗрдирд░реЛрдВ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╣реИред
рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ (Microsoft рдХреЗ
рдПрдХрддрд╛ IoC рдХрдВрдЯреЗрдирд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред
IUnityContainer container = new UnityContainer(); container.RegisterType<IMovieRepository, InMemoryMovieRepository>(); container.RegisterType<IMovieFinder, MovieFinder>();
IUnityContainer container = new UnityContainer(); container.RegisterType<IMovieRepository, InMemoryMovieRepository>(); container.RegisterType<IMovieFinder, MovieFinder>();
рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, Resharper рдХреЛ рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ рдХрд┐ "MovieFinder рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛ рдХрд╣рд╛рдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ (Find Usages рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛)
" Usages of 'MovieFinder (...)' рдирд╣реАрдВ рдорд┐рд▓рд╛ ред
" public class MovieFinder: IMovieFinder { readonly IMovieRepository repository; public MovieFinder(IMovieRepository repository) { this.repository = repository; } ... }
public class MovieFinder: IMovieFinder { readonly IMovieRepository repository; public MovieFinder(IMovieRepository repository) { this.repository = repository; } ... }

рдпрджрд┐ рдкрдВрдЬреАрдХрд░рдг рдореЗрдВ рд╡рд░реНрдЧ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддреЛ рд╕реНрдерд┐рддрд┐ рдФрд░ рднреА рдЦрд░рд╛рдм рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ Resharper рджреНрд╡рд╛рд░рд╛ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рд▓реЗрдХрд┐рди, рд░реЗрд╕рд░реНрдкрд░ рдФрд░ IoC рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ "рдкрд░рд┐рдЪрдп" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ред
рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░ рдкреНрд░рд╕рд┐рджреНрдз рд╡рд╛рдХреНрдпрд╛рдВрд╢ "
рд╕рдм рдХреБрдЫ рд╣реЛрдиреЗ рджреЗрдВ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдпрд╛рдж рдЖ рд░рд╣рд╛ рд╣реИ " рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП
, рд░рд┐рд╕рд░реНрдкрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдкреНрд▓рдЧрдЗрдиреНрд╕ рд▓рд┐рдЦрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдЬреЛрдбрд╝рд╛ред
рдЗрдЧрд▓ рддрдмрд╛рдЪрдирд┐рдХ рдиреЗ рдЗрд╕рдХрд╛ рдлрд╛рдпрджрд╛ рдЙрдард╛рдпрд╛ред
рдПрдЬреЗрдВрдЯ Mulder рдкреНрд▓рдЧрдЗрди рдХрдВрдЯреЗрдирд░реЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХрдХреНрд╖рд╛рдУрдВ рдФрд░ рдЙрдирдХреЗ рдкрдВрдЬреАрдХрд░рдг рдХреЗ рдмреАрдЪ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рддреЛ, рдкреНрд▓рдЧрдЗрди 3 рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:
1. рдПрдХ рд╡рд┐рд╢реЗрд╖ рдЖрдЗрдХрди рдХреЗ рд╕рд╛рде рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдорд╛рд░реНрдХ рдХрдХреНрд╖рд╛рдПрдВ:

2. рдкрдВрдЬреАрдХрд░рдг рдХреА рдЬрдЧрд╣ рдкрд░ рдХрдХреНрд╖рд╛ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рд╕реЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░реЗрдВред
3. рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдкрдВрдЬреАрдХрд░рдг рд╕реЗ рдХрдХреНрд╖рд╛ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рддрдХ рдиреЗрд╡рд┐рдЧреЗрд╢рдиред

рд╕рдм рдХреБрдЫ рдЬрд▓реНрджреА рдФрд░ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдХрднреА-рдХрднреА (VS2010 + Reshaper 6.1) рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрди рдХрдорд┐рдпреЛрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдЦрддреНрдо рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЪреАрдЬ рдШрд░ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╣реИред
рдкреНрд▓рдЧрдЗрди рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рд╕рдм рдХреБрдЫ (рд╡реЗрдмрд╕рд╛рдЗрдЯ, рдкреНрд░рд▓реЗрдЦрди, рд╕реНрдерд╛рдкрдирд╛) рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдкреНрд▓рдЧрдЗрди рд╕рд╛рдЗрдЯ:
http://hmemcpy.github.com/AgentMulder/ рдореЗрдВ рдПрдХ рд╕рд░рд▓ рд▓реЗрдХрд┐рди рд╕реНрдкрд╖реНрдЯ рд╡рд░реНрдгрди рд╣реИред рдПрдХ
рд╡реАрдбрд┐рдпреЛ рд╣реИ рдЬреЛ рдФрд░ рднреА рдЖрд╕рд╛рди рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддрд╛ рд╣реИред
рдкреНрд▓рдЧрдЗрди рдкрд╣рд▓реЗ рд╣реА
Resharper рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдкрд╣реБрдВрдЪ рдЪреБрдХрд╛ рд╣реИред рдореИрдВрдиреЗ рд╡рд╣рд╛рдВ 17 рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЛ рдЧрд┐рдирд╛, рдЙрдирдореЗрдВ рд╕реЗ 4 рдПрдЬреЗрдВрдЯ рд╣реИрдВред
рд╕рдорд░реНрдерд┐рдд рдХрдВрдЯреЗрдирд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдпрд╣рд╛рдВ рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИ
https://raw.github.com/hmemcpy/AgentMulder/master/WhatsNew.txt ред
рд╡реИрд╕реЗ, рдЕрдЪреНрдЫреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдЖрдИрдУрд╕реА рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреНрд▓рдЧ-рдЗрди рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧ-рдЗрди рд╕рд┐рд╕реНрдЯрдо рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ :)ред
Mezastel рд╕реЗ рд╡рд┐рд╕реНрддреГрдд рд╡реАрдбрд┐рдпреЛ "
рджрд┐рдорд┐рддреНрд░реА рдиреЗрд╕реНрдЯрд░реБрдХ ред
рд░рд┐рд╕реНрдкрд░рд░ : рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдПрдВрдб рдПрдХреНрд╕рдЯреЗрдВрд╢рдиреНрд╕ ", рдкреНрд▓рдЧ-рдЗрди рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдПрдХ рдкрд░рд┐рдЪрдп рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдЗрдЧреЛрд░ред