본문 바로가기

잉고래의 코딩

프레임워크와 라이브러리의 차이는?

프레임워크 & 라이브러리

요즘 CodeIgniter를 공부하고 있습니다. '코드이그나이터는 프레임워크이다'라고 유저가이드에 한 구절 나오는데 프레임워크는 무엇이고 라이브러리와의 차이는 무엇일까? 하고 생각하게 됩니다. 여기저기 주워들은 이야기를 종합해 보면 이렇습니다.

가령 A라는 사람이인천에서 서울로가야 한다고 칩시다. 걸어서 갈 수도 있겠지만 이 사람은 직접 오토바이를 만들어서 타고 가는 방법을 선택했습니다. 모터(라이브러리)와 바퀴((라이브러리)), 핸들(라이브러리) 등등을 조립해서 서울까지 갔다고 합니다. 시간과 노력이 들었지만 얻은 지식과 노하우도 많았다고 합니다.

다음으로 B라는 사람입니다. 동일하게 인천에서 서울로 가야하는데 이 사람은 자동차(프레임워크)와 오토바이(프레임워크) 중에서 최신 오토바이(프레임워크)를 구해서 타고 가기로 했습니다. 그 오토바이의 사용방법과 유의사항을 공부한 다음 잘 운전해서 서울까지 갔다고 하네요. 오토바이에 대한 지식은 얻지 못했지만 이미 잘 만들어진 제품으로 빠르고 편하게 원하는 목적을 이룰 수 있었답니다.

결국 프레임워크와 라이브러리의 차이는 내가 조립해서 입맛에 맞게 만들어 쓰느냐, 이미 만들어진걸 배워서 잘 이용하느냐의 차이라고 봅니다.