Published 2020. 9. 22. 20:06
728x90
반응형

Framework란?

개발자가 소프트웨어를 개발함에 있어 코드를 구현하는 개발 시간을 줄이고, 코드의 재사용성을 증가시키기 위해 일련의 클래스 묶음이나 뼈대, 틀을 제공하는 라이브러리를 구현해 놓은 것

 

 

Framework의 특징

1. 개발자가 따라야 하는 가이드를 제공

2. 개발할 수 있는 범위가 정해져 있음

3. 개발자를 위한 다양한 도구, 플러그인을 지원

 

 

Framework와 library의 차이점

라이브러리와 프레임워크의 차이는 제어 흐름에 대한 주도성이 누구에게/어디에 있는지에 있음
프레임워크는 전체적인 흐름을 스스로가 쥐고 있으며 사용자는 그 안에서 필요한 코드를 짜 넣으며 반면에 라이브러리는 사용자가 전체적인 흐름을 만들며 라이브러리를 가져다 쓰는 것임

다시 말해, 라이브러리는 라이브러리를 가져다가 사용하고 호출하는 측에 전적으로 주도성이 있으며 프레임워크는 그 틀안에 이미 제어 흐름에 대한 주도성이 내재(내포)하고 있음

프레임워크는 가져다가 사용한다기보다는 거기에 들어가서 사용한다는 느낌/관점으로 접근할 수 있음

 

 

Framework의 장단점

장점 - 체계적인 코드관리로 유지보수가 용이
- 기본설계 및 기능 라이브러리를 제공하여 개발 생산성이 높음
- 코드에 대한 재사용성이 높음
- 추상화된 코드 제공을 통해 확장성이 좋음
단점 - 학습난이도가 높음
- 기본 설계된 구조에 의해 자유로운 개발에 한계가 있음
- 사용하지 않는 기능에 대한 라이브러리가 포함될 수 있음
- 제공되는 기능만큼 프로젝트의 용량이 증가

 

반응형
복사했습니다!