2022-09-22 TIL sparta

최해민·2022년 9월 22일
0

오늘 한 일(회고)

  • 파이썬 장고 실무 기초 1주차 수강
  • 원격 강의 숙제 풀이
    • 원격 강의 숙제는 반복문, 함수, 클래스에 관한 문제가 나왔다.
      세가지가 Django 입문하기 앞서 중요한 문법인 듯 하다.
    • 드디어 Python 문법 다지는 날이 지나고, Django 실습으로 넘어왔다..
      조금 알고있다고 해서, 자만하지 않고 충분히 복습하면서 기본기를 단단하게 다진다고 생각하자.
      오늘은 장고의 장점과 장고 프로젝트 생성하는 것을 배웠다. 로컬서버를 돌려서 로켓을 보았다.... 오랜만에 보는 로켓이라 두근두근했고, 약간 까먹은 듯한 느낌이라 불안했다.
      장고마스타가 되는 그날까지!!
  • 백준 알고리즘 정렬2 1문제 풀기

Django vs Flask, Pyramid

  • Django

    • 거대한 프레임워크
    • 많은 기능들이 이미 만들어져 있다.
    • DB, 로그인, Admin, 패스워드 암호화 등 이미 제공
    • 커뮤니티와 문서가 잘 되어있다.
  • Flask, Pyramid

    • 경량 프레임워크
    • 최소한의 기능들만 제공한다.
    • 로그인, DB등의 관리를 직접 해주어야 한다.
    • 관리자 페이지 구축을 따로 해주어야 한다.

개발자에 따라서 장단점을 느끼는 부분이 다르겠지만, 둘의 차이점과 왜 내가 Django를 사용하는지에 대한 답변이 될것 같다.


Django의 MVT 패턴

  • M (Model)
    • DB의 모델(ORM)
    • 저장되고 사용되는 데이터의 형태
  • T (Template)
    • 사용자에게 보여지는 부분
    • 화면
  • V (View)
    • 실질적으로 프로그램이 동작하는 부분
    • URL을 요청하고 응답하는 그 사이에 일어나는 "서비스"들이 존재하는 곳

Django가 일하는 방식이다. 그림을 보며 이해를 하고 익혀두자!
이해한 만큼 개발할 때 많은 도움이 된다!!


ORM 이란?

  • Django의 ORM은 Python으로 데이터베이스 클래스 모델을 만들고, 만든 모델을 바탕으로 자동으로 데이터베이스를 다룰 수 있도록 도와준다.
    => 쿼리문을 작성하지 않아도 된다!!
모델 예제

class Post():
	id = IntegerField()
    title = CharField()
    author = CharField()
    context = TextField()

장고 프로젝트 만들기

파이썬 장고 실무 기초 원격강의에서는 파이참을 이용하여 쉽게 장고 프로젝트를 만들었다.
하지만 나는 커맨드라인을 이용하여 장고 프로젝트를 만들고 싶었다.
커맨드를 이용하여 장고 프로젝트를 만들기 전에, 파이썬 가상환경에 대해 설정이 끝났다고 가정했다.

  • 가상환경에 Django 설치하기
(venv) $ pip install django
  • 만들어 놓은 디렉토리에 Django 프로젝트 생성하기
(venv) ~/directory $ django-admin startproject config .
주의 할 점은 ~~~ config(공백). 이라는 것이다
  • 디렉토리를 생성하지 않고, Django 프로젝트를 생성하기
(venv) $ django-admin startproject my_project

내일 할 일

  • 파이썬 장고 실무 기초 2주차 강의 수강
  • 백준 알고리즘 문제 최소 한문제 풀기!!
profile
안녕하세요

0개의 댓글