Computer Science
라이브러리(Library)
엄청큰노란닭
2023. 2. 16. 15:06
라이브러리(Library)
주로 소프트웨어를 개발할 때 컴퓨터 프로그램이 사용하는 비휘발성 자원의 모임
구성 데이터, 문서, 도움말 자료, 메세지, 틀, 미리 작성된 코드, 서브루틴(함수), 클래스, 값, 자료형 사양을 포함 할 수 있다.
OS/360 및 이후 세대에서는 파티션 데이터 세트로 부름
구체적으로 소프트웨어 개발 시 사용되는 프로그램의 구성요소로, 공통으로 사용될 수 있는 특정한 기능을 모듈화한 것
대상 환경(플랫폼)에서 바로 실행될 수 있는 형태로 제공되며, 실제 실행되어 기능을 수행하는 단편화된 프로그램이라는 점이 API와 다름
프로그래밍 언어에서 라이브러리를 사용할 수 있도록 소스코드 수준에서 인터페이스를 노출시킨 것이 바로 Application Programming Interface(API)이다. 따라서 라이브러리는 동작하는 완전한 프로그램이 아닌, 특정한 부분 기능만을 수행하도록 제작된, 컴파일되어 기계어의 형태로 존재하는 프로그램이다.
이 자체로는 사용자가 직접 일반적인 조작으로 실행할 수 없으며, 해당 라이브러리의 기능을 직접 호출하는 프로그램을 실행하거나, 사용자가 해당 라이브러리의 기능을 실행하는 API를 사용하는 프로그램을 직접 개발하면 실행할 수 있다.
표준 라이브러리
- 특정한 언어의 개발 환경에 기본적으로 포함된 것들을 대부분 표준 라이브러리라고 불린다.
- 기본적인 기능 수행과 더불어 디버깅, 성능측정 등을 위한 별도의 API가 존재한다
런타임 라이브러리
- 프로그램이 실제 환경에서 실행되기 위해 필요한 모듈들이다.
- 대부분의 위의 표준 라이브러리에서 기능 수행에 필요한 것들만 제공되거나, 스크립트 실행기 등을 말한다.
기타
- 많은 회사나 개인, 단체들이 돈을 받고 팔거나, 또는 자신이 사용하기 위해, 또는 순수한 잉여력으로 많은 라이브러리들을 개발하고 배포하고 있으므로 현명한 개발자라면 이것들을 잘 활용하여 개발에 필요한 시간과 노력을 절약하도록 하자
- Windows에서 자주 볼 수 있는 런타임 라이브러리의 확장자는 보통 .dll 이다. Java의 경우 .Jar 형태로 배포되는 경우도 있다.