Thread: can anyone help me in finding a tutorial on this?

  1. #1
    بابلی ریکا Masterx's Avatar
    Join Date
    Nov 2007
    Location
    Somewhere nearby,Who Cares?
    Posts
    497

    can anyone help me in finding a tutorial on this?

    hello all, its been awhile since i started to think about plugins and how to make a plugable ! ( if thats the correct term! )program, or how to make an application take advantage of plugin(s) and how to make that plugin!
    i have no idea what to search! i gave it couple of tries! but no luck.
    it would appreciate any kind of help on this
    any kind of links, tutorials or samples is appreciated.
    tanx in advance
    Highlight Your Codes
    The Boost C++ Libraries (online Reference)

    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.."
    Bill Bryson


  2. #2
    3735928559
    Join Date
    Mar 2008
    Location
    RTP
    Posts
    838
    they're basically just different implementations of polymorphic interfaces that are compiled into DLLs/SOs and loaded at runtime.

  3. #3
    بابلی ریکا Masterx's Avatar
    Join Date
    Nov 2007
    Location
    Somewhere nearby,Who Cares?
    Posts
    497
    so basically i should cover polymorphism ! first to be able to go through these stuff?
    by the way , where can i find more information on these ? meaning how to work or implement a sample so called pluggable app!
    tanx
    Highlight Your Codes
    The Boost C++ Libraries (online Reference)

    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.."
    Bill Bryson


  4. #4
    3735928559
    Join Date
    Mar 2008
    Location
    RTP
    Posts
    838
    yes. learn polymorphism. by the time you've mastered that, you'll probably be able to answer this question yourself.

  5. #5
    بابلی ریکا Masterx's Avatar
    Join Date
    Nov 2007
    Location
    Somewhere nearby,Who Cares?
    Posts
    497
    Quote Originally Posted by m37h0d View Post
    yes. learn polymorphism. by the time you've mastered that, you'll probably be able to answer this question yourself.
    thanks alot dear m37hod.
    Highlight Your Codes
    The Boost C++ Libraries (online Reference)

    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.."
    Bill Bryson


  6. #6
    3735928559
    Join Date
    Mar 2008
    Location
    RTP
    Posts
    838
    np. stay safe over there

  7. #7
    pwning noobs Zlatko's Avatar
    Join Date
    Jun 2009
    Location
    The Great White North
    Posts
    132
    What application do you want to plug into? As stated above, a plugin is a dll or shared object (lets call them both libraries) that is read in by an application so that you can extend the the application with your own function. Do you want to do that or do you want to dynamically load in a library into your own application?

    If you want to extend a commercial application, you will have to write your library to conform to the application's requirements. Say you want to extend Adobe Acrobat. You'd go to the Adobe web site, download the documentation for the plugin interface (API), download samples, read and run the samples to see how they work. Read the documentation, but if the documentation runs thousands of pages, then go back and forth between samples and docs. Visit the application's forums.

    If you want to dynamically load a library into your own application, you need to open the library and look for functions you want to execute. How to do that depends on which operating system you're developing for. Let us know the details.

    Good luck.

  8. #8
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    More generically, a plugin is a piece of loadable functionality. Dynamic libraries are the best way to pack loadable binary code, but not the only one; nor is binary code the only way to write plug-ins. Firefox's add-ons are packages composed of multiple parts, and only very few add-ons contain binary code. Most consist of XUL overlays (user interface description files) and JavaScript code.
    Embedding a scripting engine is generally a very popular way of making applications pluggable, for many reasons. The simple development cycle in scripted languages makes it easy for end users, who are usually not trained programmers, to write their own plugins. Also, the sandbox environment in which these plugins run means that it's far harder for them to crash your application.
    Good languages for embedding are Python, JavaScript and Lua.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  9. #9
    بابلی ریکا Masterx's Avatar
    Join Date
    Nov 2007
    Location
    Somewhere nearby,Who Cares?
    Posts
    497
    Quote Originally Posted by Zlatko View Post
    What application do you want to plug into? As stated above, a plugin is a dll or shared object (lets call them both libraries) that is read in by an application so that you can extend the the application with your own function. Do you want to do that or do you want to dynamically load in a library into your own application?

    If you want to extend a commercial application, you will have to write your library to conform to the application's requirements. Say you want to extend Adobe Acrobat. You'd go to the Adobe web site, download the documentation for the plugin interface (API), download samples, read and run the samples to see how they work. Read the documentation, but if the documentation runs thousands of pages, then go back and forth between samples and docs. Visit the application's forums.

    If you want to dynamically load a library into your own application, you need to open the library and look for functions you want to execute. How to do that depends on which operating system you're developing for. Let us know the details.

    Good luck.
    thank you , and about your first question, i just want to extend my apps functionality for now, just wana keep it simple and you know have a taste of it
    Highlight Your Codes
    The Boost C++ Libraries (online Reference)

    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.."
    Bill Bryson


  10. #10
    بابلی ریکا Masterx's Avatar
    Join Date
    Nov 2007
    Location
    Somewhere nearby,Who Cares?
    Posts
    497
    Quote Originally Posted by CornedBee View Post
    More generically, a plugin is a piece of loadable functionality. Dynamic libraries are the best way to pack loadable binary code, but not the only one; nor is binary code the only way to write plug-ins. Firefox's add-ons are packages composed of multiple parts, and only very few add-ons contain binary code. Most consist of XUL overlays (user interface description files) and JavaScript code.
    Embedding a scripting engine is generally a very popular way of making applications pluggable, for many reasons. The simple development cycle in scripted languages makes it easy for end users, who are usually not trained programmers, to write their own plugins. Also, the sandbox environment in which these plugins run means that it's far harder for them to crash your application.
    Good languages for embedding are Python, JavaScript and Lua.
    tanx
    Highlight Your Codes
    The Boost C++ Libraries (online Reference)

    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.."
    Bill Bryson


Popular pages Recent additions subscribe to a feed

Similar Threads

  1. My new website
    By joeprogrammer in forum A Brief History of Cprogramming.com
    Replies: 19
    Last Post: 03-17-2006, 07:38 PM
  2. Cprog tutorial: Design Patterns
    By maes in forum C++ Programming
    Replies: 7
    Last Post: 10-11-2004, 01:41 AM
  3. Tutorial review
    By Prelude in forum A Brief History of Cprogramming.com
    Replies: 11
    Last Post: 03-22-2004, 09:40 PM
  4. Problem with tutorial (Vector class)
    By OdyTHeBear in forum C++ Programming
    Replies: 4
    Last Post: 12-18-2002, 02:49 PM
  5. My DirectInput tutorial....
    By jdinger in forum A Brief History of Cprogramming.com
    Replies: 1
    Last Post: 06-18-2002, 11:32 PM