라이브러리와 프레임워크
라이브러리
자주 쓰일 만한 기능들을 모아 놓은 유틸(클래스)들의 모음집
사용자(프로그래머)와 실제 구현하고자 하는 기능 사이에
프로그래머에게 기능을 쉽게 제공해주는 중간 계층이라는 의미에서
프레임워크와 맥락은 비슷함
프레임워크
프레임워크 = 라이브러리 개념 + 뼈대가 되는 클래스들 + 클래스들의 관계로 만들어진 설계 기본 틀
프레임워크에는 해당 프레임 워크의 제작자가 만들어 놓은 “기반 코드”같은 개념이 존재함
사용자들은 해당 프레임워크를 사용해 본인이 원하는 기능들을 구현함
이러한 ‘기반 코드’에는 설계자가 설계한 구조를 유지하면서 확장할 수 있도록
“의도된 제약 사항”이 존재함
설계의 기반이 되는 부분을 기술한 확장 가능한 기반 코드와
사용자가 이 코드를 자신의 입맛대로 확장하는데 필요한 라이브러리가 합쳐진 개념
“기본적 설계 + 라이브러리는 줄테니까 넌 개발에만 집중해!” 하면서 주는 것 = 프레임워크
SOPT 28기 iOS 파트 1차 복습 자료 내용 中