Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Product Architecture
Message
From
06/02/2009 14:10:25
Mike Cole
Yellow Lab Technologies
Stanley, Iowa, United States
 
 
To
05/02/2009 15:33:05
John Baird
Coatesville, Pennsylvania, United States
General information
Forum:
ASP.NET
Category:
Other
Environment versions
Environment:
ASP.NET
Miscellaneous
Thread ID:
01379573
Message ID:
01379882
Views:
26
>>I am working on a new project that is going a little out of my expertise (if I have any). Our company is going to produce a web application that we will re-sell to other companies. We will have a canned product (which is straightforward enough), but we will also allow customizations to be made to a customer that requests it. How would we go about this without recreating our logic/data structure?
>>
>>My first thought is to write the canned product which will have all of the core functionality. The customizations would be a separate application that would inherit from the core functionality. Is this the right way to do this? We want all core functionality to be available to everybody and all future core modifications to also be applied to the customizations.
>>
>>Help me Rhonda, help help me Rhonda. Are there any Rhondas on here?
>
>
>Hi Mike,
>
>You may want to check out topics on "Dependency Injection". Or you can build the logic into a single dll that can be replaced by another at runtime using reflections. We've done both here.

John,
About your second approach...

So what you're saying is that I build my core components (NewsReader, Blog, ProductList, etc...) and have them each in a DLL. I would use reflection to load the DLL's. If a client wants to use NewsReaderOnSteroids instead of NewsReader, I would just develop the new component and deploy it in place of the existing DLL? I suppose I could use my config file to specify while DLL should get loaded for the component.

I would think that this approach would lean heavily on implementing effective interfaces?
Very fitting: http://xkcd.com/386/
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform