Framework

jm_yoon·2020년 12월 22일
1

Framework(프레임워크)

프레임워크란 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스를 제공하는 것

보통 프레임워크는 라이브러리와 비교를 많이한다.

라이브러리는 자주 사용되는 로직을 재사용하기 편리하도록 잘 정리한 일련의 코드들의 집합을 의미한다. 쉽게 말해 자동차의 기능을 하는 부품으로 비유할 수 있다.
프레임워크는 자동차의 프레임, 기본적으로 구성하고 있는 뼈대를 말한다.

물론 자동차를 만들기 위해서 자동차 프레임과 부품들을 가져다 쓰지 않아도 되지만 프레임과 부품들을 일일이 만든다면 너무 많은 시간과 비용이 들게된다.
그래서 프레임워크와 라이브러리가 존재하는 것이다.

프레임워크는 목적에 따라 효율적으로 구조를 짜놓는 개발 방식으로 구조화된 스크립트를 통해 개발자의 스크립트 패턴을 정형화 할 수 있도록 되어있으며 개발자가 반복적으로 해야 하는 공통부분을 최소화 할 수 있도록 설계되어있다. 이를 통해 개발자는 자신이 맡은 세부 업무개발에 집중할 수 있으며 개발표준 준수 및 개발품질 향상에 도움을 준다

프레임워크의 특징

장점

1) 효율적이다.

  • 아무것도 그려지지 않은 제로에서 코드를 일일이 짜는 것보다 시간과 비용이 훨씬 절약되며 생산성이 좋아진다.

2) Quality 향상

  • 버그 발생 가능성을 처리해줌으로써 개발자가 반복 작업에서 실수하기 쉬운 부분을 커버해준다. 다수의 개발자가 사용하며 수정하다 보니 이미 검증된 코드라고 볼 수 있다.

3) 유지 보수 용이

  • 프레임워크를 쓰지 않고 일일이 코드를 짜 놓은 경우, 회사 입장에서 개발 담당자가 바뀌어버리면 곤란해진다. 그러나 Framework를 사용하면 코드가 보다 체계적이어서 담당자가 바뀌더라도 위험부담을 줄일 수 있으며 유지 보수에 안정적이다.

단점

1) 학습시간이 길다.

  • 코드를 본인이 짜 놓은 것이 아니기 때문에 프레임워크에 있는 코드를 습득하고 이해하는 데 오랜 시간이 걸린다.

2) 제작자의 의도된 제약 사항

  • 제작자가 설계한 구조를 어느 정도 유지한 채 코드에 살을 붙여나가야 한다. 따라서 기본 설계된 구조에 의해 자유로운 개발에 한계가 있다.

3) 사용하지 않는 기능에 대한 라이브러리가 포함될 수 있다.

4) 제공되는 기능만큼 프로젝트의 용량이 증가한다.

장고프레임워크란 파이썬으로 작성된 오픈 소스 웹 애플리케이션 프레임워크로 쉽고 빠르게 웹사이트를 개발할 수 있도록 돕는 구성요소로 이루어져 있습니다. 파이썬 프로그래밍 자체가 다른 프로그래밍에 비해 배우기 쉽고 쓰기 편하게 되어 있기 때문에 개발기간을 상당히 단축시킬 수 있습니다. 장고프레임워크는 그에 수반되는 강력한 라이브러리들을 그대로 사용할 수 있다는 점이 가장 큰 장점이라고 볼 수 있습니다.

profile
Hello!

0개의 댓글