[Django 1일차] 웹사이트 구조부터 추상화까지 완전 정리 1/4 (250512)

2025. 5. 12. 11:11·특강
목차
  1. 1️⃣ 🚀 웹사이트와 웹 애플리케이션의 이해
  2. 2️⃣ 🖥️ 소프트웨어 역할과 풀스택 개념
  3. 3️⃣ 🔧 Django의 구조적 특성
  4. 4️⃣ 🍽️ 추상화를 이해하기 위한 비유: 요리 과정
  5. 5️⃣ 📚 프로그래밍에서의 추상화 개념
  6. 6️⃣ 🧠 Django와 추상화
  7. ✅ 최종 요약
  8. 💡 실전 꿀팁

📌 [Django 강의 핵심 요약] 웹사이트 구조부터 추상화까지 완전 정리


1️⃣ 🚀 웹사이트와 웹 애플리케이션의 이해

✔️ 웹사이트란?

  • 브라우저(클라이언트)를 통해 URL로 접근 가능한 인터넷 공간
  • 예: www.example.com에 접속하면 화면이 출력되는 것

✔️ 웹 애플리케이션이란?

  • 단순 화면을 넘어서 사용자와 상호작용 가능한 기능을 제공 (입력, 처리, 저장 등)
  • 예: 로그인, 쇼핑, 계좌이체 등 다양한 행위 가능

✔️ 웹 서비스란?

  • 웹사이트 + 백엔드 기능이 통합된 형태
  • 사용자가 보지 못하는 서버와의 상호작용 포함

✔️ Django는?

  • 웹사이트뿐만 아니라 백엔드 기능까지 함께 구현 가능 → 풀스택 프레임워크

2️⃣ 🖥️ 소프트웨어 역할과 풀스택 개념

✔️ 프론트엔드 (클라이언트)

  • 사용자와 직접 마주하는 화면 영역 (HTML, CSS, JS)

✔️ 백엔드 (서버/소프트웨어)

  • 사용자 요청 처리, 연산, 데이터 저장 등 내부 로직 처리

✔️ 컴퓨테이션이란?

  • 컴퓨터의 본질: 연산 장치
  • if 조건, 반복, 계산 등 서버의 핵심 기능

✔️ 풀스택 개발자란?

  • 프론트엔드 + 백엔드 모두 구현 가능
  • Django는 이 둘을 모두 지원 → 풀스택 개발 가능

3️⃣ 🔧 Django의 구조적 특성

✔️ Django가 빠른 개발을 가능하게 하는 이유:

  • 내장 기능과 프레임워크 뼈대 제공
  • 자주 쓰이는 기능이 미리 준비되어 있음

✔️ 핵심 구조: MTV 패턴 (Model-Template-View)

  • Model: 데이터 구조 정의
  • Template: 사용자에게 보여지는 HTML 화면
  • View: 요청에 대한 로직 처리 및 응답 반환

✔️ → 즉, Django는 웹 동작을 표준화 + 추상화해둠

4️⃣ 🍽️ 추상화를 이해하기 위한 비유: 요리 과정

✔️ 요리의 공통 과정:

  1. 재료 준비 (식자재, 소스, 조리 도구 등)
  2. 재료 가공 (세척, 손질, 자르기 등)
  3. 재료 조리 (볶기, 찌기, 튀기기 등)

✔️ → 이 모든 공통된 단계들을 요약하여 하나의 과정으로 설명 = 추상화

✔️ 추상화의 장점:

  • 복잡한 과정을 간단하게 표현
  • 구조화 및 반복 재사용 가능

5️⃣ 📚 프로그래밍에서의 추상화 개념

✔️ 추상화(abstraction)란?

  • 복잡한 것을 단순화하여 본질을 정의하는 것
  • 공통된 속성과 기능을 도출해 클래스로 표현

✔️ 클래스와 추상화의 관계:

  • 클래스 = 객체의 설계도
  • 예: Person 클래스
    • 속성: 이름, 나이, 성별 등
    • 메소드: say_hi()

✔️ 중요한 포인트:

  • 어떤 속성을 갖고 어떤 행동을 할지 정의 = 본질의 추출
  • 사람마다 다르게 정의될 수 있음 → 추상화는 관점 기반 설계

6️⃣ 🧠 Django와 추상화

✔️ Django는 웹 애플리케이션의 동작을 추상화한 프레임워크
✔️ MTV 구조 덕분에 표준화된 흐름 제공 → 빠른 개발
✔️ 복잡한 로직을 간단히 분리하여 유지보수 및 협업 효율 ↑

