Thursday, January 22, 2004

In the past year, I've learned an incredible amount about software design.  It seems that the amount of data I take in increases exponentially.  I suppose this is standard in most fields of study, it's still surprising to me.

My recent learnings have involved design patterns.  I've spoken about them before so I won't go into huge detail.  I've recently come across a general pattern known as Inversion of Control (IoC for short).  It is a pretty broad concept and is frequently used by developers, most of whom would tell you it's common sense after you explained it.  The real benefit is formalizing and categorizing it.  This enables you to talk about approaches for solving problems in a common way. For example, try getting some musicians together to write a song, but do not allow them to refer to musical terms.

The particular pattern I've just recently been aquainted with is Dependency Injection, where you define modules of software as components that define their dependencies to other components as part of their declaration rather than tieing them to some specific implementation or third party factory.  I've been playing with PicoContainer, a project that provides a framework for Dependency Injection.  I'm still trying to get my hands around it, and trying to see how this pattern fits into some of the projects I'm working on.

posted on Thursday, January 22, 2004 5:44:04 PM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
Related posts:
Silverlight limitations and Constrained Callvirt in IL
What is System.__Canon and why is it on my stack?
Adding support for .ashx-based views in ASP.net MVC
Expression Tree Pruning, Value Types, and the one true Object
Delegate Properties
Open-instance delegates for value types?
Tracked by:
"diet pills statistics" (diet pills statistics) [Trackback]
"van norman brake lathe" (van norman brake lathe) [Trackback]
"Big Brother 2005" (Big Brother 2005) [Trackback]
"RFID Tags" (RFID Tags) [Trackback]
"memory loss ambien" (memory loss ambien) [Trackback]
"fact act" (fact act) [Trackback]
"plastic card printer" (plastic card printer) [Trackback]
"miller generators" (miller generators) [Trackback]
"ray of light" (ray of light) [Trackback]
"subwoofer auto" (subwoofer auto) [Trackback]
"sofa sleeper mattress" (sofa sleeper mattress) [Trackback]
"purchase flagyl 500mg on line" (purchase flagyl 500mg on line) [Trackback]
"calendar publishers" (calendar publishers) [Trackback]
"Credit Internet" (Credit Internet) [Trackback]
"Oriental Trading Post" (Oriental Trading Post) [Trackback]
"eureka vacuum belts" (eureka vacuum belts) [Trackback]
"DRUG INTERACTION WITH PROVERA AND ATIVAN" (DRUG INTERACTION WITH PROVERA AND AT... [Trackback]
"import of perfume" (import of perfume) [Trackback]
"gameboy advance sp" (gameboy advance sp) [Trackback]
"how to construct a respirator" (how to construct a respirator) [Trackback]
"zyrtec and conception" (zyrtec and conception) [Trackback]
"audition movie spoiler" (audition movie spoiler) [Trackback]
"vicks humidifier" (vicks humidifier) [Trackback]
"September Holidays" (September Holidays) [Trackback]
"phat farm sneakers" (phat farm sneakers) [Trackback]
"computer restarts for no reason" (computer restarts for no reason) [Trackback]
"precut mats" (precut mats) [Trackback]
"technical defenition of SSL" (technical defenition of SSL) [Trackback]
"DEWALT ROUTER" (DEWALT ROUTER) [Trackback]
"mexico pharmacies" (mexico pharmacies) [Trackback]
"Effects of Nagasaki Hiroshima Bombing" (Effects of Nagasaki Hiroshima Bombing) [Trackback]
"8X 4X AGP INTERFACE" (8X 4X AGP INTERFACE) [Trackback]
"Cabinet Knobs" (Cabinet Knobs) [Trackback]