개발 · 프로그래밍

/

백엔드

장고 설계철학으로 시작하는 파이썬 장고 입문

장고 개발을 위한 필수 파이썬 문법과 장고 설계철학에 대한 깊은 이해를 통해, 장고 웹개발을 제대로 시작해보세요.

(4.7) 수강평 58개

수강생 807명

Thumbnail

초급자를 위해 준비한
[백엔드, 웹 개발] 강의입니다.

이런 걸
배워요!

  • 장고 개발을 위한 필수 파이썬 문법

  • 윈도우/맥에서의 명쾌한 파이썬/장고 개발환경 설정

  • 장고 설계철학에 대한 깊은 이해

장고 철학에 대한 이해로
장고를 바르게 누려보세요 💪

🚀 2024년 11월 29일(금)부터 본 강의를 무료로 전환했습니다. 이번 전환을 통해 보다 많은 분들에게 장고가 전파될 수 있기를 기대합니다.

강의 듣고 PyCharm Professional 쿠폰 받자! 🎫

장고 개발의 최적의 IDE인 PyCharm Professional (유료 툴)을 6개월 동안 사용하실 수 있도록 JetBrains으로부터 6개월 리딤코드를 후원받았습니다. 완강, 신청 링크에서 신청서를 작성해주세요.

  1. 쿠폰 신청은 1인 1회 가능합니다.
  2. 강의 중에는 PyCharm Professional 트라이얼 1개월 라이센스로 진행합니다.
  3. 본 강의를 완강하신 분에 한해서 신청 가능합니다.
    1. 신청 링크 : https://forms.gle/mvDwLQmaCz4Z2vQD9
  4. 신청서 확인에는 2~3일 정도 소요됩니다. 확인되는 대로 신청하신 이메일 주소로 쿠폰을 보내드리겠습니다.
    1. 받은 쿠폰은 즉시 등록해주세요. 등록하지 않으면 JetBrains로부터 더 이상 라이센스 지원을 받을 수 없게 됩니다.
  5. Tip: 본 쿠폰을 사용하신 후에, 해당 계정에서 이어서 유료로 JetBrains 구독하시면, 할인된 가격으로 구독하실 수 있습니다.

참고) 학생/교사이신 분은 JetBrains의 학생 지원 프로그램을 통해, JetBrains의 모든 툴을 1년 단위로 라이센스 받으실 수 있습니다. 해당 프로그램을 신청하시면 수일 내로 라이센스를 발급받으실 수 있습니다.

제대로 시작하고픈 장고 입문자를 위한 장고 강의 🔥

장고에 필요한 문법 설명과 함께 장고 설계 철학을 깊게 설명해 드리는 이론 중심의 입문 강의입니다. 기존의 <파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트> 강의가 있지만 볼륨이 커서 입문자분들에게 부담되실 수도 있어 입문용으로 강의를 제작하게 되었습니다. 이전 강의에서 다루지 않은 입문용 내용으로 구성했습니다.

하지만, 웹개발이 처음이신 분들에게는 어려우실 수 있습니다. 웹개발이 처음이신 분들께서는 생활코딩의 <Python Django Web Framework> 유튜브 강좌를 먼저 학습하시기를 추천드립니다.

장고 개발을 위한
필수 파이썬 문법

장고 웹 프레임워크는 하나의 거대한 코드 덩어리입니다. 이를 잘 활용하기 위해서는 '필수 파이썬 문법'에 대한 이해가 필수입니다. 그런데 파이썬 문법을 수박 겉핥기로만 아신다면, 실습에서 장고의 여러 예시 코드를 접하셨을 때 코드 읽기도 어렵고 수정도 어려우실 것입니다. 본 강의에서 다루는 필수 파이썬 문법을 통해 장고 코드에 대한 두려움을 떨쳐내세요.

장고 설계철학에 대한
깊은 이해

한국인이 미국식 영어를 원활히 구사하려면 미국 문화에 대한 이해와 존중이 필요합니다. 프레임워크를 쓴다는 것 역시 그 철학을 명확히 이해하고 존중하는 데에서 시작해야 합니다. 그렇지 않다면 프레임워크라는 바퀴를 제대로 활용하지 못하고 바퀴를 재발명하고 있는 자신을 발견하시게 될 것입니다.

인생은 짧습니다. 파이썬과 장고를 명확히 이해/활용하여, 여러분의 시간을 아끼세요.


이런 분들께 추천해요 🙋‍♀️

파이썬 기초 문법 학습 후, 웹 앱 개발 학습을 시작하려는 분

장고를 학습하는 데 필요한 기초 문법에 대한 이해가 부족한 분

장고의 설계 철학을 통해 장고를 더욱 깊이 이해하고 싶은 분