✅ 최종 요약

  • 웹사이트: 브라우저에서 보이는 화면 (정적)
  • 웹 애플리케이션/서비스: 상호작용 + 서버 기능 포함 (동적)
  • Django: MTV 패턴 기반 풀스택 프레임워크
  • 추상화: 공통된 본질을 뽑아 구조화 → 클래스, 함수 등으로 표현
  • 개발 속도 향상: 구조화된 추상화 덕분에 반복 작업 최소화

💡 실전 꿀팁

  • MTV의 역할 구분을 명확히 하고 각자의 책임을 지켜야 유지보수가 쉬워짐
  • 클래스나 함수 정의 전 "본질이 무엇인지" 고민하고 설계하는 습관을 들이자
  • Django의 기본 기능을 최대한 활용하면 개발 속도를 크게 향상시킬 수 있음

'특강' 카테고리의 다른 글

[Django 1일차] 프로젝트 세팅 튜토리얼 정리 3/4 (250512)  (0) 2025.05.12
[Django 1일차] 웹 서비스와 Django의 관계 2/4 (250512)  (0) 2025.05.12
3-4 Flask 의 유효성 검증과 세션 관리(secret,flash,email-validator,flask-mail) with 파머  (0) 2025.04.23
3-3 Flask 웹 애플리케이션에서 for 문 활용하기 with 파머  (0) 2025.04.23
3-2 1인 개발과 사업의 가능성 사이드프로젝트 활용 with 파머  (0) 2025.04.23
  1. 1️⃣ 🚀 웹사이트와 웹 애플리케이션의 이해
  2. 2️⃣ 🖥️ 소프트웨어 역할과 풀스택 개념
  3. 3️⃣ 🔧 Django의 구조적 특성
  4. 4️⃣ 🍽️ 추상화를 이해하기 위한 비유: 요리 과정
  5. 5️⃣ 📚 프로그래밍에서의 추상화 개념
  6. 6️⃣ 🧠 Django와 추상화
  7. ✅ 최종 요약
  8. 💡 실전 꿀팁
'특강' 카테고리의 다른 글
  • [Django 1일차] 프로젝트 세팅 튜토리얼 정리 3/4 (250512)
  • [Django 1일차] 웹 서비스와 Django의 관계 2/4 (250512)
  • 3-4 Flask 의 유효성 검증과 세션 관리(secret,flash,email-validator,flask-mail) with 파머
  • 3-3 Flask 웹 애플리케이션에서 for 문 활용하기 with 파머
Chansman
Chansman
안녕하세요! 코딩을 시작한 지 얼마 되지 않은 초보 개발자 찬스맨입니다. 이 블로그는 제 학습 기록을 남기고, 다양한 코딩 실습을 통해 성장하는 과정을 공유하려고 합니다. 초보자의 눈높이에 맞춘 실습과 팁, 그리고 개발하면서 겪은 어려움과 해결 과정을 솔직하게 풀어내려 합니다. 함께 성장하는 개발자 커뮤니티가 되기를 바랍니다.
  • Chansman
    찬스맨의 프로그래밍 스토리
    Chansman
  • 전체
    오늘
    어제
    • 분류 전체보기 (787) N
      • Python (32)
      • 프로젝트 (110) N
      • 과제 (25)
      • Database (40)
      • 멘토링 (11)
      • 특강 (37)
      • 기술블로그 (41)
      • 기술블로그-Fastapi편 (33)
      • 기술블로그-Django편 (153)
      • 기술블로그-Flask편 (36)
      • AI 분석 (5)
      • HTML & CSS (31)
      • JavaScript (17)
      • AWS_Cloud (21)
      • 웹스크래핑과 데이터 수집 (14)
      • Flask (42)
      • Django (77)
      • Fastapi (16)
      • 연예 (14)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    뷔
    college reunions
    life reflection
    titaniumcase
    americanlaw
    lawsuitculture
    travel ban
    basalcellcarcinoma
    homebartrend
    bts
    classaction
    btsreunion
    btsdischarge
    btscomeback
    newpoliticalparty
    youngprofessionals
    livebroadcast
    btsjungkook
    self-growth
    americaparty
    remittance
    urbantrends
    RM
    gpterror
    smartphonedurability
    trumpmuskclash
    global politics
    chatgpterror
    chinanightlife
    hotcoffeecase
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Chansman
[Django 1일차] 웹사이트 구조부터 추상화까지 완전 정리 1/4 (250512)

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.