Nurturing innovative business models to build tomorrow's enterprises
Follow us on

Plug-in Framework Made Easy

By Thomas Cheah • October 9, 2010 • Filed in: Software Technology

Due to the factor such as time, manpower and to meet the evolving requirement in software development, it is often not possible to include all the features users might need during the initial release of software. As an extensive software platform, it is imperative to provide a robust infrastructure where the services are always up-to-date and up-to-demand so that user requirements will be met as time goes. Software plug-in is a good mechanism to provide frequent update and encourage user contribution to improve the software. In order to ease the end-users of enhancing the software, a plug-in must be able to implement easily without extensive coding. The small plug-in file can then be downloaded by the users and ‘plug’ into the program to provide extended functionality to the software.

Reflection is a generic term that covers various .NET base classes that allow one to find out information about the types in programs or other assemblies, and also to read other metadata. Other then obtaining information, the power behind reflection mechanism is that it allows dynamic instantiation of the type discovered into a concrete object. This creates an interesting possibility that a program can dynamically create classes which is not known yet during the compilation of that program, which may be located in any external file. This is the heart of the plug-in mechanism that I will be presenting here. I will show you the basic architecture of our plug-in framework, and then followed by a quick demonstration to see it in action.

The link for downloading source code of the demo application is provided at the end of the presentation. Thie plug-in framework is a concept that was created in 2003 when I was developing an extensible IP telephony system. You can read more about the project here to see how this concept can be applied in real-world application.

Click here to download the source code for XShow.

About The Author

Thomas CheahThomas Cheah is the Principal CTO-for-hire of Procto. He helps business owners and executives to innovate their business model thru strategic technology management so that they get 80% of the benefit for 20% of the cost. If you have innovative ideas but do not the technical expertise, he is your partner to validate and build your digital business models. Thomas believes that constant business innovation is increasingly important in today's business environment so that our business is prepare for rapid change of customer behavior, rising cost, and globalization in order to stay ahead (or away) of competition.

Learn more about Thomas.

Comments

i just wanna thank you for sharing your this info on your site

There is obviously a lot to know about this. I think you made some good points in Features also.
Keep working ,great job!

Hi there! I simply want to give a huge thumbs up for the good data you have right here on this post. I might be coming back to your weblog for extra soon.

I’m impressed, I must say. Really not often do I encounter a weblog that’s both educative and entertaining, and let me let you know, you’ve got hit the nail on the head. Your concept is outstanding; the difficulty is something that not enough people are talking intelligently about. I’m very comfortable that I stumbled across this in my search for one thing relating to this.

Youre so cool! I dont suppose Ive read anything like this before. So nice to search out any individual with some authentic thoughts on this subject. realy thank you for beginning this up. this web site is one thing that is wanted on the web, someone with a bit of originality. useful job for bringing something new to the internet!

Oh my goodness! an amazing article dude. Thank you However I am experiencing concern with ur rss . Don’t know why Unable to subscribe to it. Is there anyone getting equivalent rss drawback? Anyone who knows kindly respond. Thnkx

great website you have here btw

My brother suggested I might similar to this website. He was completely proper. This kind of post in fact created my own day. You can not envision just how much time I needed spent with this information! Thanks!

Hello! Very good job(this site)! Thank you man.

Hi there, I honestly like reading your posts, offer you!

Thanks for tris interesting information! I found it very useful =)

Thanks, always enjoy reading your posts.

Wow, this article was really educational!! =)

Can I just say what a relief to find someone who actually knows what theyre talking about on the internet. You definitely know how to bring an issue to light and make it important. More people need to read this and understand this side of the story. I cant believe youre not more popular because you definitely have the gift.

I just want to mention I am just newbie to weblog and absolutely liked your web page. More than likely I’m likely to bookmark your blog . You absolutely come with remarkable well written articles. Many thanks for sharing your blog site.

I’m impressed, I must say. Really rarely do I encounter a weblog that’s both educative and entertaining, and let me let you know, you could have hit the nail on the head. Your thought is outstanding; the problem is one thing that not sufficient persons are talking intelligently about. I’m very glad that I stumbled across this in my seek for one thing regarding this.

Do you care if I quote your article on my Wiki Site? I would think this article suits my topic perfectly. Uhmmm, thanks for posting this.

Outstanding article not to mention very easy towards realize explanation. How do I just do receiving permission towards submit element of this content with my future news letter? Giving suitable consumer credit rating back to you typically the author not to mention link in the web site would not be considered trouble.

Amazing function! This really is the type of information that should really be shared around the net. Shame on the search engines for now not positioning this post upper! Come on more than and visit my internet site . Thank you =)

I conceive you have noted some very interesting points , appreciate it for the post.

I like this web blog very much, Its a rattling nice office to read and get information.

I believe that is among the such a lot important information for me. And i am satisfied studying your article. But should observation on few normal things, The site style is perfect, the articles is in reality excellent :D. Excellent job, cheers.

My partner and i quite like everything you submit here. Very unusual and also brilliant. 1 problem though. I’m running Opera together with Debian and also pieces of one’s up-to-date web design parts certainly are a tiny wonky. My partner and i notice it’s not just a typical create. Yet it’s an issue to be able to keep in mind. My partner and i hope which it will aid and also continue to keep up the major top quality creating.

Good! All would be well written :)

Outstanding post, you have pointed out some good points , I likewise believe this s a very good website.

Regards for all your efforts that you have put in this. very interesting information.

Your blog is rather valuable. Thank you a great deal for delivering lots of helpful subject matter. I have bookmark your blog site online site and can be while not doubt coming back. As soon as just as before, I appreciate all your work and in addition comeing the following to communicate with me.

Nice site! How did you get this design?

I just want to say I am just newbie to blogging and site-building and seriously savored you’re blog site. More than likely I’m planning to bookmark your blog post . You actually come with great stories. Bless you for sharing with us your website page.

This is the suitable weblog for anyone who desires to find out about this topic. You realize so much its nearly onerous to argue with you (not that I actually would need…HaHa). You positively put a brand new spin on a topic thats been written about for years. Nice stuff, just nice!

I am typically to running a blog and i actually respect your content. The article has actually peaks my interest. I am going to bookmark your site and keep checking for brand spanking new information.

Do you mind if I quote a couple of your posts as long as I provide credit and sources back to your site? My website is in the exact same area of interest as yours and my visitors would truly benefit from some of the information you present here. Please let me know if this alright with you. Cheers!

Osods5 Really informative blog post.Really looking forward to read more. Much obliged.

Just wish to say your article is as astonishing. The clarity for your publish is simply nice and i could assume you’re an expert on this subject. Well along with your permission let me to grasp your RSS feed to keep up to date with forthcoming post. Thank you 1,000,000 and please carry on the rewarding work.

I have really learned result-oriented things out of your blog post. Also a thing to I have noticed is that in many instances, FSBO sellers will certainly reject you. Remember, they’d prefer never to use your companies. But if you actually maintain a comfortable, professional relationship, offering aid and staying in contact for about four to five weeks, you will usually manage to win a discussion. From there, a house listing follows. Cheers

F*ckin’ amazing issues here. I’m very satisfied to peer your article. Thank you so much and i am looking ahead to touch you. Will you please drop me a mail?

I used to be more than happy to search out this web-site.I wished to thanks in your time for this wonderful read!! I positively having fun with every little bit of it and I have you bookmarked to check out new stuff you blog post.

A lot of thanks for each of your efforts on this web site. My daughter really loves setting aside time for investigation and it’s really obvious why. A lot of people know all of the powerful ways you convey sensible tips by means of this web site and therefore inspire response from the others on this situation so our own princess is undoubtedly being taught so much. Take pleasure in the rest of the new year. Your conducting a terrific job.

Obviously I like your web-site, but you need to check the spelling on several of your posts. Many of them are rife with spelling issues and I find it very troublesome to tell you. Nevertheless I will certainly come back again!

We are a group of volunteers and starting a brand new scheme in our community. Your website provided us with valuable info to work on. You have done an impressive process and our entire community might be grateful to you.

Thanks for the unique tips contributed on this blog site. I have observed that many insurers offer shoppers generous discounts if they favor to insure several cars with them. A significant variety of households own several automobiles these days, particularly those with mature teenage children still living at home, and the savings upon policies may soon mount up. So it is a good idea to look for a good deal.

I likewise conceive so , perfectly written post! .

Wow, wonderful blog format! How lengthy have you been blogging for? you make running a blog glance easy. The full look of your website is excellent, let alone the content material!

You should consider taking part in a competition for one of the best weblogs on the web. I will recommend this site!

Hiya! I just would like to give an enormous thumbs up for the great data you’ve gotten right here on this post. I will likely be coming back to your blog for extra soon.

I admire the helpful facts you offer inside your articles. I will bookmark your weblog and also have my children verify up here often. I’m really certain they’ll learn a great deal of new things appropriate here than anybody else!

Can you please send an e-mail to me the code for this script or please let know me in detail regarding this script?

My brother recommended I might like this blog. He was entirely right. This post actually made my day. You cann’t imagine just how much time I had spent for this info! Thanks!