장고로 구현된 애플리케이션 코드를 자유롭게 읽고 활용하고 싶은 분


강의 특징 ✨

파이썬 기초 문법만 알면 시작할 수 있는
웹 입문자 대상 강의

각 장고 기능 이해에 필요한 문법을
실제 예제와 함께!

14년 차 장고 개발자와 함께
장고 설계철학을 깊이 있게!

전 강의 한글 자막으로
강의 내용 파악을 빠르게!


이런 걸 배워요 📚

1. 개발환경 구축

최신 트렌드의 윈도우/맥 개발환경 설정을 안내드립니다.

  • 필요한 프로그램을 일일이 수동으로 설치하지 않고, 패키지 매니저(윈도우: scoop, 맥: homebrew)를 통해 명령행에서 한 번에 설치합니다.
  • PC에 다수의 파이썬을 설치하고 관리하는 것은 어렵습니다. 하지만 pyenv를 통해 손쉽게 프로젝트마다 다른 파이썬 버전/인터프리터를 사용하실 수 있습니다.
  • 전 세계에서 가장 인기 있는 에디터가 Visual Studio Code임에는 틀림이 없습니다. 하지만 장고 개발에서는 아닙니다. 장고 개발의 최고의 IDE인 PyCharm Professional을 설치하고 안내해드립니다.

2. 장고 핵심 설계철학 Overall

장고 설계철학 중 '일반' 챕터를 다룹니다. 장고는 덩치가 커서 느리고 배우기 어렵다는 인식이 있습니다. 장고의 설계철학 중에 '느슨한 결합'이 있습니다. 장고는 기본에서 제공하는 기능이 많은 것뿐입니다. 그에 반해 Flask는 막연히 빠르다고 생각하시는 분들이 많은데, 이는 Micro Framework로서 기능이 적은 것입니다. 애플리케이션은 성능은 언어/프레임워크로 인해 결정되는 것이 아닙니다. 개발하는 사람에게 달려있습니다.


 

3. 클라이언트 요청 처리와 URL 매핑

장고의 설계철학 <뷰>와 <URL 설계>에 대해서 살펴보겠습니다.

  • 다루는 파이썬 문법 : 함수, 위치/키워드, 디폴트 인자, 클로저 (Closure), 일급 (first-class) 함수/클래스, 타입 힌팅 (Type Hinting)
  • 장고는 뷰 구현을 함수(Callable Object)로 구현하기에 뷰 구현이 단순해집니다. 스프링에서의 요청 처리와 비교도 해봅니다.
  • 실습 : 포스팅 목록 페이지와 포스팅 보기 페이지를 구현해봅니다.


 

4. 템플릿 시스템

장고 템플릿 시스템을 활용하여 이메일 제목/내용을 완성하고, SMTP 이메일 발송 실습해보겠습니다.

  • 이메일 메시지 문자열을 장고 템플릿 시스템을 활용하여 효율적으로 조합하는 방법
  • 네이버 메일에서 SMTP (Simple Mail Transfer Protocol) 설정하는 방법
  • 장고 '커스텀 관리 명령' 시스템을 활용한 SMTP 메일 발송


 

5. 장식자와 뷰

장고에서 활발히 사용되는 장식자 (Decorators) 문법의 필요성에 대해서 살펴보고, 장식자를 만드는 방법에 대해서 살펴보겠습니다.

  • 파이썬에서 AOP (관점지향 프로그래밍, Aspect Oriented Programming)를 구현하는 방법으로서 장식자에 대해서 깊게 살펴봅니다.
  • 장고에서의 장식자 소개 : cache_page (뷰 응답 캐싱), login_required (비로그인 시에 로그인 페이지로 이동), transaction.atomic (DB 트랜잭션), user_passes_test (커스텀 룰로 유저 권한 체크), permission_required (유저 권한 체크)
  • 실습 : 특정 페이지에 접근할 때, 유저의 로그인 여부를 login_required 장식자를 통해 손쉽게 체크해보겠습니다.


 

6. 장고 모델을 활용한 데이터베이스 처리

장고 설계철학 <모델>에 대해서 살펴보고, ORM (Object Relational Mapping) 기술로서 지원하는 <장고 모델>에 대해서 살펴봅니다.

  • 장고 모델에서는 클래스 문법이 사용됩니다. 파이썬 클래스 문법에서 자주 헷갈리는 클래스 변수/인스턴스 변수 문법의 차이와 장고 모델 필드 정의 시에 사용되는 디스크립터(Descriptor) 문법에 대해서 살펴봅니다.
  • 모델 클래스를 정의하고, 마이그레이션 기능을 통해 데이터베이스 테이블이 생성/관리되는 과정에 대해서 간략히 살펴봅니다.


 

