Jump to content

what are computer internal and external libraries


cuchullin

Recommended Posts

I have never come across a formal definition for an internal or external library. Usually an external library refers to code that is sourced out and that was not explicitly written for the application or framework at hand. I have never read any article or other that used the term internal when describing a library expressed or even implied. Generally speaking an internal library is simply an application specific library or library.

 

I guess if you had to formalize an answer to this, you could break the question down into its constituent parts and describe methods of creating or achieving internal and external libraries, and also go over the roles that each play. The problem with that though is, different operating systems use different methods to achieve the same goals, and also any descriptions made will be generalizations of desired functionality.

 

List of Constituent Components:

 

- Code

 

- Linkage

 

- Modularization

 

- Ownership/Licensing

 

 

I have no formal education in this matter, I simply do a lot of programming and work in the field so maybe there is something I have overlooked.

Edited by Xittenn
Link to comment
Share on other sites

I have developed software professionally for over 11 years. I program in C, C++, C#, and some Visual Basic. I have developed software for Windows and Unix / Linux. I believe your question is referring to static linked libaries vs. dynamic linked libraries. Static linked libraries are typically linked into the image of the executable and thus are internal to the application where dynamic linked libraries reside outside of the executable and can be loaded externally by other processes. There are pros and cons to using a static or dynamic linked library. I suggest you review the above links to get a better understanding of each type of library.

 

Otherwise, as Xittenn has stated, an internal libary would be one that is proprietary to the application and developed by the individual or company that designed the software. This is usually decided upon because the functionality does not exist and the individual or company has a need to create such library and intends to reuse the code in other applications they develop. An external library would be one that provides the functionality needed and prevents the individual or company from reinventing the wheel. External libraries in this case are referred to as third party libraries and components.

 

The decision to use external libraries, APIs or SDKs, made by third parties can reduce development time and save companies a tremendous amount of money by not taking on the burden of design, implementation, and quality assurance that goes into developing a piece of software. However, great care must be asserted when dealing with third party libraries. A developer must be aware of the third party's responsibility of maintaining their code, fixing software issues, and costs of licensing. A company may choose to create their own libraries to avoid licensing fees or because they want to ensure the quality of their software.

Edited by Daedalus
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.