본문 바로가기
Today I Learned

프레임워크와 라이브러리 30초만에 이해하기

by Davidev 2023. 8. 9.
반응형

 

 

작성하는 코드의 주도권을 누가 가지고 있는데?

 

 

 

 

 

나 같은 초보 코더에겐 '프레임워크'와 '라이브러리'가 참 와닿지 않는 단어들인데, 계속해서 코딩을 배우면서도 개념적인 부분은 크게 중요하지 않다고 생각이 들어 3번 이상은 검색해 보고 또 까먹는 그런 개념이었다. 이번에 또 궁금해서 찾아보곤 완전히 이해해 버렸기 때문에 정리 및 공유해보려고 한다.

 

 


 

 

 

프레임워크 : 이 규칙대로 만들어야함 아님 에러임 ㅅㄱ


뼈대 만들어 주는 프로그램

 

 

항상 블로그에서 찾아볼 때마다 코딩하기 전에 '뼈대'를 만들어주는 프로그램이라 설명해서 "그런가보다.." 하고 명확히 이해하지 못했었는데, 의미를 쉽게 풀어보자면 '코드의 주도권누가 가지고 있는지' 생각해 보면 아주 쉽다. 

 

예를 들어 웹 사이트를 만들려고 하는데, HTML, CSS, JS만 이용해서 만들 수 있기도 하지만.. 동적인 서비스, 고퀄리티 웹 서비스를 만들 수 있게 해주는 '프레임워크' 를 사용하면 규칙에 맞게 설정과 코드를 작성해야 하지만, 더 나은 고퀄리티의 웹 서비스를 손쉽게 만들 수 있게 된다.

 

웹 프레임워크로 Spring Framework이 유명한데, 이 framework를 사용하면 XML 파일에 구성요소에 관한 환경설정 코드를 넣어야 하고, 그 코드 컨벤션에 따라 플래그의 이름도 세팅된다. Mybatis도 마찬가지로 XML파일에 정해진 문법에 따라 쿼리를 만들어 입력해야 정상적으로 작동하게 된다.

 

이처럼 미리 만들어진 규칙에 따라 코드를 작성해야 하는 프로그램을 "프레임워크"라고 한다.

 

 

 


 

 

 

라이브러리 : 저 쓰면 ㄹㅇ 개편함 생산성 미쳤음.. ㅇㅈ?

 

쓰고 싶은거 찾아서 가져다쓰는 프로그램

 

 

반면에 라이브러리는 '도서관'이라는 영단어 뜻과 연결 지어 생각하면 쉽다.

책이 필요할 때는 도서관에 가서 수많은 책 중 필요한 것만 공짜로 빌려온다.(소환)

 

코드를 작성할 때도 유사한데, 예를 들면 JavaScript 코드를 작성할 때 코드를 쉽게 작성할 수 있게 도와주는 라이브러리인 jQuery를 이용해 코딩하는 것처럼 말이다. 사실 jQuery 없이도 javaScript 문법으로 원하는 코드를 작성할 수는 있지만, 더 쉽고 더 가독성 좋게 코드를 작성하기 위해 jQuery에서 제공하는 코드를 빌려온 것이다.

 

이처럼, 코드의 주도권내가 가졌지만 조금 더 쉽고, 편리하게 코드를 작성하기 위해 외부로부터 필요한 기능을 불러오는 것을 "라이브러리"라고 한다.

 

반응형

댓글