views:

51

answers:

4

What are the factors that I need to consider when I include a third party jar in my application? I have listed a few below. Is there anything else that I am missing? And how does the Memory footprint work? What is the jar size has got to do with the Memory footprint?

  1. Memory Footprint
  2. Stability
  3. API usage
  4. Community Support
  5. Cost
+3  A: 

A single class can take up a lot of memory. A large jar can take up almost none. There might not be a correlation. All the code from a jar might not be loaded.
I would only use foreign jars if they provide a service that I do not want to implement myself. Also foreign jars might be tried in production.

It really depends on what you are trying to do and which jars you want to use. There is no cut and dry answer.

Current development is so complex that you cannot implement everything yourself within a reasonable time period. Find best of breed jars and glue them together within your app if it is a large app. If what you want to is simple then do it yourself.

Romain Hippeau
+5  A: 

Licensing issue, whether you are using it in 1) your open source project, 2) internal usage (ex: within your company, etc), or a product that you will commercialize later.

limc
+2  A: 

What about ...

  • documentation (tutorial, manual, java doc, source code)?
  • bug-free (or at least tested)?
meriton
+2  A: 
  • Does it really provide the features you want? How easy is it to customize it to the way you want?
  • How mature is the third-party code
  • How easy is it to get the updates/patches
logoin