라이브러리 와 프레임워크
다른 프로그램이지만 코드가 같을 수 있다.
사실 프로그래밍에서는 이런 일이 자주 일어난다.
내가 만들고 싶은 기능의 상당 부분이 이미 다른 개발자가 필요한 것과 똑같은 경우가 굉장히 많다.
라이브러리
자주 쓰일법한 코드를 모아 둔 게 라이브러리 이다.
마치 도서관 처럼 필요한 코드를 찾아서 쓸 수 있게 해둔 것이다.
라이브러리는 프로그래밍이 성장하는데 큰 기여를 했다.
기존의 코드를 가져다 쓸 수 있으니 프로그램을 만드는 속도가 빨라졌고,
요즘은 라이브러리를 사용하는 법만 알면 프로그래밍을 모르는 사람도 프로그램을 만들 수 있는 수준에 이르렀다.
라이브러리는 언어를 선택하는 기준이 되기도 한다.
이는 미리 만들어 둔 코드이기 때문에 여러 프로그래밍 언어 중 하나로 작성되어 있다.
즉 모든 언어 공용으로 쓸 수 있는 것은 아니다.
언어마다 자신에게 맞는 라이브러리가 있다.
프레임워크
프레임워크는 적은 양의 코드 만으로도 프로그램을 만들 수 있다는 점에서 라이브러리와 유사하다.
라이브러리는 내가 필요한 코드를 가져와서 내 코드에 붙여버리는 것이다.
그래서 코드를 다 작성하지 않아도 프로그램을 만들 수 있었다.
이 두 개념은 유사하지만 다른 개념이다.
프레임워크는 애초에 프로그래밍의 뼈대가 이미 준비되어 있고 내가 작성할 공간들만 비워져 있는 것이다.
정해진 빈 곳들에 코드를 채워 넣으면 프로그램이 완성되는 것이다.
때문에 프레임워크는 이미 반은 완성된 프로그램이라고도 볼 수 있다.
간단하게 빠르게 프로그램을 만들고 싶을 때는 프레임워크를 활용한다.
어떤 경우에 프레임워크를 쓰면 좋을까?
큰 틀이 정해져 있고 그 세부내용만 바뀌는 프로그램에 프레임워크가 효과적 이다.
내가 미처 생각하지 못한 부분들까지 다 고려가 되어 있다는 점이다.
개발자가 미처 생각하지 못한 부분들까지 다 고려가 되어 있는 경우가 많으므로,
좀 더 견고한 프로그램을 만드는데에도 도움을 준다.
다만 프레임워크는 이미 짜여진 틀 안에서 프로그램이 만들어지기 때문에 프로그램의 틀을 바꾸고 싶다면
복잡한 프레임워크의 구조에 대해서 자세하게 알아야 한다.
프레임워크의 구조를 바꾼다는 게 힘들다는 단점이 있다.
라이브러리 VS 프레임워크
라이브러리란 이미 누가 만들어 놓은 도구를 가져와서 그대로 사용하는 걸 말한다.
프레임워크란 틀이 이미 짜여 있는 만큼 내 마음대로 바꿀 수 있는 건 별로 없겠지만 최소한의 노력만으로 프로그램이 완성 가능하다.
'컴퓨터 개론' 카테고리의 다른 글
Codeit_컴퓨터 사이언스의 기본기 (0) | 2021.06.07 |
---|---|
Codeit_남의 코드에서 배우기 (0) | 2021.06.07 |
Codeit_좋은 코드란 무엇일까? (0) | 2021.06.04 |
Codeit_특수 목적 언어 (0) | 2021.06.03 |
Codeit_프로그래밍 언어의 스펙트럼 (0) | 2021.06.02 |