Unborn 8.0 Yellow Pointer
본문 바로가기
프로그래밍

[프로그래밍] 프레임워크 : 장점과 단점/라이브러리와 차이점

by 에삐니 2021. 3. 2.
728x90

프레임워크란?

컴퓨터 프로그래밍에서, 소프트웨어 프레임워크(software framework)는 복잡한 문제를 해결하거나 서술하는 데 사용되는 기본 개념 구조이다. 간단히 뼈대골조(骨組), 프레임워크(framework)라고도 한다. 이렇게 매우 폭넓은 정의는 이 용어를 버즈워드(buzzword)로서, 특히 소프트웨어 환경에서 사용할 수 있게 만들어 준다. -위키백과
"소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것"
-랄프 존슨(Ralph
Johnson)

즉, 프레임워크는 개발이 되는 뼈대나 틀을 제공하고 개발자는 그 뼈대에 살을 붙이는 작업을 하는 것입니다.

 

프레임워크의 장점

  • 빠른 구현 및 획일화 
  • 확장성이 좋으며 높은 완성도
  • 체계적인 코드 관리로 안정적인 유지보수 가능
  • 검증된 아키텍처의 재사용과 일관성 유지

애플리케이션의 분석, 설계, 구현 등 재사용성이 증가하고 이를 통해 위와 같은 장점을 얻을 수 있습니다.

 

프레임워크의 단점

  • 코드 습득을 위한 학습시간이 필요
  • 자유롭고 유연한 개발에 한계
  • 프로젝트 용량 증가
  • 프레임워크 선택이 중요

프레임워크를 이해하는데 오랜 시간이 걸릴 수 있고 이미 설계된 구조에 작업을 하는 것이므로 자유로운 개발에 한계가 있을 수 있습니다.

 

프레임워크 VS 라이브러리

그렇다면, 프레임워크와 라이브러리의 차이점은 무엇일까요?

라이브러리에 대해서도 제대로 알고 있어야 그 차이점을 이해하기 쉬울 것 같습니다.


⬇⬇⬇ 라이브러리에 대해 알고 싶다면 ⬇⬇⬇

 


프레임워크와 라이브러리 모두 개발을 쉽게 할 수 있도록 도와줍니다. 가장 큰 차이점은 흐름을 누가 가지고 있냐는 것입니다.

예를 들어 프레임워크는 이미 만들어져 있는 건물이라고 생각할 수 있습니다. 일정한 규칙을 따라야 하며 주차공간 비상 공간 등이 확보되어 있습니다.

라이브러리는 집을 만들기 위한 연장 도구가 들어있는 연장 상자라고 할 수 있겠습니다. 사용자가 연장을 어떻게 사용할지를 정하는 것입니다.

즉, 프레임워크는 프로그래머가 제공된 틀 안에서 주어진 규칙을 지키며 사용해야 합니다. 반면 라이브러리는 프로그래머가 원하는 기능을 구현하고자 할 때 가져다 사용하므로 차이가 있습니다.

 

만들려는 소프트웨어와 적합한 프레임워크와 라이브러리를 잘 선택해요 개발을 한다면 더욱 효육적은 개발을 할 수 있을 것입니다.

728x90
반응형

댓글