Your SlideShare is downloading. ×
  • Like
  • Save
Plug in framework made easy
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Plug in framework made easy

  • 621 views
Published

This presentation shows the basic architecture of a plug-in framework using reflection in Microsoft .NET Framework. .NET reflection allows one to find out information about the types in programs or …

This presentation shows the basic architecture of a plug-in framework using reflection in Microsoft .NET Framework. .NET reflection allows one to find out information about the types in programs or other assemblies in .NET, 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. We will show you how you can leverage on the features of reflection to simplify the process of developing a working plug-in framework for your application,

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
621
On SlideShare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
2
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Retrieving plug-inmetadata without the need of instantiating the plug-in.Version control to load the latest plug-in when conflict.Make PluginApi as an interface that is implemented by MainForm if most of the application logic and functionalities are located in MainForm.

Transcript

  • 1.
  • 2. Plug-in Framework Made Easy
    Thomas Cheah
    Independent Software Consultant
    www.procto.biz
  • 3. Who Am I?
    Started programming in 1993.
    3 years distinction in eGenting Programming Competition.
    Specialized in 2D & 3D visualization and computational geometry.
    Previously co-founder and technical director of a computer game company.
    Currently developing software for building visualization, documentation, simulation.
  • 4. What is Plug-in?
    Internet Explorer Add-Ons for third party extensions, search providers, accelerators, etc.
  • 5. What is Plug-in?
    Microsoft Office Add-Ins provide helpful features and simplify existing Office capabilities.
  • 6. What is Plug-in?
    Adobe Photoshop filter plug-ins provide extensible image processing capabilities and effects.
  • 7. What is Plug-in?
    Skype Extras allows you to install additional applications / games that can be used with your Skype contacts list.
  • 8. What is Plug-in?
    WordPressPlugins are tools to extend its functionality for easy modification, customization, and enhancement to your WordPress blog.
  • 9. What is Plug-in?
    Comprehensive IP Telephony Services that I developed in 2003. Plug-ins are used to provide a wide range of telephony services like those offered in traditional phone over VoIP network.
  • 10. Why Plug-in?
    Faster time-to-market for your software.
    Reduced software size.
    More extensive and practical software features and capabilities.
    Less hassle in software upgrade and support.
    Cheaper and more effective marketing.
    Greater loyalty from your customers.
  • 11. How to Develop a Plug-in Framework?
    MainForm
    IPlugin
    PluginType1
    PluginManager
    PluginType2
    PluginType3
  • 12. What Does PluginManager Do?
    Loads and initializes plug-ins.
    Retrieves plug-ins.
    Executes plug-ins.
    Disposes and releases all resources of plug-ins.
  • 13. Loading and Initializing Plug-ins
    Start
    Initialize plug-in
    Read all plug-in files
    Add plug-in to cache
    Retrieve plug-in in the file
    Has more plug-in
    Is valid plug-in?
    Yes
    Yes
    No
    No
    Retrieve next plug-in
    End
  • 14. How Does .NET Reflection Help?
    .NET Reflection provides run-time loading and inspection of type information.
  • 15. DEMO
    XShow1 show… X-dimension of inspirations
  • 16. A More Robust Plug-in Framework
    MainForm
    PluginApi
    PluginManager
    IPlugin
  • 17. Other Design Considerations
    Using attributes for plug-in metadata.
    Version control in PluginManager.
    Different plug-in interfaces for different functional areas.
    Make PluginApi as an interface that is implemented by MainForm.
  • 18. Q&A
    Questions & Answers
  • 19. THANKS
    Thank You!Feel free to contact me at thomascheah@procto.biz