Inversion of control (IoC), Dependency injection (DI)

Dependency injection 2

Dependency injection (DI)
http://en.wikipedia.org/wiki/Dependency_injection

 

“Dependency injection (DI) in object-oriented computer programming is a technique that indicates to a part of a program which other parts it can use, i.e. to supply an external dependency, or reference, to a software component. More simply, dependency injection is the passing or setting of dependencies into a software component. In technical terms, it is a design pattern that separates behavior from dependency resolution, thus decoupling highly dependent components. Instead of components having to request dependencies, they are given, or injected, into the component.”

Inversion of Control (IoC) 2

Inversion of control (IoC)
http://en.wikipedia.org/wiki/Inversion_of_control

“In software engineering, Inversion of control (IoC) is an abstract principle describing an aspect of some software architecture designs in which the flow of control of a system is inverted in comparison to procedural programming.
In traditional programming the flow of the business logic is controlled by a central piece of code, which calls reusable subroutines that perform specific functions. Using Inversion of Control this “central control” design principle is abandoned. The caller’s code deals with the program’s execution order, but the business knowledge is encapsulated by the called subroutines.
In practice, Inversion of Control is a style of software construction where reusable generic code controls the execution of problem-specific code. It carries the strong connotation that the reusable code and the problem-specific code are developed independently, which often results in a single integrated application.”

Injection:
http://www.martinfowler.com/articles/injection.html

IoC libraries compared

      comparing other IoC’s: Ninject, StructurMap, Unity, Spring.net,Windsor, Autofac

 List of .NET Dependency Injection Containers (IOC):
http://www.hanselman.com/blog/ListOfNETDependencyInjectionContainersIOC.aspx

http://elegantcode.com/2009/01/07/ioc-libraries-compared

Inversion of Control (IoC)

Comparison Matrix:
http://bulohjoe.blogspot.com/2011/10/bulohjoe-on-net.html

IoC Performance comparison:
http://www.iocbattle.com
http://www.palmmedia.de/Blog/2011/8/30/ioc-container-benchmark-performance-comparison

The MVVM frameworks Silver-light application:
http://www.japf.fr/silverlight/mvvm/index.html
Another Comparison:
http://catel.catenalogic.com/index.htm?mvvm_framework_comparison_shee.htm

Dependency injection

In .Net:

    EnterpriseLibrary

         http://entlib.codeplex.com/

        Videos:
http://entlib.codeplex.com/wikipage?title=Videos&referringTitle=Home

   Unity:

     http://unity.codeplex.com/
Video:
10 videos under: (Its with Prism)
http://channel9.msdn.com/blogs/mtaulty/prism–silverlight-part-1-taking-sketched-code-towards-unity

Links:
http://weblogs.asp.net/podwysocki/archive/2008/02/26/ioc-and-the-unity-application-block-once-again.aspx

Prism (Composite Application Guidance for WPF and Silverlight)
http://compositewpf.codeplex.com/
info:
http://msdn.microsoft.com/en-us/library/ff648611.aspx
Video: (Its with Unity)
10 videos under:
http://channel9.msdn.com/blogs/mtaulty/prism–silverlight-part-1-taking-sketched-code-towards-unity

MEF – Managed Extensibility Framework

        http://mef.codeplex.com/
Videos:
look under section Casts.
and also:
http://channel9.msdn.com/Tags/learnmefsl4
and aslo:
http://channel9.msdn.com/Tags/mef

    MVVM

         http://visualstudiogallery.msdn.microsoft.com/3ab5f02f-0c54-453c-b437-8e8d57eb9942
Video: (Its with Unity, Prism)
10 videos under:
http://channel9.msdn.com/blogs/mtaulty/prism–silverlight-part-1-taking-sketched-code-towards-unity

About Reader Man حسين ناجي الصفافير

حسين ناجي الصفافير Hussain Naji Al-Safafeer Info: https://readerman1.wordpress.com/aboutme
This entry was posted in Technical and tagged , , , , , , , , , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s