프레임워크

 

어떠한 목적을 달성하기 위해 복잡하게 얽혀있는 문제를 해결하기 위한 구조
SW개발에 있어 하나의 뼈대 역할을 함

클래스와 라이브러리가 합쳐진 형태

프레임워크는 재사용 가능한 수많은 클래스들과 라이브러리들을 융합한 채로 처음부터 제공해 줌 여러 개의 표준을 만들지 않아도 됨 > 개발자의 피곤함을 덜어줌

물론 틀 위에 기능들은 구현해야함


라이브러리


소프트웨어 개발 시 사용되는 프로그램의 구성요소 (도구)
공통으로 사용될 수 있는 특정한 기능들을 모듈화한 것
대상 환경(플랫폼)에서 바로 실행될 수 있는 형태로 제공됨 (≠완전한 프로그램)


API vs 라이브러리

• 라이브러리 : 실제 실행되어 기능을 수행하는 단편화된 프로그램
동작하는 완전한 프로그램이 아님
특정한 부분 기능만을 수행하도록 제작된 (컴파일되어 기계어/바이트코드의 형태로 존재하는)프로그램

• API : 프로그래밍 언어에서 라이브러리를 사용할 수 있도록 소스코드 수준에서 인터페이스를 노출시킨 것

따라서 라이브러리는 이 자체로는 실행할 수 없으며, 해당 라이브러리의 기능을 직접 호출하는 프로그램을 실행하거나, 사용자가 해당 라이브러리의 기능을 실행하는 API를 사용하는 프로그램을 직접 개발하면 실행할 수 있다.


라이브러리 종류

- 표준 라이브러리: 특정 언어의 개발 환경에 기본적으로 포함된 것
기본적인 기능 수행과 더불어 디버깅, 성능측정 등을 위한 별도의 API가 존재함

- 런타임 라이브러리: 프로그램이 실제 환경에서 실행되기 위해 필요한 모듈들
표준 라이브러리에서 기능 수행에 필요한 것들만 제공되거나, 스크립트의 실행기 등을 말함
(ex : Windows - .dll/ Java - .jar)



Reference - 나무위키

 

반응형

'Web' 카테고리의 다른 글

REST, RESTful, REST API - 그런 REST API로 괜찮은가  (6) 2022.04.24
GraphQL - REST API와 비교  (0) 2021.06.15

+ Recent posts