Computer Science

Framwork? library?

곰제비 2022. 6. 17. 17:38

프레임워크와 라이브러리

프레임워크

  • 특정 프로그램을 개발하기 위한 여러 요소들과 메뉴얼인 룰을 제공하는 프로그램
  • 어떤 프로그램을 쉽게 만들기 위한 요소와 룰을 제공해 줌으로서 소프트웨어의 생산성과 품질을 높이는 역할
  • ex) Spring, Django, Ruby on Rails
  • 장점
    • 프로그램의 체계적 관리
    • 기본적인 설계와 라이브러리를 제공하여 개발 속도 향상
    • 코드의 재사용성이 높고 확장성이 좋음
  • 단점
    • 프레임워크 별 별도의 학습이 필요함
    • 자유롭고 유연한 개발이 불가능
    • 프로젝트의 용량이 증가

 

라이브러리

  • 소프트웨어를 개발하기 쉽게 기능을 제공하는 도구 모음
  • 프레임워크는 틀이고 그 안에서 재사용이 가능하도록 만들어진 도구들
  • ex) C++ - STL / Python - Pandas, Datetime / Java - Guava 

 

프레임워크와 라이브러리의 공통점, 차이점

 

공통점 프로그램을 쉽게 만들고자 사용한다.
차이점 프레임워크 꼭 사용하고 지켜야하는 룰이 있다.
라이브러리 프레임워크의 규약을 지킨다면 어떠한 것을 사용해도 무방하다.