Django에 대해 알아보자

Cornflower blue·2022년 3월 9일
0

django

목록 보기
1/4

📚Django

시작하기에 앞서

웹 개발에 있어서 핵심 키워드 네 가지의 핵심키워드가 있다.
1. 클라이언트
2. 서버
3. 요청
4. 응답

  • 웹 브라우저가 클라이언트의 역할을 하며
  • 서버를 구축하는 프레임워크로 장고를 배울 예정이다.

📑웹 페이지와 프레임워크

Static web page(정적 웹 페이지)

  • 서버가 정적 웹 페이지에 대한 요청을 받은 경우 서버는 추가적인 처리과정 없이 클라이언트에게 응답을 보낸다.
  • 모든 상황에서 모든 사용자에게 동일한 정보를 표시한다.
  • 일반적으로 HTML5, CSS3, Javascript로 작성된다.
  • 이를 flat page라고도 한다.

Dynamic web page(동적 웹 페이지)

  • 웹 페이지에 대한 요청을 받은 경우 서버는 추가적인 처리과정 이후에 클라이언트에게 응답을 보낸다.
  • 동적 웹 페이지는 방문자와 상호작용하기 때문에 페이지의 내용이 달라진다.
  • 서버 사이드 프로그래밍 언어(Python, Java, C++등)가 사용되며, 파일을 처리하고 DB와의 상호작용이 이루어진다.

Framework

  • 프로그래밍에서 특정 운영체제를 위한 응용 프로그램 표준 구조를 구현하는 클래스와 라이브러리의 모음
  • 재사용할 수 있는 수많은 코드를 프레임워크로 통합함으로써 개발자가 새로운 애플리케이션을 위한 표준 코드를 다시 작성하지 않아도 프레임워크를 통해 코드를 짤 수 있다.
  • Application Framework라고도 한다.

Web Framework

  • 웹 페이지를 개발하는 과정에서 겪는 어려움을 줄이는 것이 목적이다.
  • DB 연동, 템플릿 형태의 표준 관리, 세션 관리, 코드 재사용 등의 기능을 포함한다.
  • 동적인 웹 페이지나 웹 어플리케이션, 웹 서비스 개발 보조용으로 만들어지는 애플리케이션 프레
    임워크의 일종이다.

Web

  • World Wide Web
  • 인터넷 연결된 컴퓨터를 통해 정보를 공유할 수 있는 전 세계적인 정보 공간을 뜻한다.

📑Django란?

  • 장고는 빠른 개발과 깔끔하고 실용적인 디자인을 장려하는 높은 수준의 파이썬 웹 프레임워크이다.

📑Django를 사용해야 하는 이유

  • 검증된 Python 언어 기반 Web framework
  • 대규모 서비스에도 안정적이며 오랫동안 세계적인 기업들에 의해서 사용돼왔다.

📑 Framework Architecture

  • MVC Design Pattern(model-view-controller)
    : MVC란 Model View Controller의 약자로 애플리케이션을 세가지의 역할로 구분한 개발 방법론이다.
    : 사용자가 Controller를 조작하면 Controller는 Model을 통해서 데이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 View를 제어해서 사용자에게 전달하게 된다.
    : 디자인 패턴은 건축으로 치면 공법에 해당하는 것으로 소프트웨어의 개발 방법을 공식화한것이다.
    : MVC 디자인 패턴을 통해 사용자 인터페이스로부터 프로그램로직을 분리하여 애플리케이션의 시각적인 요소나 이면에서 실행되는 부분을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다.
  • 장고에서는 해당 개념을 MTV Pattern이라고 한다.

MTV Pattern

  • Model
    : 응용프로그램의 데이터 구조를 정의하고 데이터베이스의 기록을 관리한다. (추가, 수정, 삭제)
  • Template
    : 파일의 구조나 레이아웃을 정의
    : 실제 내용을 보여주는 데 사용한다.(Presentation)
  • View
    : HTTP 요청을 수신하고 HTTP응답을 반환한다.
    : Model을 통해 요청을 충족시키는데 필요한 데이터에 접근할 수 있다.
    : Template에게 응답의 서식 설정을 맡긴다.

MVC Pattern과 MTV Pattern

MVCMTV
ModelModel
ViewTemplate
ControllerView

웹에서 데이터의 흐름을 알아보자

출처

profile
무언가를 만들어낸다는 것은 무척이나 즐거운 일입니다.

0개의 댓글