title: Plugin API vs Class Library API
body: <p>There is a lot of stuff here on what an API is, but I can't find what I need on the distinction between plugin APIs and class library APIs. I don't get it anyway.</p>
  <p>In the book, <em>Documenting APIs</em>, I read: <em>The key difference between a plugin API and a class library API lies in the which party supplies the implementation for the exposed API.</em></p>
  <blockquote>
  <p><strong>Plugin API</strong>: The publisher creates an application and exposes a plugin API; the 3rd &gt; party developer implements the API. The 3rd party developer plugin extends the functionality of the publisher's application.</p>
  <p><strong>Class library API</strong>: The publisher creates the API and implements it. The end-user uses the class library via its API to write an application. With a class library, the publisher implements a library of functionality that exposes an API.</p>
  </blockquote>
  <p>I think I understand the plugin. I'm not clear on the class library API. Is it like a printer manufacturer creating a driver based on an O/S class library so that their printer works with that O/S?</p>
  <p>If so, could you explain more about the differences in the APIs themselves? Are they both still a set of exposed methods? And how does the publisher implement its own API?</p>
  <p><strong>References</strong></p>
  <p>Documenting APIs: <a href="https://rads.stackoverflow.com/amzn/click/com/0963002104" rel="noreferrer" rel="nofollow noreferrer">http://www.amazon.com/documenting-APIs-writing-developer-documentation/dp/0963002104</a></p>
  <p><a href="https://stackoverflow.com/questions/1322809/what-is-the-difference-between-a-java-api-and-a-library">What is the difference between a Java API and a library?</a></p>
  <p><a href="https://stackoverflow.com/questions/8772746/difference-between-framework-vs-library-vs-ide-vs-api-vs-sdk-vs-toolkits">Difference between framework vs Library vs IDE vs API vs SDK vs Toolkits?</a></p>
  <p><a href="https://stackoverflow.com/questions/5453011/api-vs-toolkit-vs-framework-vs-libarary">API vs Toolkit vs Framework vs Library</a></p>