7. 데이터베이스 API

장고 설계철학 <데이터베이스 API>에 대해서 살펴봅니다.

  • 간결하고 강력한 구문 : 가능한 한 적은 구문으로 풍부하게 표현력이 뛰어난 쿼리를 생성할 수 있어야 합니다.
  • SQL 효율성 : 성능 높게 '관련 객체'를 함께 쿼리하는 방법을 제공합니다.
  • 필요한 경우 SQL 문을 작성하기 쉬워야 : 모델의 개입 없이도 SQL 쿼리를 실행할 수 있습니다.


 


예상 질문 Q&A 💬

Q. 장고를 배우면 왜 좋나요?

장고는 파이썬 풀스택 웹프레임워크입니다. 장고 프레임워크를 올바르게 이해하면, 웹서비스를 보다 빠르게 개발하실 수 있습니다. "시간"이 가장 큰 비용입니다. 인생은 짧습니다. 장고를 통해 여러분의 시간을 아끼시고 비즈니스에 집중하세요.

Q. 수강 전에 갖춰야 할 환경, 기타 유의 사항이 있나요?

인터넷이 되는 윈도우 혹은 맥 컴퓨터만 있으시면 됩니다. 개발환경 세팅에 대해서는 본 강의에서 자세히 알려드립니다.

Q. 본 강의의 내용을 익히면 어떤 일을 할 수 있나요?

본 강의는 강의 철학을 이해하는 데에 초점이 맞춰져 있습니다. 그래서 세부적인 장고 기능에 대해서 다루지는 않습니다. 본 강의 수강 후에는 파이썬/장고 개발환경을 구축하시는 데에 두려움이 없으실 것이며, 장고의 철학을 바르게 이해하시게 됩니다. 구현은 장고 프로젝트 생성, 모델 생성, 모델에 대한 간단한 list/detail 페이지를 구현하실 수 있습니다.

Q. 장고에 대해서 보다 자세하게 익히려면?

제가 인프런에 공개한 <파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트> 강의를 수강하시면 됩니다.


지식공유자 소개 ✒️

파이썬과 장고에 진심인 소프트웨어 개발자 이진석입니다.

  • 파이썬 홀릭, 장고 실무 12년 차 개발자
  • 장고 질답 커뮤니티 Ask Company with Django/React (구. Ask Django) 운영자
  • 파이썬/장고 교육 서비스 Ask Company 운영자
  • 대전 <파이썬 사랑방> 운영자
  • Microsoft Azure MVP 어워드 수상 (2016년~2021년, Microsoft MVP가 무엇인가요?)
  • 서울대학교, 벤처경영학 연합전공, 파이썬/장고 강의 "벤처창업 웹프로그래밍" 강사 (2016년/2017년)
  • 패스트캠퍼스, 웹서비스 개발 캠프 (파이썬/장고) 3기 강사, 2기 조교 (2015년)
  • 다수 대학 및 기업 강의 및 자문 : 서울대학교, 카이스트, 부산대학교, 한양대학교, 국민대학교, 삼성전자, LG전자, LS그룹, SK Planet, 엔코아, KB증권, SK텔링크, 현대자동차그룹 이노션, 코스콤, 네이버 NIT Service, 아트센터 나비, 한국은행, 한국산업기술평가원 등

유튜브 영상

장고 라이브 코딩쇼 (50분. 유튜브 St.) 영상을 통해, 장고 웹개발의 강력함을 라이브 코딩으로 보여드립니다.

당신의 파이썬/장고/리액트 페이스메이커가 되겠습니다 🏃‍♀️🏃‍♂️🏃.

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • 파이썬 웹서비스 개발을 처음 시작하시는 분

  • 장고 개발을 위한 필수 파이썬 문법을 익히고 싶으신 분

  • 빠르게 장고의 설계철학을 이해하고 싶으신 분

선수 지식,
필요할까요?

  • 파이썬 제어구조/함수/클래스/상속 모듈 정도의 기초 문법

파이썬과 장고에 진심인 소프트웨어 개발자

대외 활동

  • 오프라인 교육 : SK텔링크, LS그룹, 삼성 디스플레이, 부산대학교 정보화본부, 서울대학교 벤처경영학연합전공, 패스트캠퍼스 웹서비스 개발 캠프 3기 등

  • 기술 자문 : 유클리드소프트, 부산대학교, 한국산업기술평가관리원, 한국방송통신전파진흥원 등

여러분의 파이썬/장고/리액트 페이스메이커가 되겠습니다. 😉

커리큘럼

전체

29개 ∙ (4시간 10분)

수업 자료

가 제공되는 강의입니다.

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!