Some truly nice stuff on this web site , I enjoy it.

I’ve used Facebook to promote my Not-for-profit organization and i was pretty successful. I hope Google+ will help me reach the audiences that are not on Facebook. After all, there are many facebook haters. Still, everybody seems to be on google!

I am happy to discover this net web-site. I desired to say thank you on your time in providing this excellent go through! I definitely enjoyed it and that i have you book-marked to adhere to new stuff you publish.

My brother recommended I might like this website. He was totally right. This post truly made my day. You cann’t imagine just how much time I had spent for this information! Thanks!

You have remarked very interesting points ! ps decent internet site .

What a outstanding viewpoint, nonetheless is just not produce every sence by any indicates discussing this mather. Just about any technique thanks and also i had try and discuss your post directly into delicius but it surely appears to be an problem within your blogging is it possible you should recheck this. thank you just as before.

Hey! This is kind of off topic but I need some guidance from an established blog. Is it very hard to set up your own blog? I’m not very techincal but I can figure things out pretty fast. I’m thinking about setting up my own but I’m not sure where to start. Do you have any ideas or suggestions? Cheers

Hello! This is my first visit to your blog! We are a collection of volunteers and starting a new initiative in a community in the same niche. Your blog provided us useful information to work on. You have done a marvellous job!

some genuinely wonderful work on behalf of the owner of this web site , utterly outstanding content .

I just want to mention I am just all new to weblog and actually liked your website. Likely I’m want to bookmark your blog post . You actually have exceptional well written articles. Thanks a lot for sharing with us your web site.

I just want to say I’m beginner to weblog and certainly enjoyed your web blog. Likely I’m likely to bookmark your website . You amazingly come with amazing article content. Cheers for sharing your webpage.

I simply want to tell you that I am just beginner to blogging and absolutely liked this web blog. Most likely I’m planning to bookmark your blog . You actually come with impressive stories. Cheers for sharing with us your web page.

I simply want to say I am just new to weblog and absolutely loved you’re blog. Probably I’m likely to bookmark your blog post . You definitely come with incredible articles. With thanks for revealing your blog.

I take pleasure in the useful info you deliver inside your articles.

Great website! I truly appreciate just how it happens to be nice to view and the information is clearly authored. Now i am wanting to know precisely how I could possibly be warned when a new posting was made?

I simply want to say I’m new to blogs and truly liked this web blog. Very likely I’m going to bookmark your blog . You actually have fabulous writings. Thanks a lot for revealing your web page.

Unquestionably believe that which you said. Your favorite justification appeared to be on the internet the simplest thing to be aware of. I say to you, I definitely get annoyed while people think about worries that they plainly do not know about. You managed to hit the nail upon the top and defined out the whole thing without having side effect , people can take a signal. Will probably be back to get more. Thanks

Definitely, what a splendid website and revealing posts, I surely will bookmark your blog.Have an awsome day!

I value the blog post.Much thanks again. Will read on…

You are a very capable person!

hello there and thank you for your information – I’ve certainly picked up something new from right here. I did however expertise a few technical issues using this website, as I experienced to reload the website lots of times previous to I could get it to load correctly. I had been wondering if your hosting is OK? Not that I’m complaining, but sluggish loading instances times will sometimes affect your placement in google and can damage your quality score if advertising and marketing with Adwords. Anyway I am adding this RSS to my email and can look out for a lot more of your respective fascinating content. Ensure that you update this again very soon..

Hi there, You’ve done an incredible job. I will certainly digg it and in my opinion recommend to my friends. I’m confident they will be benefited from this website.

I just want to mention I’m new to blogging and site-building and honestly enjoyed this web page. Very likely I’m going to bookmark your website . You surely have good posts. Appreciate it for sharing with us your website.

Hi, I’m pretty sure I read those lines last week but the website had a different design.Did change your layout? or perhaps your content has been duplicated!

I used to be recommended this website via my cousin. I am not positive whether this put up is written by way of him as no one else understand such exact about my problem. You are amazing! Thanks!

I simply want to say I am beginner to blogs and truly savored your website. Most likely I’m planning to bookmark your site . You absolutely come with excellent well written articles. Kudos for sharing with us your web page.

Hi there I am so excited I found your site, I really found you by accident, while I was browsing on Digg for something else, Nonetheless I am here now and would just like to say thank you for a remarkable post and a all round enjoyable blog (I also love the theme/design), I don’t have time to look over it all at the minute but I have bookmarked it and also added in your RSS feeds, so when I have time I will be back to read more, Please do keep up the great job.

