1 minute read

웹 프레임워크 웹을 만드는 도구 모음고

웹 브라우저를 만드는데 최적화 - 근데 요즘은 모바일 등등 어플리케이션의 사용도 증가 - multi platform 사용자의 웹 서비스 사용 방식이 다양화됨

장고 프론트로는 한계(웹). 이는 브라우저에서의 show임 안드로이드, ios에 대응해야함

multi platform에 대응하기 위해 rest를 사용하는 것


[3강] REST란 무엇인가?

rest가 무엇인가?

중요한 요소

  1. http 프로토콜 사용
  2. 자원관리 편리
  3. 플랫폼(기기)에 종속되지 않아야 함

REpresentation State Transfer

자원 상태의 전송.. 을 의미함

  • 관리하고자 하는 자원의 이름(ex. profiles)
  • http 메소드로 행위를 분리(GET, POST, …)

  • url자체는 고정이 되어있고, HTTP 메소드를 달리 함으로써 자원관리를 편리하게 해 줌

예시. get방식으로 하면 json 방식으로 넘어옴

기존 장고로 프론트 백을 전부 다 관리하는 것의 문제점

  • 탬플릿과 뷰가 너무 강하게 결합되어 있음
  • 모델과 탬플릿의 하드코딩(한번에 다 코딩되어 있음)

웹만 만든다면 위와 같은 방식은 상관 없지만 요즘은 모바일 시대이다. Django REST Framework로 멀티플랫폼에 대응하자


[4강] 강좌 로드맵

핀터레스트 기반한 프로젝트를 만들 것

사용할 개발 툴

  • 장고: 자원 관리
  • 도커: 클라우드에 올릴 때(컨테이너)
  • 플러터: 프론트

개발 순서

장고에서 account, article, project, comment앱의 CRUD를 구현한 뒤,

이를 다 만들면 장고 프로젝트를 컨테이너화 시켜서 도커 시스템 안에 업로드

이거를 통~ 틀어서 aws에 올라가게 됨

비동기 작업 처리… <- 이게 가장 필요한거같은데

(참고로, 장고를 사용하지 않고 스프링, 플라스크, fast api 사용하여 구현해도 됨)


[8강] Django 개발 패턴

기본적인 장고의 구조

  • MVC 개발 패턴
  • 모델, 뷰, 컨트롤러
  • 모델, 뷰, 탬플릿

Django REST Framework -> MV에만 집중

Model row, columns item, attributes

ORM(object relational mapping)

  • 객체 연결로기를 만들어주는 기술
  • 굳이 sql사용하지 않고도 db관리하게 해 줌

View - controller 역할


[9강] Django 개발 패턴

라우팅

  • 요청이 들어오면 매인에서 처리, 메인이 각각의 앱으로 보냄
  • urls.py에서 관리