Django kickoff

Junyoung Lee·2021년 6월 15일
0

Django

목록 보기
1/4
post-thumbnail

Django를 처음으로 공부하고 기본적인 것들을 적어보려고 합니다


Web Framework란?

  • 동적인 웹 페이지나, 웹 애플리케이션, 웹 서비스 개발 보조용으로 만들어지는 애플리케이션 프레임워크의 일종이고 웹 페이지를 개발하는 과정에서 겪는 어려움을 줄이는 것이 주 목적으로 통상 데이터베이스 연동, 템플릿 형태의 표준, 세션 관리, 코드 재사용 등의 기능을 포함하고 있음
  • 원하는 기능 구현에만 집중하여 빠르게 개발 할 수 있도록 기본적으로 필요한 기능을 갖추고 있는 것으로 위에서 설명한 라이브러리가 포함되어 있음
  • 프레임워크만으로는 실행되지 않으며 기능 추가를 해야 되고 프레임워크에 의존하여 개발해야 되며 프레임워크가 정의한 규칙을 준수해야 함

    주로 쓰이는 Web FrameworkSpring, Django, Node.js, Ruby on Rails등이 있음


Django?

Django는 위 Web Framework의 한 종류이고 Python언어를 기반으로 하기 때문에 Python의 장단점을 전부 가지고 있다


Django의 M.V.T

MVTDjango에서 기본적으로 사용되는 디자인 패턴이며 디자인 패턴에서 주로 사용되는 것이 MVC인데 장고 프레임워크에서는 V를 Template, C는 View라고 표현하며, MVCMVT 패턴이라고 한다.

Model

장고에서는 ORM이라는 기법을 사용하는데 데이터베이스를 사용할 땐 SQL언어를 사용하지만 장고에서는 이에 대응되는 파이썬 문법을 통해서 데이터베이스를 정의
하나의 클래스는 데이터베이스의 테이블에 해당되고, 클래스 안의 속성은 데이터베이스 테이블의 컬럼에 해당되는데 이렇게 연결시키는 것을 Object-Relational-Mapping이라고 하고 줄여서 ORM이라고 함

View

view는 애플리케이션의 로직을 담당하는데 이전에 만들었던 model에서 필요한 정보를 받아와 template에 전달하는 역할을 하고 반대로 template에서 사용자의 요청을 받아 model이나 web server에 구현되어 제공할 수 있는 기능, 서비스들을 가져오기도 함

Template

디자인 영역의 분리 및 재사용성을 높이기 위해 HTML구조만을 따로 모아 놓은 것(Front-end 영역)


Django의 workflow

  1. Client의 요청을 받으면 URLconf를 통해 URL 분석
  2. URL 분석 결과를 통해 해당 URL에 대한 처리를 담당할 View결정
  3. View는 자신의 로직을 실행하며 Database처리가 필요하면 Model을 통해 처리하고 그 결과를 반환받음
  4. View는 자신의 로직 처리가 끝나면 Template을 사용하여 Client에 전송할 HTML파일 생성
  5. View는 최종 결과로 HTML파일을 Client에게 보내 응답

Ref.
https://ko.wikipedia.org/wiki/%EC%9B%B9_%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC
https://brunch.co.kr/@toktokhandev/12
https://butter-shower.tistory.com/49
https://justmakeyourself.tistory.com/entry/django-mvt-pattern
https://heiswed.tistory.com/entry/%EC%9E%A5%EA%B3%A0Django-%EA%B0%9C%EB%B0%9C-%ED%85%9C%ED%94%8C%EB%A6%BFTemplate

profile
🎹재즈를 사랑하는 백엔드 개발자 이준영입니다🎷

0개의 댓글