I just want to say I am all new to blogs and absolutely liked this web site. Probably I’m going to bookmark your blog post . You definitely have remarkable writings. With thanks for revealing your web site.

Too bad none of these bimbos can act

I just want to mention I am just new to blogs and definitely enjoyed you’re web-site. More than likely I’m likely to bookmark your site . You surely come with perfect posts. Thanks a lot for revealing your website.

I discovered your blog using google. I must I am floored by your blog. Keep up the good work.

I discovered your blog using google. I must I am floored by your blog. Keep up the good work.

Finding a soul mate, making a lifelong friendship and developing a relationship for marriage takes many different routes

I simply want to say I am newbie to blogs and actually enjoyed your web blog. Probably I’m likely to bookmark your blog post . You absolutely have excellent stories. Appreciate it for sharing your website.

Hello there! I simply wish to give you a big thumbs up for the great information you’ve got right here on this post. I am returning to your web site for more soon.

Gorgeous! Thanks for that enjoyment Xmas ornaments!

I just want to say I am new to blogging and site-building and actually savored your website. Very likely I’m going to bookmark your blog post . You surely come with excellent articles and reviews. Bless you for sharing with us your website page.

She is these a fairly tiny lady!

Wonderful work! That is the kind of information that are meant to
be shared around the web. Disgrace on the search engines for
now not positioning this put up higher! Come on over and seek advice from my site .
Thank you =)

Every weekend i used to go to see this site, for the reason that
i want enjoyment, for the reason that this this site conations actually fastidious funny material too.

If you would like to obtain a good deal from this piece of writing then you have to apply these
techniques to your won weblog.

Greetings! Very helpful advice in this particular article!
It’s the little changes which will make the greatest changes. Thanks for sharing!

Hurrah! At last I got a blog from where I know how to really
take valuable information regarding my study and knowledge.

Your place is valueble for me.Thanks!¡­

This awesome blog is obviously interesting and informative. I have discovered a lot of handy tips out of it. I¡¯d love to visit it every once in a while. Cheers!

Very good site thank you so much for your time in writing the posts for all of us to learn about.

I simply want to say I’m very new to blogging and really enjoyed you’re web blog. Likely I’m likely to bookmark your site . You actually have remarkable well written articles. With thanks for sharing with us your website.

Hey there just wanted to give you a brief heads up and let you know a few of the pictures aren’t loading correctly. I’m not sure why but I think its a linking issue. I’ve tried it in two different browsers and both show the same outcome.

I can’t get over how sensational your writing voice is, you really need to blog a lot more.

You should consider writing for profit using the internet, you have a great writing voice.

You are such a great blogger, your sound is great.

I just love reading your text, you have the most excellent style.

Just because they call it advanced doesn’t mean it is.

I look over your site just so I can read your unparalleled writing form.

I just want to mention I’m new to blogs and really liked you’re web blog. Very likely I’m likely to bookmark your blog post . You certainly come with outstanding articles and reviews. Thank you for sharing with us your web page.

Wow!!! Really like the depth and reception photographs!! Oh, and every little thing in among! Lovely.

Your writing style is undeniably brilliant. Like Jd Sallinger.

Terrific article! This is the kind of info that are supposed to be
shared across the web. Disgrace on the seek engines for no longer positioning this publish higher!
Come on over and consult with my website . Thanks =)

Hi, its fastidious post on the topic of media print, we all know media is a enormous source of facts.

I concur aided by the Maverick conclusion, but Maverick models 1974 and newer might have the lower, chunker, 5 mph bumpers.

I just want to mention I am very new to blogs and really savored you’re blog site. Likely I’m planning to bookmark your site . You definitely come with terrific writings. With thanks for sharing your website.

Many thanks so much! Which is really wonderful to hear!

Appreciate the recommendation. Let me try it out.

Someone essentially help to make critically articles I would state. That is the very first time I frequented your website page and up to now? I amazed with the analysis you made to make this particular put up amazing. Excellent task!

I just couldn’t leave your web site prior to suggesting that I extremely enjoyed the standard info an individual supply in your guests? Is gonna be again often in order to check up on new posts

I simply want to mention I’m all new to blogging and actually liked this web blog. Very likely I’m planning to bookmark your site . You definitely have terrific writings. Thanks a bunch for sharing with us your website page.

I am impressed with this web site , really I am a big fan .

I just want to say I am just very new to weblog and honestly enjoyed this web blog. More than likely I’m going to bookmark your blog . You definitely come with beneficial article content. Bless you for sharing your web site.

 

Leave a Comment

« | Home | »