KDT 코딩온 개발 14기 수강일기

KDT 포스코X코딩온 웹 과정 14기 13일 - 프레임워크 VS 라이브러리

worldstroy 2024. 10. 25. 22:47

프레임워크

개발자가 소프트웨어를 개발함에 있어 코드를 구현하는 시간을 줄이고, 코드의 재사용성을 증가시키기 위해 일련의 클래스 묶음이나 뼈대 등을 미리 만들어 모아놓은 것을 말한다.

 

프레임워크의 특징

 

- 개발자가 따라야 하는 가이드를 제공하기에 개발 시간을 단축할 수 있다.
-  정형화되어 일정수준 이상의 품질을  기대할 수 있지만, 개발할 수 있는 범위가 제한적이다.
-  유지보수가 쉬운 장점이 있지만, 너무 의존한 프로그래밍을 하면 개발자의 능력을 향상시키기 어렵다.
- 대부분의 프레임워크가 습득에 걸리는 시간이 오래걸린다.

 

라이브러리란?

 

라이브러리란 개발자가 만든 클래스의 나열로 프로그램에서 사용할 수 있도록 제공하는 방식이다.

 

 

프레임워크 VS 라이브러리

둘의 가장 큰 차이는 제어의 흐름에 따른 주도성이 누구에게 있느냐에 있다. 프레임워크는 그 스스로 제어 히름의 주도성을 갖는 반면, 라이브러리는 개발자가 개발했던 코드를 재사용하는 것에 가깝기에 능동적이다. 
쉽게 말해,  프레임워크는 설정파일의 테그나 DB의 연동방법 등 미리 설계된 사용 방법을 개발자가 따르는 반면, 라이브러리는 어느 정도의 리폼이 가능하다.

 

Bootstrap이란?

웹 사이트를 쉽게 만들 수 있게 공개되어 있는 HTML, CSS, JS 프레임워크

 

BootStrap의 탄생 배경

웹 페이지 개발이 진행돌 때, 개발자의 취향에 따라 도구도 다르고, 자신만의 라이브러리를 사용하기도 해서 보통은 개발 시작 전에 어느 정도의 표준 설계도를 정해놓고 개발에 들어간다.  하지만 서로 개개인의 작업물이 서로 판이하게 달라서 개발 후 프로젝트를 합치는 과정에서 문제가 발생할 수 있다.  하지만 공통적으로 포함되는 부분을 부트스트랩과 같은 프레임워크로 개발해 두면 웹페이지의 통일성을 어느정도 보장할 수 있다.

 

부트스트랩의 장단점

1) 장점

1. 내부 클래스를 빠삭하게 파악했다면 빠르고 쉽게 다양한 형태의 웹사이트를 제작할 수 있다.
2. 또한 대부분의 부트스트랩의 요소들이 반응형이 개발되어 있기에 디바이스 별 대응이 쉽다.
3. 제작에 필요한 도구를 빠르게 긁어 사용할 수 있다.
4. 이미 개발되어 있는 요소를 긁어와 사용하는 것이기에 타개발자, 팀별 프로젝트를 인수인계 받을 때 빠른 작업이 가능하다. 

다단점

1. 미리 구축되어 있는 스타일요소를 사용하기에 커스터마이징이 힘들다.
2. 미리 정해져 있는 클래스를 확실히 알아야 하고, 디바이스 별로 어떻게 표현되는지 파악해야 한다.
3. 어디까지나 프레임워크이기에 공부가 확실히 되어 있지 않으면 바로 사용하는 건 쉬지 않다.
4. 부트스트랩의 CDN으로 사용할 경우, 전부다 쓰는 것도 아닌데, 페이지 로딩 시 모든 정보를 다운로드해야 한다.
5. 타 프레임워크와 비교했을 떄 상당히 무겁고 느린편이다.

 

부트스트랩의 사용방법

1. 홈페이지에서 부트스트랩을 설치하거나 CDN을 프로젝트에 삽입한다.
2.  부트스트랩 홈페이지()에 들어가 DoS 문서를 참조한다.
3.  개발에 사용할 요소를 찾아와서 프로젝트에 추가한다.
4. 부트스트랩의 class 이름 작성 규칙에 따라 커스터 마이징한다.