Skip to content

[모듈화 1편] Library vs Framework

박효준 edited this page Nov 9, 2024 · 2 revisions

반갑습니다 ! Memorial House의 집주인 효준 & 영현 입니다.

본 시리즈에서는 우리 팀이 모듈화를 적용하기 위해 공부했던 과정 중 을 담아볼 건데요,

이번 편에서는 Library vs Framework을 알아보겠습니다 !


총 3편의 시리즈로 구성되어 있습니다..!

그럼 레쯔고 〰️


문제 상황

  • 모듈화를 하면서 Library & Framework, Static & Dynamic에 대해 혼동이 왔음
  • Library vs Framework 용어에 대한 개념 차이

문제 해결

스크린샷 2024-11-10 오전 2 54 02

많은 블로그에서 Library vs Framework 용어에 대한 설명을 많이 올려두곤 한다.

그러나, 글을 읽다보면 대부분이 용어를 혼용해서 모듈화를 설명하고 있다.

본 포스팅에서는 간단하게 Library vs Framework 의 개념적 핵심만 살펴보겠다.

Library

스크린샷 2024-11-10 오전 2 54 09
  • Target에서 사용될 데이터와 코드들의 모임이다.
    • 여러 Object File
  • 라이브러리가 메모리에 적재가 어떻게 되는가에 따라 ₩₩₩₩₩₩2가지로 분류할 수 있다. 아래 내용은 다음 글에서 더 살펴보겠다.
    • 빌드 시점 (= Static)
    • 런타임 시점 (= Dynamic)

Framework

스크린샷 2024-11-10 오전 2 54 16
  • 내부에 Library를 포함하고 있음
    • 위 사진에서 .swiftmodule 디렉토리이다.
    • 프레임워크와 별도로 Static 혹은 Dynamic Library를 을 결정할 수 있음
  • Library 외에도 Header File과 Resource(스토리보드, Assets, ..)를 가질 수 있다.
  • 추가로 Static Framework와 Dynamic Framework도 선택할 수 있다.
    • 이 내용은 본 포스팅과 다른 내용이므로 다음 글에서 적겠다 (예고편입니더 ㅎㅎ)

정리

  • Framework 안에 Library가 들어있다는 것!!!!
  • Framework가 더 넓은 범주로 Library 외에도 헤더파일, Assets, 스토리보드 등을 더 가질 수 있다.
  • 우리 프로젝트에서는 Resource가 필요없으면 Library를 써도 될 것 같다.

배운 점

  • Library vs Framework 용어에 대한 개념 차이를 알게 되었다.
  • Framework 안에 Library가 포함되고, 추가로 Resource까지 저장할 수 있다는 것을 알았다.

참조 링크

https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Frameworks.html#//apple_ref/doc/uid/10000183i

https://developer.apple.com/library/archive/documentation/DeveloperTools/Conceptual/DynamicLibraries/100-Articles/OverviewOfDynamicLibraries.html#//apple_ref/doc/uid/TP40001873-SW1

https://swiftbyshanks.medium.com/framework-vs-library-in-ios-834b3fd99beb

Clone this wiki locally