Library VS Framework

Miz·2021년 5월 5일

Library VS Framework

  1. Library
  • 라이브러리는 단순 활용 가능한 도구의 집합
  • 개발자가 만든 클래스를 호출하여 사용
  1. Framework
  • 뼈대나 기반구조, 제어의 역전개념 ??
  • 특정 개념들의 추상화를 제공하는 여러 클래스나 컴포넌트
  • 재사용 가능한 컴포넌트

차이점

  1. 제어 흐름에 대한 주도성이 누구에게 있는가?
    - 프레임워크는 전체적인 흐름을 스스로가 쥐고 있으며 사용자가 그 안에서 필요한 코드를 짜넣는방식
    - 라이브러리는 사용자가 전체적인 흐름을 만들며 필요 시 라이브러리를 가져다 쓰는 방식

라이브러리를 사용하는 애플리케이션 코드는 애플리케이션 흐름을 직접 제어합니다.

단지 동작하는 중에 필요한 기능이 있을 때 능동적으로 라이브러리를 사용할 뿐입니다.

반면에 프레임워크는 거꾸로 애플리케이션 코드가 프레임워크에 의해 사용되는 것입니다.

보통 프레임워크 위에 개발한 클래스를 등록해두고, 프레임워크가 흐름을 주도하는 중에 개발자가 만든 애플리케이션 코드를 사용하도록 만드는 방식입니다.

프레임워크에는 분명한 제어의 역전 개념이 적용되어 있어야 합니다.

애플리케이션 코드는 프레임워크가 짜놓은 틀에서 수동적으로 동작해야 합니다.

profile
2년차 백엔드 개발자

0개의 댓글