Django

장고(Django) 간단 소개

zhelddustmq 2024. 8. 8. 12:45

목차

1. 장고(Django)란?

2. 장고에 들어가기 전 준비 상태

3. 장고 개발을 위한 몇가지 키워드

 

1. 장고(Django): 파이썬기반의 웹 개발 프레임워크(개발 툴)

 

 1-1 프레임워크: 소프트웨어 개발을 위한 구조적인 틀

  • 개발자들이 프로그램을 만들때 자주 사용하는 여러 도구를 모아놓은 것.
  • 특정한 작업이나 목적을 수행하기 위한 코드 덩어리.
  • 파이썬에는 Django, Flask, FastAPI 등의 여러 프레임워크가 있음.

 1-2 장고의 기능과 성능

 - 장고의 의의와 기능: 아래 기능을 하나하나 코딩하기에는 알아야 할것들이 너무 많고, 짜는 시간도 굉장히 오래 걸림.

 

웹 사이트 기본 기능

  • 회원가입
  • 유저기능 / 프로필페이지, 로그인/로그아웃
  • 회원탈퇴
  • 비밀번호 변경
  • 데이터베이스
  • 보안
  • 좋아요 기능
  • 팔로우 기능
  • ...

 

위와 같은 기능들은 어느 웹 사이트에 가서도 비슷한 역할로써 수행되기 때문에 이에 관한 코드 짜지 않고, 가져다 쓸수 있게 해줌.

 

Python 기반

  • Django를 다루기위해 다른 언어를 배울 필요 x
  • Python을 사용해서 웹개발이 가능

웹 프레임워크

  • 웹을 만들기 위한 프레임워크
  • 빠른 웹개발을 위한 모든 것이 준비됨

 

 - 장고의 성능: 

 

  • DRY(Don’t Repeat Yourself) 원칙
    • 코드 중복을 최소로하는 개발 원칙을 따름
  • 모든것이 갖춰진 프레임워크
    • 보안, 관리자기능, Auth 등의 필요한 모든것이 준비됨
  • 풍부한 레퍼런스
    • Google등 기능에 대한 여러 문제점과 해결책, 사용법 등이 마련되어 있음
  • 검증된 프레임워크
    • 어떠한 도구(프레임워크)를 고를때는 그것을 어디에 사용했는지 봐야함.
    •  
    • 토스, 화해, 번개장터, 에이블리 …

2. 장고에 들어가기 전 준비 상태

  • Python 문법 → 반복문, 조건문, 함수, 클래스와 같은 기초 문법은 숙지해야함
  • HTML / CSS와 같은 웹 프로그래밍 기초가 조금씩 필요. JavaScript는 필수조건은 아님.

 

3. 장고 개발을 위한 몇가지 키워드

  • 버전의 의미: 보통 소프트웨어 버전은 A.B.C 형태를 취함.
    Major.Minor.Patch
    • Major : 주요 버전은 소프트웨어의 큰 변화나 기능 추가를 나타냄. 주요 버전이 변경되면 호환성이 없는 변경사항이 있을 수 있으며, 이는 이전 버전과의 호환성을 보장하지 않을 수 있음을 의미.
    • Minor : 부 버전은 주요 버전 안에서의 작은 변화를 나타냄. 주로 새로운 기능의 추가나 개선된 기능 등을 포함. 부 버전의 변경은 주요 버전과의 호환성을 유지하면서 새로운 기능을 추가하는 것이 일반적
    • Patch : 패치 버전은 보통 버그 수정, 보안 업데이트, 또는 작은 수정 사항을 나타냄. 주요 버전과 부 버전은 변경되지 않지만, 코드의 수정이 있을 수 있음. 일반적으로 패치 업데이트는 호환성을 유지하면서 이전 버전의 안정성을 향상
  • 가상환경(venv): 하나의 컴퓨터에 여러개의 개발 환경을 셋팅. 프로젝트 들이 동일한 라이브러리, API이면서 다른 버전들이 동시에 쓰이면 충돌이 일어나기 때문에 나눠줌.
    LTS: 소프트웨어나 기술 제품의 장기 지원을 나타내며 LTS 버전은 보다 오랜 기간 동안 지원되며 보안 업데이트, 버그 수정, 백포트된 기능 업데이트 등을 포함
    Django의 생명주기
    python의 생명주기

버전 정보 저장 및 불러오기: 협업을 할때 위와같은 문제로 버전을 맞춰줘야함.

 - 버전 정보 저장: requirements.txt에 freeze하기

pip freeze > requirements.txt

→ 현재 설치된 목록을 requirements.txt에 명시합니다.

→ 앞으로 설치를 하고 나서 항상 이 과정을 진행해야합니다.

 

 - 버전 정보 불러오기: 

pip install -r requirements.txt

  requirements.txt를 한줄씩 읽으면서 모두 설치를 해줍니다.

'Django' 카테고리의 다른 글

모델 및 마이그레이션  (0) 2024.08.14
url 변수, 앱 분리, Naming URL Patterns(장고)  (0) 2024.08.13
Django GET 메서드 기초  (0) 2024.08.12
Django Template System 기초  (0) 2024.08.09
장고를 이용한 처음 세팅  (0) 2024.08.08