A wrapper is often explained as modification of an interface to another function with very little added functionality, if any. I've seen scarce reference to a "thick wrapper" that does add nontrivial functionality. Is there a broadly recognized term for a thick wrapper?

  • I think this depends a lot on what the "wrapper" does, I might say it "uses XYZ as an underlying API" or I might say it encapsulates XYZ. Commented Feb 21 at 16:16
  • Understood, but is there a noun meaning a wrapper that adds functionality on top of the function that is wrapped? Commented Feb 21 at 16:32
  • 3
    "A wrapper is often explained as modification of an interface to another function with very little added functionality" - in OO terms, this is what's called an Adapter; there are other kinds of wrappers, though. I don't think there's a particular term that would encompass "non-Adapters". Adapters could also restrict available functionality (maybe you don't need all that a generic component provides). Another common type of wrapper is a Decorator - these preserve the interface so that you can transparently add functionality (that is, without affecting client code), and stack them together. Commented Feb 21 at 18:20
  • 1
    Without any further qualification on it, it sounds like you're simply describing a Layer.
    – J_H
    Commented Feb 21 at 18:45
  • 1
    Wrappers are by definition thin. If it contains non-trivial functionality then it isn't a wrapper, it is an object in its own right (with a dependency), and should be named after what it does.
    – JacquesB
    Commented Feb 24 at 12:36

1 Answer 1


The term "wrapper" isn't perfect. If you need a better word that fits with object-oriented terms, look at different design patterns to find what fits your needs. Filip Milovanović's comment is prolly best here...

  • Thanks for accepting but I think Filip Milovanović' deserves the credit :) Commented Feb 21 at 18:45
  • 1
    Stack Exchange won't bookkeep this credit, but you did acknowledge him. And you brought in the idea of looking at different design patterns. Unfortunately, the audience for that kind of language is developers, whereas the language for IP protection needs to be for a more general audience (at least in my admittedly inexperienced opinion). Commented Feb 21 at 18:57
  • My challenge is that I am not a professional SW developer, so I would probably need to go to grad school to get a feel for the different design patterns. And in the end, the target audience for IP protection documents aren't SW developers either. I'll have to find a general-audience wording to describe the "layer" (a term that J_H kindly offered). Commented Feb 22 at 15:18

Not the answer you're looking for? Browse other questions tagged or ask your own question.