flask101
flask101 copied to clipboard
깔끔한 파이썬 탄탄한 백엔드 소스코드 정리
깔끔한 파이썬 탄탄한 백엔드
- 깔끔한 파이썬 탄탄한 백엔드 책의 내용 중 중요 챕터 위주로만 정리함
- 원활한 실행을 위해서 다음의 작업들을 수행 pyenv virtualenv를 이용한 가상환경 설정
pyenv virtualenv 3.7.7 flask101
pip install --upgrade pip
pip install -r requirements.txt
httpie 설치
brew install httpie # macOS일 경우
sudo apt install httpie # ubuntu일 경우
01. 파이썬 설치 및 개발 환경구성
- 본격적인 설치에 앞서
- 파이썬 설치
- 파이썬 가상 환경 설치
- 터미널 환경
- 깃
- 셸
- 다양한 에디터 소개
02. 현대 웹 시스템 구조 및 아키텍쳐
- 웹 시스템들의 발전 역사
- 현대 웹 시스템들의 구조 및 아키텍쳐
- 현대 개발팀의 구조
03. 첫 API 개발 시작
04. HTTP의 구조 및 핵심 요소
- HTTP
- HTTP 통신 방식
- HTTP 요청 구조
- HTTP 응답 구조
- 자주 사용되는 HTTP 메소드
- 자주 사용되는 HTTP Status Code와 Text
- API 엔드포인트 아키텍쳐 패턴
05. 본격적으로 API 개발하기
06. 데이터베이스
- 데이터베이스 시스템
- 관계형 데이터베이스 시스템 VS 비관계형 데이터베이스 시스템
- SQL
- 데이터베이스 설치하기
- API에 데이터베이스 연결하기
- SQLAlchemy를 사용하여 API와 데이터베이스 연결하기
07. 인증
08. unit test
- 테스트 자동화의 중요성
- UI test / End-to-End test
- integration test
- unit test
- pytest
- 미니터 API unit test
- unit test의 중요성
09. AWS에 배포하기
따로 정리할 필요 없음. 책을 보고 따라해볼 것!
- AWS
- RDS
- 미니터 API 배포
- load balancer
- AWS Resource Clean up
- 참고
- https://github.com/aisolab/flask101_deploy_test
- https://github.com/rampart81/python-backend-book/tree/master/chapter7
10. API 아키텍쳐
- 코드 구조의 중요성
- 레이어드 패턴
- 레이어드 아키텍처 적용하기
- 전체 코드 구조와 app.py
- unit test
- View Unit Test (5에 내용 포함)
11. 파일 업로드 엔드포인트
11-6 ~ 11-11에서는 코드만 반영, 내용은 책을 보고 숙지 및 따라할 것
- 사용자 프로파일 사진 업로드 엔드포인트
- 프로파일 이미지 파일 업로드 엔드포인트
- 프로파일 이미지 GET 엔드포인트
- AWS S3에 이미지 파일 저장하기
- CDN
- AWS S3
- AWS S3 생성 및 설정
- AWS IAM 사용자 생성
- 파일 업로드 엔드포인트를 S3와 연동하기
- unit test
- 배포
12. 더 좋은 백엔드 개발자가 되기위해 다음으로 배워보면 좋은 주제들
- 자료구조 및 알고리즘
- 데이터베이스의 더 깊은 이해
- database migration
- micro service architecture
- 리눅스 & 데브옵스