프레임워크와 Django

Ryu Honggyu·2024년 8월 8일

Django

목록 보기
1/19
post-thumbnail

프레임워크

  • 소프트웨어를 위한 구조적인 틀.
  • 여러 슈퍼개발자들이 특정 기능을 쉽게 구현할 수 있도록 관련된 코딩을 미리 해놓은 것.
  • 이 중에서 구현하고자 하는 부분만을 가져와 사용하면 됨.

웹 프레임워크

  • 웹 애플리케이션 개발에 쓰이는 구조적인 틀.
  • 프레임워크로써, 웹 서비스를 효율적이고 체계적이며 빠르게 구현 가능토록 만들어줌.

목적

목적설명
효율성중복 코드를 줄이고 개발 속도를 높이며, 유지보수를 용이하게 함.
일관성일관된 코드 작성 방식을 제공하여 코드의 가독성과 재사용성을 높임.
보안성일반적인 보안 이슈에 대응하는 기능을 제공함.

기능

기능설명
라우팅URL-서버의 특정 기능을 연결함.
템플릿 엔진HTML 등의 템플릿을 동적으로 생성할 수 있게 해줌.
데이터베이스 관리ORM 으로 데이터베이스와의 상호작용을 단순화함.
세션 관리사용자 인증, 권한 부여 기능 등을 제공함.
폼 핸들링웹 폼을 쉽게 생성하고 검증할 수 있도록 도움.
보안성XSS, CSRF 등의 보안 위협으로부터 서비스를 보호하는 기능 포함.

대표적인 웹 프레임워크 종류

프레임워크설명
Django파이썬 기반의 고수준 프레임워크로, '마감 기한이 있는 완벽주의자를 위한 웹 프레임워크'라는 슬로건을 가짐.
Flask파이썬 기반의 경량 웹 프레임워크로, 간단하고 확장 가능한 구조를 가짐.
Wiki Framework위키 시스템을 쉽게 구축할 수 있도록 설계된 프레임워크로, 협업과 문서화에 특화되어 있음.

Django 의 정의

  • 장고 (D는 묵음 처리)
  • The web framework for perfectionists with deadlines.
  • 마감 기한이 있는 완벽주의자를 위한 웹 프레임워크.
  • 파이썬 기반으로 웹 개발이 가능. (다른 언어를 배울 필요가 없음)
  • 이미 구현된 기능이 많아 내가 쓰지 않을 기능도 포함되어있고 무거우나, 생산성은 높음.
  • 디자인패턴은 MTV (Model-Templates-Voew) 모델을 따름.

Django 를 쓰는 이유

기능설명
DRY(Don’t Repeat Yourself) 원칙코드 중복을 최소로하는 개발 원칙을 따름.
다양한 핵심 프레임워크보안, 관리자기능, Auth 등의 핵심 기능이 포함됨.
풍부한 레퍼런스수많은 사용자로부터 비롯된 레퍼런스, 예시, 사용법.
검증된 프레임워크프레임워크를 고를 때는 그것의 사용처를 확인해야 함.

사용처 예시

  • Instagram
  • Spotify
  • Dropbox
  • Toss
  • 번개장터 등...

풍부한 레퍼런스는 이런 다양한 사용처에서 비롯된다.

profile
알고리즘 & 웹 & CS & AI

0개의 댓글