메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

처음 배우는 플라스크 웹 프로그래밍

대규모 애플리케이션 개발부터 테스트, 배포까지

한빛미디어

집필서

판매중

  • 저자 : 윤정현
  • 출간 : 2021-08-30
  • 페이지 : 260 쪽
  • ISBN : 9791162244678
  • 물류코드 :10467
  • 초급 초중급 중급 중고급 고급
4.4점 (27명)
좋아요 : 1

플라스크 웹 애플리케이션 개발을 위한 최적의 가이드

 

이 책은 파이썬 프레임워크인 플라스크의 기본을 빠르게 익히고 애플리케이션을 직접 만들며 필요한 기능을 배우는 입문+실무 활용서이다. 다양한 개발 상황을 통해 비즈니스 로직 작성법과 플라스크의 사용 방법을 터득할 수 있도록 애플리케이션 개발, 테스트, 배포의 과정으로 진행된다. 

 

 

상세이미지_처음 배우는 플라스크 웹 프로그래밍.jpg

윤정현 저자

윤정현

현재 파이썬 개발 튜터 및 컨설팅 업무를 하고 있다. 선린인터넷고등학교를 졸업 후 서버 개발자로 활동 중이다. 250만 유저가 사용하는 서비스와 40대 글로벌 서버 개발 경험이 있고 아웃소싱 및 정부 R&D 과제에 참여했다.

CHAPTER 1 플라스크 시작하기

1.1 웹 소개 

1.2 플라스크 소개 

1.3 플라스크 설치 

1.4 플라스크 기초 

1.5 플라스크 응용 

 

CHAPTER 2 플라스크로 애플리케이션 만들기

2.1 플라스크 준비 

2.2 플라스크 확장 

2.3 플라스크 테스트 

2.4 플라스크 비동기 

 

CHAPTER 3 플라스크로 영화 예매 사이트 만들기

3.1 플라스크 세팅하기 

3.2 영화 예매 데이터베이스 설계하기 

3.3 회원가입, 로그인, 로그아웃 페이지 만들기 

3.4 영화 목록 페이지 만들기

3.5 영화관 목록 페이지 만들기 

3.6 영화 상영 시간표 페이지 만들기 

3.7 영화 좌석 예매 페이지 만들기 

 

CHAPTER 4 플라스크로 블로그 만들기

4.1 플라스크 세팅하기 

4.2 블로그 데이터베이스 설계하기 

4.3 블로그 글쓰기 페이지 만들기 

4.4 블로그 글 목록 페이지 만들기 

4.5 블로그 글 검색 기능 만들기 

4.6 블로그 관련 글 기능 만들기

4.7 블로그 댓글 기능 만들기 

4.8 블로그 조회 수 기능 만들기 

4.9 블로그 테스트 코드 작성하기 

 

CHAPTER 5 플라스크로 쇼핑몰 만들기

5.1 플라스크 세팅하기 

5.2 쇼핑몰 데이터베이스 설계하기 

5.3 쇼핑몰 카테고리 만들기 

5.4 쇼핑몰 제품 목록 만들기 

5.5 쇼핑몰 배송지 만들기 

5.6 쇼핑몰 장바구니 만들기 

5.7 쇼핑몰 구매하기 만들기 

 

CHAPTER 6 플라스크 배포

6.1 AWS 엘라스틱 빈스토크를 이용한 배포 

6.2 GitHub Action을 이용한 배포

플라스크는 파이썬 마이크로 웹 프레임워크입니다. 이 책은 플라스크 사용법을 빠르게 익히고 플라스크와 플라스크 확장 모듈을 이용해 애플리케이션을 만드는 방법에 대해 알아봅니다. 먼저 플라스크 기초 내용을 다루고, 각 기능을 빠르게 탐색하여 대규모 애플리케이션 개발을 위해 실무에서 쓰이는 코드와 인프라를 준비하는 과정으로 구성되어 있습니다.

 

 

이 책의 구성


1장_플라스크 시작하기

플라스크의 특징과 도입 사례를 간단히 소개하고 파이썬 설치, 가상환경 생성과 및 의존성 관리를 위한 개발환경 구축, 실습 도구인 파이참 설치 과정을 설명합니다. 개발환경을 구축하고 플라스크 애플리케이션을 만드는 법과 라우팅을 통해 API를 만드는 법을 배웁니다. 또한 플러거블 뷰와 블루프린트 등 플라스크에 추가된 기능에 대해 설명합니다.

 

2장_플라스크로 애플리케이션 만들기

AWS RDS와 깃(Git)을 설치하고 저자의 깃허브(GitHub)에 공개된 플라스크 예제를 통해 사용법을 숙지합니다. 추가로 플라스크 예제를 통해 플라스크 확장 모듈에 대해 배우고 어떻게 사용되는지 확인하고 장고와 동일한 기능을 구현합니다. 마지막으로 유닛 테스트 모듈을 통해 테스트해보고 셀러리와 RxPY를 이용한 플라스크 비동기 구현에 대해 알아봅니다.

 

3장_플라스크로 영화 예매 사이트 만들기

플라스크를 이용해 실제 웹사이트를 만들어보는 첫 번째 실습으로 영화 예매 사이트 예제를 함께 익혀봅니다. 기본적인 플라스크 환경 세팅 후 영화 예매 데이터베이스 설계, 회원가입/로그인/로그아웃 페이지 만들기, 영화 목록 페이지 만들기, 영화관 목록 페이지 만들기, 영화 상영 시간표 페이지 만들기, 좌석 예매 페이지 만들기의 순서로 실습을 진행합니다.

 

4장_플라스크로 블로그 만들기

플라스크로 블로그를 만들어보면서 전체적인 구조를 이해해봅니다. 기본적인 세팅 후 블로그 데이터 설계, 글쓰기 페이지 만들기, 글 목록 페이지 만들기, 글 검색 기능 만들기, 블로그 관련 글 기능 만들기, 댓글 기능 만들기, 조회 수 기능 만들기의 순서로 실습을 진행하고 테스트 코드를 작성해봅니다.

 

5장_플라스크로 쇼핑몰 만들기

실무에서 가장 많이 활용할 수 있는 쇼핑몰 사이트를 만들어봅니다. 플라스크 환경 세팅 후 쇼핑몰 데이터베이스 설계, 쇼핑몰 카테고리 만들기, 제품 목록 만들기, 배송지 만들기, 장바구니 만들기, 구매하기 만들기의 순서로 실습을 진행합니다.

 

6장_플라스크 배포

플라스크 애플리케이션을 배포하는 법을 배웁니다. AWS 클라우드에서 애플리케이션을 신속하게 배포하고 관리할 수 있는 AWS 엘라스틱 빈스토크를 이용하는 법을 배우고, 파이썬 최신 버전도 설치할 수 있는 Dockerfile을 이용한 배포와 무중단 배포를 해봅니다. 또한 CI/CD 툴인 GitHub Action을 이용해 자동으로 배포하는 인프라 구축 방법에 대해 알아봅니다.

 

 

추천사(베타리딩 후기)

 

지루한 문법 설명이나 개념 설명보다 플라스크 기반의 실용적인 웹 애플리케이션 개발을 원한다면 이 책을 추천합니다. 개발환경 구축부터 배포까지 다양한 실습을 영화 예매, 블로그, 쇼핑몰 사이트 예제를 통해서 빠르게 익힐 수 있습니다. 플라스크를 더 쉽게 다룰 수 있는 저자의 노하우를 짧게나마 볼 수 있고, 실습도 흔히 볼 수 사이트로 구성되어 있기 때문에 예제를 활용하여 내가 원하는 웹사이트를 만들어 볼 수 있습니다. 사전에 웹 애플리케이션 개발이나 기본적인 DB 지식, 파이썬 문법에 충분히 익숙하다면, 이 책으로 얻어 갈 수 있는 것이 많다고 생각합니다.

인천대학교_김민성

 

개발환경 구축부터 테스트, 배포까지 플라스크 기반 웹 애플리케이션 구축의 일련 과정을 한눈에 조망할 수 있다는 것이 이 책의 가장 큰 장점입니다. 조금만 응용하면 다양한 애플리케이션을 만드는 데 도움이 되는 영화 예매 사이트, 블로그, 쇼핑몰 등의 대표성 있는 실습 예제도 마음에 들었습니다. 셀러리 및 RxPY를 활용한 비동기 구현과 ORM 기반의 DB 연동을 자세히 다루고 있으며, 개인적으로 이 책 덕분에 GitHub Action이나 AWS 엘라스틱 빈스토크를 경험할 수 있던 것이 큰 소득이었습니다. 

한국외국어대학교 정보지원처_허민

가히 개발자 전성시대라 해도 좋을 듯 하다.
컴퓨터 전공이 아니더라도 프로그래밍에 많은 관심을 가지고 다양한 언어를 공부한다.
그 중 독보적인 것이 바로 '파이썬'이다.

파이썬의 장점 중 하나는 분야를 가리지 않고 사용할 수 있다는 것이다.
물론, 적합성 여부는 프로젝트의 성격과 개발자의 성향에 따라 달라질 수 있다.
'웹 어플리케이션'도 가능하다.
파이썬 분야에서는 장고라는 걸출한 프레임워크가 있지만, '플라스크' 또한 멋진 프레임워크이다.
이 둘의 차이를 쉽게 표현하면 장고는 각종 부가장치를 장착하였기에 편의성은 좋지만 조금은 무거운 차량이고, 플라스크는 자신이 원하는 최적의 기능만을 탑재한 커스텀 튜닝 차량이라고 할 수 있다.
무엇이 좋고, 나쁘고의 차이가 아니라, 원하는 것이 무엇이냐의 차이이다.

이 책 '처음 배우는 플라스크 웹 프로그래밍'은 '플라스크'에 대한 모든 것을 다루고 있다.

 

flask.jpg

 

이 책을 보면서 3번 놀랐다.
처음 이 책을 봤을 때 생각보다 얇은 두께에 놀랐다.
보통 프로그래밍 언어 책들은 500페이지를 가볍게 넘기는데 이 책은 250여 페이지에 불과하다.
다음으로 상세한 설명이다.
얇은 책에 이토록 상세한 설명을 넣을 수 있다니...
무엇이든 온전하게 핵심을 꿰뚫고 있지 못하면 쉽게 설명할 수 없다.
플라스크에 대한 저자의 내공을 알 수 있었다.
마지막이 가장 놀라웠는데, 플라스크를 이용한 프로젝트를 3개나 보여주고 있다.
보통 프로그래밍을 공부할 때 가장 많이 개발하는 것이 '블로그'이다.
그런데 영화예매사이트와 쇼핑몰도 함께 보여준다.
이 3가지 프로젝트만 제대로 개발할 수 있다면 이미 초보 수준은 넘어섰다고 할 수 있을 것이다.
단지 프레임워크만 배우는 것이 아니라 실전 프로젝트 응용을 통해 탄탄한 실력을 키울 수 있다.

플라스크를 배우기에 이만한 책은 없다고 생각된다.
'처음'이라는 책 제목이 있지만, 파이썬에 대한 기본지식은 갖추고 있어야 한다.
이 책을 보며 플라스크의 매력에 흠뻑 빠질 수 있었다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.



과정과정마다 사진을 통해 설명해주고 있고, 예제까지 분석해주기 때문에

처음엔 이해가 잘 안갔지만 페이지를 뒤로 넘길수록 직접 실행해보면서 체득되는게 컸던것 같다.

 

설명이 어느정도로 자세하냐면, 각 코드별 설명부터 클래스를 어떻게 해석하면 될지,

그리고 프로젝트를 구성하는 폴더 하나하나에 대한 역할을 설명해준다.

처음에 막! 외우려고 하는 것보다는 직접 쳐보며 하나씩 이해하면 금방 플라스크를 통해 개발부터 테스트, 배포하는 방법까지 체득할 수 있을 것 같다.

 

다만 실습을 진행함에 있어 어느정도의 개발 경험이 쌓여있지 않는다면 구글링하는데

시간이 되게 많이 필요할 것 같다.

혹시나 프로젝트 경험이 적다면 친구들과 스터디하며 사용할 부교재로 추천한다 :)



 

 

처음 배우는 플라스크 웹 프로그래밍 .jpg

 

넷플릭스 없이 살 수 없는 요즘! 넷플릭스가 플라스크를 이용하여 만들어졌다는것을 알고 계셨나요? 사실은 컴퓨터를 전공한 저에게도 플라스크 프레임워크는 조금 생소하게 느껴졌습니다.

 

 

플라스크는 파이썬 마이크로웹 프레임워크로 특정 도구나 라이브러리가 필요하지 않는다는 큰 장점이 있어 국내외 다양한 웹사이트 구축에 활용되고 있습니다.

 

그 어떤 책보다 실제 개발 과정에 초점이 맞춰져 있어 영화 예매 사이트, 블로그, 쇼핑몰을 직접 구축해보고 배포하는 실습을 통해 플라스크 확장 모듈을 활용한 대규모 애플리케이션 개발의 모든과정을 경험해 볼 수 있습니다. 파이썬에 대한 기본적인 지식을 갖춘 분이라면 플라스크라는 유용한 프레임워크를 쉽고 빠르게 터득할 수 있게 됨은 물론 사례와 예제를 중심으로 애플리케이션을 만드는 데에 훌륭한 인사이트를 얻어갈 수 있을 것이라고 생각됩니다.

 

 

 "한빛미디어 <나는 리뷰어다>활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 


한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.


현대 사회에서 소프트웨어(SW)는 세상을 움직이는데 핵심적인 역할을 한다. 과거에는 소프트웨어(SW)를 컴퓨터에 직접 설치해야 했지만, 점점 더 많은 소프트웨어(SW)가 웹 환경에서 돌아가는 서비스(Service)로 변하고 있다.

 

이러한 소프트웨어를 만들 때 사용하는 언어 중 파이썬(Python)은 언어의 간결함과 생산성 덕분에 인기가 많다. 다른 프로그래밍 언어처럼 파이썬(Python) 또한 웹 개발을 위한 프레임워크를 제공한다. 대표적인 웹 프레임워크는 장고(Django), 플라스크(Flask), 패스트 API(FastAPI)가 있다.

 

한빛미디어에서 출간한 <처음 배우는 플라스크 웹 프로그래밍> 제목에서 알 수 있듯이 마이크로 웹 프레임워크(Micro Web Framework)에 해당하는 플라스크(Flask)를 소개한다. 책은 약 250 쪽인데 플라스트(Flask) 기본 기능 및 확장 모듈 사용방법을 소개한 뒤, 3개의 미니 프로젝트*를 실습하도록 안내한다.

 

* (미니 프로젝트) 영화 예매 사이트 만들기, 블로그 만들기, 쇼핑몰 만들기

 

이 책의 장점으로는 실습을 하면서 자연스럽게 다양한 기술*을 접할 수 있다는 점이다. 또한, 3개의 프로젝트를 통해 자연스럽게 반복학습이 되어 내용을 이해하는 데 도움이 되었다.

 

* (사용하는 기술) Flask, Flask-SQLAlchemy, Flask-Script, Flask-WTF, Flask-Login, Celery, RxPY, Blueprint, PyCharm, AWS Relational Database Service(RDS), AWS Simple Queue Service(SQS), AWS Elastic Beanstalk, GitHub Action 등

 

책을 읽으며 아쉬웠던 점으로는 크게 두 가지가 있다. 첫째, 실습을 하며 참고할 수 있는 단계별 소스코드를 제공하지 않는다. 둘째, 책 중간에 필요한 그림이나 설명이 없을 때가 있다. 책을 구매하여 읽는 이유는 궁극적으로 시간을 절약하기 위해서인데 다른 책들과 다르게 초기 코드, 중간 코드, 완성 코드를 제공하지 않아 번거로웠다. 또한, 실습 중 오류가 발생하여 구글링을 하며 많은 시간을 소비했다. 이 두 가지 점은 다음에 반드시 개선되었으면 한다.

 

개인적으로는 최근에 출시한 패스트 API(FastAPI) 가 가장 끌리지만, 이번 기회를 통해 마이크로 웹 프레임워크(Micro Web Framework)인 플라스크(Flask)에 대해 알아갈 수 있어서 유익했다

 

많은 파이썬 프로그래머들 사이에서 공통된 질문이 있다.

플라스크와 장고 중 어떤 프레임워크가 더 낫나?

플라스크와 장고 중 웹 개발에는 어떤 프레임워크를 사용하는 것이 더 나을까?

플라스크와 장고는 비슷한 면도 있고 다른 면도 있다. 따라서 각 프레임워크의 고유한 기능을 공평하게 파악한 후 구현하고자 하는 애플리케이션에 적합한 프레임워크를 선택하는 것이 현명하다.

장고는 풀 스택 웹 프레임워크인 반면 플라스크는 가볍고 확장성 있는 프레임워크이다. 다르게 표현하면 장고는 무거운 반면 플라스크를 사용하면 스스로 구현해야 할 것이 늘어난다.

플라스크를 사용한다면 몇 가지 필수적인 프로그래밍 스킬로 충분하지만, 장고를 사용한다면 Hello World 수준의 프로그램 구현에도 사전에 숙지해야 할 것들이 꽤 존재한다. 반면 프로젝트 구조가 커질수록 새로운 기능을 추가하기에 벅찬 플라스크보다는 장고가 어울린다.

물론 실무적인 파이썬 지식을 가진 프로그래머라면 어느 프레임워크를 사용하더라도 문제없을 것이다. 문제가 생겨도 방대한 자료의 문서와 활성화된 커뮤니티에서 충분한 도움을 얻을 수 있다.

내가 감히 조언한다면 플라스크보다 장고는 복잡하고 방대하므로 러닝 커브가 깊은 편이기 때문에 플라스크로 시작하여 웹 프레임워크의 맛을 느껴본 후 보다 정교한 애플리케이션 구현을 위해 장고로 넘어가는 것이 좋다고 본다.

여기에 플라스크를 학습하기 좋은 책을 한 권을 추천해본다.

 

 

KakaoTalk_20210923_010835842.jpg

 

이 책의 내용은 플라스크 기초에서 시작하여 확장 모듈을 사용하여 장고 규모의 프레임워크를 구현하는 과정을 통해 심화 학습을 유도하는 방식으로 진행된다.

 

순서대로 학습을 진행하다 보면 어느새 대규모 애플리케이션을 실습하고 있을 것이다.

 

 

KakaoTalk_20210923_010835842_01.jpg

 

KakaoTalk_20210923_010835842_02.jpg

 

KakaoTalk_20210923_010835842_03.jpg

 

KakaoTalk_20210923_010835842_04.jpg

 

KakaoTalk_20210923_010835842_05.jpg

 

KakaoTalk_20210923_010835842_06.jpg

 

파이썬을 처음 사용하는 프로그래머가 이 책을 통해 플라스크로 웹 프로그래밍을 시작한다면 백엔드와 프런트엔드의 핵심 개념을 학습하는 데 도움이 될 것이다.

 

플라스크를 사용해보고 싶다면 참고하면 좋을 책이다.

처음 IDE 세팅하는 것부터 가상환경 세팅, 기타 파이썬 패키지 설치까지 코드를 읽을 수 있는 사람이라면 어렵지 않게 따라할 수 있다. 또 기초만 설명하는 게 아니라 AWS와 함께 사용하는 개발 업무까지도 같이 엮어 있어서 실무까지 참고하고 싶다면 참고할 만 하다. 마지막 배포단원까지 읽는다면 저자가 의도한 플라스크 초중고 레벨까지 가본 셈이 된다.

 

지루한 설명은 최대한 자제한 것 같고 바로 실습으로 따라해보고 싶은 사람에게는 좋을 내용이다. 실습 또한 간단한 애플리케이션 구동부터 영화 예매 사이트, 블로그, 쇼핑몰 등 대표적인 예제를 집어넣었다. 보통 클라우드 실습할 때 쇼핑몰 홈페이지랑 DB를 연동해서 클라우드로 관리한다. 가상머신으로 띄운 홈페이지 내용을 로컬 DB 관리툴에서 수정하고 반영할 때 가상머신 db랑 소통할 수 있게 방화벽 설정을 추가한다. 책 중간중간에 클라우드 서비스를 활용한 다양한 상황과 솔루션에 대한 내용도 포함되어 있다. 그렇기 때문에 실제 프로덕트를 만들 때 벌어지는 다양한 상황에 대한 이해가 있는 사람이라면 공감하면서 책을 넘기겠지만 그 상황을 잘 모르는 사람이라면 조금 낯선 내용으로 다가올 수도 있겠다.

 

이렇게 쓰고 보니 완전 초보에게는 사실 좀 어려울 수도 있을 것 같다. 저자가 단순히 플라스크 자체를 사용하는 데에만 집중한 게 아니고 파이썬으로 개발, 테스트, 배포까지 사실 좀 넓은 부분을 다 다루다 보니 어떤 내용은 어려울 수 있겠다. 특히 마지막 '마치며' 란 글을 보면 저자가 인프라적인 요소도 챙겨야 된다고 생각해서 책 구성을 했다고 밝히고 있다. 그런만큼 프로덕트를 만드는 입장에 있어본 사람이라면, 혹은 그 관련된 분야에 조금 발을 담그고 있는 사람이라면 쉽게 플라스크 내용을 습득할 수 있겠다. 만약 그렇지 않다면 다양한 내용이 책에 노출되므로 참고하도록. 

 

개인적으로는 한 내용만 오래 파는 것보다 입문서라면(책에서는 완전 초급보다는 초중급 레벨용이라고 나와있다) 다양한 분야를 건드리고 소개하는 구성을 선호하는 편이다. 

 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

파이썬의 대표적인 웹프레임워크로는 장고가 있습니다. 그와 함께 더불어 플라스크도 많이 사용된다고 합니다. 플라스크를 생각하면 보통 마이크로 웹 프레임워크를 떠올립니다.

대규모 웹 애플리케이션을 만들때는 주로 장고를 사용하는데 플라스크와 플라스크확장 모듈을 사용한다면 장고만크의 프레임워크를 만들수 있다고 합니다.

이 책에서는 플라스크로 대규모 애플리케이션을 만드는 법에 대해서 배웁니다. 플라스크 기초부터 심화까지 다루며 기본 문법과 사용법에 대해 숙지하고 블루프린트를 활용한 대규모 설계법, 테스트 코드 작성법, 셀러리와 RxPY를 활용한 비동기 코드 작성법등에 대해서 배웁니다.

이 책을 통해 플라스크를 활용한 여러 기술을 배울수 있고 다양한 프로젝트를 만들어 보면서 다양한 비즈니스 로직들에 대해서 같이 고민하고 배워 보실수 있을 겁니다.

 

이 책의 구성

 

1장_플라스크 시작하기

플라스크의 특징과 도입 사례를 간단히 소개하고 파이썬 설치, 가상환경 생성과 및 의존성 관리를 위한 개발환경 구축, 실습 도구인 파이참 설치 과정을 설명합니다. 개발환경을 구축하고 플라스크 애플리케이션을 만드는 법과 라우팅을 통해 API를 만드는 법을 배웁니다. 또한 플러거블 뷰와 블루프린트 등 플라스크에 추가된 기능에 대해 설명합니다.

 

2장_플라스크로 애플리케이션 만들기

AWS RDS와 깃(Git)을 설치하고 저자의 깃허브(GitHub)에 공개된 플라스크 예제를 통해 사용법을 숙지합니다. 추가로 플라스크 예제를 통해 플라스크 확장 모듈에 대해 배우고 어떻게 사용되는지 확인하고 장고와 동일한 기능을 구현합니다. 마지막으로 유닛 테스트 모듈을 통해 테스트해보고 셀러리와 RxPY를 이용한 플라스크 비동기 구현에 대해 알아봅니다.

 

3장_플라스크로 영화 예매 사이트 만들기

플라스크를 이용해 실제 웹사이트를 만들어보는 첫 번째 실습으로 영화 예매 사이트 예제를 함께 익혀봅니다. 기본적인 플라스크 환경 세팅 후 영화 예매 데이터베이스 설계, 회원가입/로그인/로그아웃 페이지 만들기, 영화 목록 페이지 만들기, 영화관 목록 페이지 만들기, 영화 상영 시간표 페이지 만들기, 좌석 예매 페이지 만들기의 순서로 실습을 진행합니다.

 

4장_플라스크로 블로그 만들기

플라스크로 블로그를 만들어보면서 전체적인 구조를 이해해봅니다. 기본적인 세팅 후 블로그 데이터 설계, 글쓰기 페이지 만들기, 글 목록 페이지 만들기, 글 검색 기능 만들기, 블로그 관련 글 기능 만들기, 댓글 기능 만들기, 조회 수 기능 만들기의 순서로 실습을 진행하고 테스트 코드를 작성해봅니다.

 

5장_플라스크로 쇼핑몰 만들기

실무에서 가장 많이 활용할 수 있는 쇼핑몰 사이트를 만들어봅니다. 플라스크 환경 세팅 후 쇼핑몰 데이터베이스 설계, 쇼핑몰 카테고리 만들기, 제품 목록 만들기, 배송지 만들기, 장바구니 만들기, 구매하기 만들기의 순서로 실습을 진행합니다.

 

6장_플라스크 배포

플라스크 애플리케이션을 배포하는 법을 배웁니다. AWS 클라우드에서 애플리케이션을 신속하게 배포하고 관리할 수 있는 AWS 엘라스틱 빈스토크를 이용하는 법을 배우고, 파이썬 최신 버전도 설치할 수 있는 Dockerfile을 이용한 배포와 무중단 배포를 해봅니다. 또한 CI/CD 툴인 GitHub Action을 이용해 자동으로 배포하는 인프라 구축 방법에 대해 알아봅니다.

 

★ 대상 독자

 

이 책을 읽기 위해서는 파이썬의 기본 문법을 이해하고 있어야 합니다. 파이썬의 기본을 배우고 난 뒤 웹 서비스를 만들어보고 싶거나 플라스크를 이용한 애플리케이션 설계에 대해 관심이 있는 현업 개발자와 학생을 대상으로 합니다.

 

★ 실습 환경

 

이 책은 다음과 같은 환경을 기반으로 설명하고 있습니다.

 

- 운영체제: 윈도우10(64비트), 맥OS

- 파이썬: 3.9.2

- IDE: 파이참

 

 

총평

파이썬의 개발,테스트,배포에 대한 것을 6개 장을 통해 배워볼수 있었습니다. 저자의 의도대로 개발 과정에서 다양한 상황을 통한 비즈니스 로직 작성 방법과 파이썬 플라스크 사용 방법을 터득할 수 있으며 비동기에 대한 학습도 할수 있었습니다. 고급 개발자로 나아가려면 인프라적인 요소에 대해서도 알아야 합니다. AWS 엘라스틱 빈스토크로 플라스크 애플리케이션을 배포하는 법에 대해서 알려줍니다.

플라스크 기반의 실용적인 웹 애플리케이션 개발을 원한다면 이 책을 추천합니다!



*한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

책을 쥐자마자 생각보다 얇다는 느낌을 받았다. 인상적이었다.

책의 제목에서도 예상할 수 있듯이 실용적이고 쿡북스타일의 책이라 생각했다.

책 첫페이지에 있는 (실제로는 5페이지) '지은이의 말'을 읽으며 저자의 의도 또한 그러하다는 점을 알았다.

 

플라스크는 파이썬 웹프레임워크로 파이썬 문법에 대한 이해가 필요로 하며 웹 애플리케이션에 대한 대략적인 이해를 전제로 설명한다.

그래서 이 책에서도 어느정도 '가볍게' 설명은 하지만 다른 책에서는 꽤 분량을 할애하여 설명하는 것에 비하면 독자의 이해를 전제로 하고 '가볍게' 설명한다.

그런 만큼 어느 정도 사전 지식이 있는 사람들에게 있어서는 가볍게 읽을 수 있으며 실용적인 면이 크다.

 

목차에서도 그러한 점을 알수 있다.

토이 프로젝트를 통해 활용하는 방법에 힘을 주고 설명하고 있는데

이도 책의 주제로 삼고 있는 플라스크라는 프레임워크의 속성과 맞물려 그 궤를 함께 한다.

애초에 부담을 갖고 접근해야 할 프레임워크가 아니라고 생각한다.

부담감없이 가볍게 읽기 좋으며 그에 맞게 적절하게 책이 설명하고 있다.

 

tempImagenxTsUy.jpg

 

tempImagexCz38G.jpg

 

파이썬으로 웹프로그램을 하기 위해 선택할 수 있는 웹 프레임워크 중에 django와 많이 쓰이는 flask에 대해서 설명한 책입니다.

 

 

IMG_0819.JPG

기초 입문서이기 때문에 깊은 내용은 아니지만 flask가 어떤 것인지에 대해서 알기 쉽게 접근할 수 있습니다.

 

 

IMG_0821.JPG

 

IMG_0820.JPG

책은 6장으로 설명되어 있으며 기본적인 문법에 대한 설명은 1,2장에 모두 마무리가 됩니다. 파이썬에 대한 자세한 문법등은 다른 도서를 이용해야 하지만 flask를 위한 도서이기 때문에 해당 부분은 문제가 되지 않는것으로 보입니다.

 

나머지 3~5장은 실습으로 구성되어 있고 코드를 github에 올려져 있어서 다운을 받을 수 있습니다. gureuso (구르소) (github.com)

6장에서는 배포를 하는 것에 대해서 설명을 하고 만들어진 것을 실습할 수 있습니다.

 

github에 코드가 있어 같이 작업을 해야 하는데 일부 설명(쇼핑몰 장바구니 만들기)에 코드 위치가 없어서 헷갈리는 부분이 있으나 차분히 읽어보면 됩니다.

 

얇은 도서이지만 기본적인 가상환경만들기부터 aws를 이용한 배포까지 모든 과정을 기본개념으로 이해하는데 도움을 줄 수 있는 도서입니다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

이번에 리뷰하는 "처음 배우는 플라스크 웹 프로그래밍"은 '대규모 애플리케이션 개발부터 테스트, 배포까지'라는 부제를 붙여 놨네요. 색인 포함 259페이지정도의 얇은 책인데 부제의 범위가 상당히 광범위합니다. 제목과 부제를 통해 이 책은 파이썬+플라스크 초급자를 위한 책이 '절대' 아니라 저자의 고급개발경험을 공유하는 백서개념으로 '완전' 고급 프로젝트 개발자를 위한 서적임을 알 수 있습니다. 출판사에서는 초중급자 또는 학생을 대상으로 한다고 되어 있습니다만 ... 글쎄요. 제 느낌으로는 쉽지 않을 것 같아요.

 

 

책의 코드를 손으로 따라 해 본 경험으로 느끼기에는 실제 책의 편집방향도 우선 파이썬을 충분히 익힌 다음에나 따라 갈 수 있을 정도로 ... 뭐랄까 ... 설명을 과감히 생략한 느낌이 다분합니다. 더 쉽게 이야기 한다면 파이썬+플라스크 프레임워크에 대하여 1학기이상 강의를 한다고 할 때 사용하는 강의용 부교재의 느낌이 강합니다. 어렵사리 다른 파이썬 기초서적을 참고하면서 샘플 예제를 따라가면 갈수록 "충실한 설명은 실시간 강의나 동영상을 참고 하세요" 라고 말하는 것 같은 인상을 강하게 받았습니다. 그렇다고, 유튜브 영상이 있는 것도 아닌 것 같은데 말이죠.

 

 

1장 플라스크 시작하기를 통해 파이썬 설치나 가상환경 생성과 같은 기본적인 개발환경 구축에 대하여 간략하게 언급하긴 합니다만, 이 정도 기본기를 익히기 위해서도 일단 파이썬 초급자용으로 다른 책을 먼저 읽고 나서 이 책을 보는 것이 좋을 정도입니다. 플라스크 기본 개념을 설명하는 것도 제가 가진 파이썬 초급자용 서적의 2~3페이지 가량의 내용이 더 자세할 정도 입니다. 2장부터는 AWS와 깃을 이용하여 저자의 깃허브에 공개된 플라스크 예제를 로컬에 카피하여 플라스크의 제어개념과 기능을 익히게 되는데 ... 솔직히 ... 일반적인 설명방식은 아닌 것 같아서 따라가기가 쉽지 않았습니다.

 

 

파이참이라는 개발툴이 얼마나 다양한 기능을 제공하는지 모르겠지만 30일이후에는 유료버전을 구매하지 않으면 실습에 차질이 있을 것 같은데 이 책에서는 비주얼 스튜디오 코드 같은 흔한 개발툴을 사용하지 않고 굳이 파이참이라는 개발툴을 사용합니다. 데이터베이스로 사용하는 MySQL을 로컬로 사용하는 방법은 없는지(?) AWS RDS를 이용하여 데이터베이스를 구성합니다. AWS를 많이 사용하는 것은 알겠는데 초보자의 경우 혹시나 실수로 과금이 되지 않도록 조심해야 할 것입니다.

 

 

저자가 여러 프로젝트 경험을 통해 플라스크를 실무에서 직접 사용하면서 가장 이상적인 애플리케이션 개발 프로젝트구조라고 생각하여 만들어 낸 저자의 프로젝트 구조를 배우고 경험해 보는 것은 아무데서나 쉽게 접할 수 없는 소중한 경험이었습니다. 이를 바탕으로 영화 예매 사이트의 예제를 분석하고 블로그나 쇼핑몰 예제도 경험해 볼 수 있도록 ... 정말 방대한 양을 비교적 얇은 책에 오롯이 담아 내긴 했습니다만 ... 플라스크를 정말 '처음' 배우는 제게는 많이 어려워서, 가급적 책 제목에서는 '처음'이라는 단어는 빼는 게 맞지 않은가 싶네요.

 

 

최근 유튜브에서 코딩 강좌를 보면 몇시간 또는 몇주에 완성하는 어쩌고 같은 컨퍼런스 목적의 동영상을 많이 접할 수 있습니다. 한가지 코딩 언어 또는 프레임워크를 정하여 해당 언어와 프레임워크에 경험이 많은 강사가 아주 기초적인 내용부터 시작하여 몇가지 작은 프로젝트를 완성해 가는 과정을 따라해 보면서 언어를 익히게끔하는 강좌들입니다. 이번에 리뷰한 "처음 배우는 플라스크 웹 프로그래밍"도 한번에 서너시간정도의 분량으로 4~5개 동영상을 따로 준비해 주시면 좋지 않을까 생각해 봤습니다.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."



안녕하세요 :)

처음 배우는 플라스크 웹 프로그래밍 을 리뷰해보겠습니다.


'처음 배우는' 키워드가 붙어 플라스크에 대해 기초 등 간단한 내용을 다룰 것이라고 생각하였으나,

플라스크에 대한 기본기를 탄탄하게 설명한 후

실제 웹사이트를 구축할 수 있도록 필요한 기능을 다루고 있었습니다.



영화 예매 사이트를 만들며 플라스크를 익힐 수 있었습니다.

블로그 만드는 예제도 포함되어 있었습니다.

마지막으로 쇼핑몰 예제까지

하나의 책에서 3가지 프로젝트를 함께 할 수 있어 좋았습니다.

자신이 제작한 프로젝트를 배포할 수 있도록 배포에 관련하여 내용을 다루고 있습니다.


파이썬을 하나도 모르시는 분들께서는 선수 지식으로 파이썬을 공부하신 후

플라스크를 배워보시는 것을 추천드립니다.

파이썬은 공부했는데 그 다음으로 무엇을 공부해야할 지 감이 오지 않으신다면

플라스크를 이 책으로 공부해보시는 것을 추천드립니다.

실제 프로젝트를 하며 많은 내용을 공부할 수 있으며,

이후에 자신만의 프로젝트를 만들어 배포까지 한다면 좋은 경험이 되지 않을까 생각됩니다.





한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.


한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.
 
파이썬으로 기본문법, 인공지능을 공부하고 이번에 플라스크 웹 프로그래밍을 학습하게 되었다.
파이썬 언어에서 웹 프로그래밍을 할 수 있는 프레임워크는 플라스크(Flask), 장고(Django)등이 있다고 하는데 그 중에 플라스크 (Flask)를 학습하게 되었다. 
이전에 샘플로 플라스크(Flask) 예제를 접하기는 했지만 이 책 "처음 배우는 플라스크 웹 프로그래밍" 은 좀더 깊게 그리고 실무에 활용할 수 있는 플라스크(Flask)를 공부할 수 있는 기회 였다고 생각한다. 
 
우선 이 책은 플라스크(Flask) 라는 웹 프로그램밍 전체를 실무적인 관점에서 수행해 볼 수 있는 책이라고 생각한다. 
스프링 프레임워크로 프로젝트를 수행하는 입장에서 해당책은 최신IDE, AWS 등의 도구와 프로젝트 구조 그리고 배포 방법등을 통해서 실무적인 웹 프로그래밍 접할 수 있게 구성되어 있었다. 
 
보통 웹 프로그래밍 책에서는 전체 적인 프로젝트 구성이나 설정 파일에 대한 문제점 등을 놓치고 있고 그것에 대한 언급이 없지만 해당 책은 전체적인 그림(폴더구성), 개발, 운영에 대한 환경설정, 환경설정을 할때 놓치는 문제점등을 자세하게 지나침없이 설명하고 있어서 나중에 현업에서 실무에 적용한다면 해당 내용을 그대로 적용해도 프로젝트에 문제가 없는 수준의 프로그램을 만들 수 있다고 생각한다.  
 
이 책의 장점을 언급하자면 
1. 개발, 테스트, 운영 환경에 대한 설정을 해볼 수 있음 : 자세한 설명과 문제점에 대한 나열
2. 가상환경을 구성하는 방법을 획득할 수 있음 : virtualenv , AWS 등 여러 환경구성 
3. 3가지 실무에 가까운 프로젝트를 경험할 수 있음 (3. 플라스크로 영화 예매 사이트 만들기, 4. 플라스크로 블로그 만들기, 5. 플라스크로 쇼핑몰 만들기)
4. 배포 환경에 구성 ( 6.플라스크 배포) : 실제적인 프로젝트에서 활용할 수 있는 수준 
 
하나의 책에 이런 내용을 다 담기는 어려운데 해당 책은 너무나 중요하고 실제 현업에서 활용해 볼만한 예제 및 기술을 언급하고 있는게 해당 책의 가장 큰 장점이라고 생각한다. 
 
처음 파이썬으로 웹 프레임워크를 접해본다고 한다면 해당 책을 처음 한번 읽어보는 것을 추천해 보고 싶다. 
AWS 그리고 마이크로서비스에 쉽게 접근할수 있는 플라스트(Flask)는 좋은 기회및 좋은 학습이 될거라고 생각한다. 
 

최근에 파이썬을 활용하여 AI공부한다고 관심을 갖다가 우연히 한빛미디어 서평도서에 플라스크라는 도서가 출간된것을 보고 신청하게 되어 구독 할수 있는 기회를 얻었다. 

 

 최근에는 자바를 활용한 웹프로그래밍이 대다수 이기 때문에 파이썬을 활용한 코딩을 해서 프로젝트를 수행한 경험이 없었다.

 

또한 플라스크라가 파이썬의 아류인가 하는 맘으로 책을 보게 되었고,  용어도 처음에는 생소했으나, 이번 기회에 플라스크에 대해 조금이나마 알수 있는 기회가 되었던것 같다. 

플라스크는 파이썬의 웹프레임워크를 말하는거다. 우리는 종종 풀스택 프레임워크라는 용어를 자주 듣곤 하는데, 웹프로그래밍을 할때 필요로 하는 모든것들을 종합적으로 갖추고 있는 프레임워크를 말한다. 대표적인것으로 자바의 스프링, 루비 레일즈, 파이썬 장고등이 있다. 

 

플라스크 웹프로그래밍

 

01.jpg

 

해당책은 대규모 애플리케이션 개발부터, 테스트, 배포까지 다양한 내용을 다루고 있으나, 책의 내용이 많지

않은 관계로 조금 더 관심을 갖고 공부를 하고 싶다면 부가적인 정보를 찾아 습득하는게 좋을것 같다. 

 

파이썬의 기본문법을 이해한 독자들 대상

 

02.jpg

 

책의 내용은 따로 파이썬에 대한 내용을 설명해주는 부분이 존재하지 않는다. 소스를 보다보면 조금 자세한 내용이 필요한 부분도 있을수도 있으나, 소스에 대한 설명을 깊게 다루지도 않는다.

 

가장 기본적인 내용으로 따라 하면 동작원리를 이해할 수 있도록 소스위주의 내용으로 구성되어져 있어

초중급 대상이라고 되어있으나, 초급보다는 중급에 가깝지 않나 생각해본다.

 

플라스크 소스 맛보기

04.jpg 05.jpg

 

 이제 실제 플라스크의 내용을 함 살펴보자.첫번째 그림은 해당 도서에도 처음 프로그래밍 코딩을 하면서

여러 다른 프로그래밍 언어들처럼 Hello World를 출력하는  부분이 처음 나온다.

 

여기서  라우팅이라는 개념이 나오는데 자바의 스프링을 사용해보신분 이라면, urlMapping가 같은 역활이라는것을 알수 있을 것이다. 즉 서버단의 메소드랑 url과 연결되는 부분이라고 보면 될것이다.

 

두번째 그림은 데이타베이스를 활용하는 방법에 대해서 설명하고 있는데, 데이터베이스를 핸들링 하는 쿼리부분이 다소 생소할 수도 있을 것이다. 그러나 플라스크가 데이터베이스를 활용하여 화면에 출력을 하고, 저장도 하고 할 수 있는 방법에 대해서 소스들이 코딩되어있다. 다른 언어를 해본 경험이 있다면 쉽게 이해 할수는 있을것이다.

책에는 자세히 설명히 되어있지는 않지만 jinja2라는 용어가 나온다. jsp에 '<%' 태그를 넣듯이 플라스크에서도 템플릿에 프로그래밍 영역을 넣기 위해 '{%  %}' 를 사용한다.

 

'{{' 변수를 출력하기위해서 사용하고, '{#' 주석을 넣기위해서 사용한다.

 

 

애플리케이션 배포

 

06.jpg

해당 책 마지막 부분에는 애플리케이션 배포를 위한 방법 및 툴에 대한 소개를 하는부분이 있다.

 

책에도 있다시피, 배포를 위한 여러개의 종류가 있지만, 여기서는 GitHub Action을 활용하여 설명하고 있다.

 

또 AWS 엘라스틱 빈스토크로 플라스크 애플리케이션을 배포하는 법, 무중단 서비스 환경에서 배포하는 법도 자세히 다루고 있어 한번쯤 읽어보면 도움이 될것으로 판단된다.

그외 여러 내용들

 

책의 모든내용중 Step3에 해당하는 실습예제 부분은 따로 후기로 작성하지 않았으나, 책의 내용중에는 플라스크로 영화예매시스템만들기, 플라스크로 블로그 만들기, 플라스크로 쇼핑몰 만들기등 실습을 따라하면서 플라스크를 이해할수 있는 예제 설명부분이 들어있다. 해당예제에서 플라스크를 활용한 웹기획, 웹설계, 웹코딩 방법등에 대한 내용등도 있으니 한번 참조해서 보시면 좋을듯 하다.

총평

 

어떤 언어도 처음 접하기에는 어려운 법이 있다. 해당 도서도 나름 플라스크에 대해서 잘정리하고 실무에서 바로 사용할수 있도록 고민한 흔적들이 보인다. 그러나 해당 책 하나로 플라스크를 다 이해하고 실무에 적용하는데에는 어려움이 있지 않을까 생각해본다. 다른 책들과 함께 좀더 공부를 하고 해당책을 참조로 실무에 적용해서 사용한다면 당장 프로젝트를 수행하는데 어려움은 없지 않을까 생각해본다.

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 



웹으로는 자바스크립트를 자주 사용하는 걸 보고는 있지만(정말 나랑 안 맞아서 매번 실무에서 청개구리마냥 php로 하고 있는 중임) 파이썬은 웹 서비스를 하려면 아파치 같은 역할을 해주는 것이 필요하다고는 들었다. 그러니까 이 책에서 소개하는 플라스크가 아닌 장고라는 걸 들어만 봤다.

 

(이 책에서도 나오는 git.. 진짜 개인적으로 도서관에 마침 git 책이 있어서 (내가 몇 개 더 신청했음) 보고 있는데 아니 난 왜 안될까 싶은 일이 참 많았다.)

 

실습 중에 로그인, 로그아웃 페이지!

이전에 개인적으로 파이썬은 아니지만 php 로 해봤었는데 이걸로 해보니 또 새로웠다. 이 다음에 할 일이 있을까.. 싶지만 한 번 해봤으니 도움은 언젠가 되겠지. 기술은 언제든 어디서 갑자기 도움될지 모르는 일이니.

 

 

총 6장에 걸쳐 개발, 테스트, 배포를 모두 해보게 된다. 개인적으로 DB 사용 부분은 AWS RDS 를 다루는데 해보는 건 좋지만 검색하다 보니 굳이 그것을 고집할 필요 없어보이니 본인이 접근 쉬운 것으로 대체 해도 괜찮을 것 같다.

아직까진 내가 실무에서 파이썬을 웹 프로그래밍 할 일은 없었긴 하지만 최근에 파이썬 활용이 늘어나고 있어서 이번 경험이 나쁘지 않은 거 같다.



한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

딱 플라스크만 배우는게 목적이라면, 1장만 읽어도 입문은 완료할 수 있습니다.

2장까지만 해본다면 넘칠 것 같구요.

그 이후의 장은 저자의 경험을 들여다 볼 수 있는 장이구요.

다른 사람이 고민한 프로그래밍 방식을 들여다보는 것은 어떤식으로든 도움이 될 것이라고 생각합니다.

단, 파이선 문법에 대한 설명은 없기 때문에 파이선 문법은 공부 후에 봐야할 책으로 프로그래밍 기초책은 아닙니다.

IMG_3249.jpg

 

 

파이썬으로 웹 개발을 하게 될 때 두 가지 프레임워크가 유명한데 하나는 장고이고 하나는 플라스크입니다. 그 중 플라스크를 배우기 좋은 책이 나와 읽어보았습니다. 한빛미디어 "처음배우는 플라스크 웹 프로그래밍"라는 책으로 현재 파이썬 튜터 및 컨설팅 업무를 하고 계신 윤정현님이 지으셨습니다.

 

이 책의 특징으로는 플라스크 사용법을 실무에서 활용할 수 있는 영화 예매, 블로그, 쇼핑몰을 만들어보면서 익힐 수 있다는 점입니다. 또한 깃허브나 AWS를 통한 배포까지 플라스크 프로젝트의 A to Z를 경험할 수 있습니다.

 

개인적으로 파이썬 문법을 알고 있고, 다른 언어로 웹 개발을 하고 있는 입장에서 읽어봤을 때 플라스크를 통한 웹 프로그래밍에 집중할 수 있는 책이어서 저에게는 오히려 집중해서 플라스크를 학습할 수 있었던거 같습니다. 플라스크로 각종 쿼리를 어떻게 다루는지 사이트를 만들면서 익힐 수 있기 때문에 실무에 대한 감각도 익히기 좋았던거 같습니다.

 

플라스크 배포까지 신경쓴 부분이 인상깊었는데 AWS 엘라스틱 빈스토크, Docker, 무중단 배포 , GitHub Action과 같이 최신 트렌드에 맞는 내용이 알차게 들어 있었습니다. 실제 자신의 서비스를 배포까지 도전해 볼 수 있게 배려한 점이 돋보이는 부분입니다.

이 책을 통해 플라스크의 기초를 학습한 후 플라스크를 통한 Restful API, 보안 등과 같은 심화 학습 단계로 넘어가도 좋을 것 같습니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

x9791162244678.jpg

 

 



# 책소개

마이크로 웹프레임워크를 파이션을 이용하여 개발할 수 있는 플라스크를 설명한 책이다.

플라스크의 특징은 확장 모듈을 이용하여 마이크로 서비스 형태로 개발할 수 있고 확장성이 좋은 점을 

이책은 플라스크 기초 부터 시작하여 간단한 어플리케이션을 만들어 보고 그 개념을 바탕으로 

영화 예매 사이트, 블로그, 쇼핑몰을 만들어 보는 순으로 점차 기능을 확장하여 간다.

데이터베이스, 배포등은 플라스크 내부에서 제공하지 않기에 AWS의 기능을 사용하여 설명한지만 

나는 자체 Mysql을 사용하여 테스트를 수행해 봤다.

이 책은 플라스크의 기본적인 정적파일과 템플릿등을 간단히 설명하며 차근차근 따라갈 수 있는 

소스를 제공한다. 소스의 위치나 역할 등을 설명하며 따라 갈 수 있게 조금은 수정하면서 수행할 수 있게 되어 있다.



KakaoTalk_20210920_113546739.jpg

 

 

블로그, 영화예매 사이트, 쇼핑몰 등을 만들 때 기본적인 데이터베이스의 테이블 구조도 설명을 

하면서 진행하기 때문에 전체적인 웹 어플리케이션을 이해하면서 예제를 따라 갈 수 있게 구성되어 

있어 좋았다.

 

KakaoTalk_20210920_113547312.jpg

 

 

소스에 대한 설명은 중요 부분에 대해 설명을 하고 웹 프로그램 특성 상 데이터베이스의 SQL은 

매우 중요한데 그 부분에 대해서도 쿼리를 제공하면서 진해 하기 때문에 별 어려움 없이 책을 

이해하면서 예제를 수행해 볼 수 있었다.

 

KakaoTalk_20210920_113547756.jpg

 

약간의 아쉬웠던 점은 편집 소스코드를 부분에 코드와 소스명을 구분없이 표현하고 있다는 점인데 

처음에만 거슬렸으나 이후에는 크게 신경 쓰지는 않았다.

# 총평

주의점: 이 책은 플라스크에 대한 기초를 설명한 책이지 파이션에 대한 기초를 설명한 책은 아니다.

          이 책을 읽는 독자는 기본적인 파이션 문법을 이해 할 수 있어야 하고 기본적인

          데이터베이스 내용도 이해할 수 있어야 한다.

          물론 플라스크에 관심이 있는 독자라면 기본적으로 아실테지만...

좋은점 : 지면에 한계가 있으면서도 플라스크의 주요 예제 소스와 확장 모듈을 잘 설명하고 있으며

           3개나 되는 예제를 설명하고 있다는 점이 좋았다.

           상세한 설명이 지면에 대한 한계로 어려웠겠지만 처음 접하는 플라스크이기 때문에

           구글링을 이용하여 테스트를 진행하였고 나는 오히려 공부하면서 진행할 수 있어 나름

           괜찮은 공부가 될 수 있었다.



"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."


"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

얼마전 Youtube(https://www.youtube.com/watch?v=57awvPsBE0w)에서 조사한 바에 따르면 전 세계에서 가장 인기있는 Web Framework에 Flask가 3번째로 많이 사용하는 것으로 발표되었다. 이제 Flask는 언어를 초월하여 가장 많이 사용되고 있는 Framework인 것이다. 국내에 Flask에 대해 추천할 만한 교재가 없었던 차에 한빛미디어를 통해 출간되었다는 소식에 반가움이 먼저 앞선 상황에서 이 책을 접하게 되었다. 더구나 이 책은 단순히 Flask에 대한 설명 뿐만 아니라 AWS RDS를 이용한 Database Connection, Github, 유닛 테스트, AWS 엘라스틱 빈스토크를 통한 AWS를 통한 배포, Dockerfile을 이용한 Container 배포 및 CI/CD 툴인 GitHub Actioin 등 요새 가장 Hot한 트렌드인 CI/CD까지 한 번에 학습할 수 있도록 안내하고 있다. 한마디로 식탁이 풍성한 잔칫집에 와 있는 느낌이다. 또한 전통적인 웹 프레임워크 책에서 다루고 있는 고전적인 샘플코드인 영화 예매 사이트, 쇼핑몰 사이트등도 빠뜨리지 않았다. 보통 이런 책들은 국내 저자가 책을 쓰게 되면 많이 등장하는 예제이지만, Flask 같은 기술 책들이 그동안 해외 번역서가 많이 출간되다보니 다소 국내 상황과 멀다는 느낌이었지만, 경험이 풍부한 한국인 저자가 썼다는 사실 만으로도 충분히 추천할 수 있는 책이었다. 이제 현직에서 개발을 강의하고 있는 강사로서 학생들에게 또 한권의 양서를 추천할 수 있게 되었다. 

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

책을 읽기 전에

저는 파이썬 장고를 이용한 웹 개발 경험이 있는데, 플라스크의 경우 장고와 비교하여 생산성이나 개발 속도 측면에서 뛰어난 경우가 있다는 것을 듣고 흥미를 가졌습니다. 이때 마침 플라스크 관련 도서를 제공받게 되어 기대를 품고 독서를 시작했습니다.

마이크로하지 않은 마이크로 프레임워크

플라스크의 경우 주로 소규모 웹 개발에 사용되는 마이크로 프레임워크로 알고 있었는데, 해당 도서에서는 플라스크의 대규모 애플리케이션 제작에 관한 가능성을 다루고 있습니다. 또한 이를 위한 이론부터 테스트, 배포까지 실무에 적용할 수 있는 방법을 종합적으로 안내합니다.

비동기 처리부터 비즈니스 로직 설계까지

또한 단순히 플라스크라는 웹 프레임워크에 대해서만 다루는 것이 아니라, 이를 활용하여 웹 서버를 개발하는 과정에서 필요한 RxPY 기반의 모던한 비동기 처리, 비즈니스 로직 설계 방법까지 폭넓게 다루고 있습니다.

백엔드 도서에 꼭 필요한 예시 프로젝트

일부 백엔드 관련 기술 서적의 경우 이론적인 내용만을 다루고 있는 경우가 있어 실무에 바로 적용하기 난감한 경우가 있는데, 해당 도서에서는 여러 실생활에 가까운 프로젝트를 커리큘럼의 일부로 제시함으로써 이러한 문제를 해소하고 있습니다.

 

한빛미디어에서 제공받는 책으로 해당 리뷰를 작성하였습니다.

책표지!

TL;DR

  • 초급자(AWS RDS 사용이 힘든 학습자) 라면 이 책의 CHAPTER 1 플라스크 시작하기을 읽고, 아래 몇가지 튜토리얼을 진행하고 CHAPTER 4 플라스크 블로그 만들기를 차근 차근 진행해보자(개인적으로 난이도가 CHAPTER 3 플라스크로 영화 예매 사이트 만들기가 더 높은 듯 함)
  • 중급자(AWS RDS 사용이 가능한 학습자) 라면 이 책의 CHAPTER 3 플라스크로 영화 예매 사이트 만들기을 먼저 시작해도 무방할 듯 하다.
    • 중급자의 경우 CHAPTER 1 플라스크 시작하기와 CHAPTER 2 플라스크로 애플리케이션 만들기는 필요할 때 읽어도 무방함

0 - Flask?

Node.js에 Express가 있다면 Python은 Flask가 있고, Java에 Spring이 있다면 우리에겐 Django가 있다.

한때, 내가 가장 많이 사용했던 웹 프레임워크 중 하나가 Flask였다. 왜 ‘한때’라는 부사가 붙느냐면 2017년 이후에 내가 진행했던 외부 프로젝트가 추천시스템 구축 관련이었는데, 해당 프로젝트 책임자’들’이 Django를 요구했기 때문이다. 마치 약속이나 한 것 처럼 대부분의 프로젝트 책임자들이 Django에 대해서 요구하기 때문인데, 요즘은 많은 프로젝트에서 Flask를 기반으로 한 API 서버를 요청하는 경우가 많아졌다. 개인적인 견해를 기반으로 부연 설명을 조금해보자면, Django를 사용해서 API 서버를 구성하는 것이 조금 번거로운 점이 있고, 머신러닝/딥러닝 모델을 기반으로 한 API 서버의 경우 풀스택 프레임워크를 사용할만큼 큰 규모가 아니라는 점 때문이라 생각한다.

한 마디로 말해서 간단한 API를 구성한다면 Flask만한 프레임워크가 없습니다.

1

이 책을 읽고, 모든 예제를 진행하면서 가장 마음에 들었던 점이라면 ‘프로젝트 기반’으로 진행된다는 점이다. 그래서 1~2장 정도를 가볍게 읽고, 3/4/5장 중에서 마음에 드는 주제를 골라서 진행해도 된다는 점이다. 나는 책을 순서대로 진행했는데, 3/4/5장의 프로젝트가 난이도가 중/하/상 수준으로 판단된다. 그래서 플라스크를 처음 접하는 분들은 4장을 목표로 진행하면 좋을 듯 싶다.

RDS를 적극적으로 활용하고 있고, 특정 부분에서 리액티브 프로그래밍 등과 같은 초급 학습자가 학습하기엔 약간 난이도가 있는 부분은 가볍게 넘어가도 좋을 듯 싶다. 저자의 github에 대부분의 코드를 제공하기 때문에 RDS 부분을 SQLite3로 변경하기만 해도 별다른 어려움 없이 예제를 진행할 수 있다.

마지막으로 배포 부분은 도커를 사용하고 있기 때문에, 프로젝트를 진행하고 끝나는 것이 아니라 서버에 직접 배포할 수 있는 경험을 제공한다는 점에서 다른 여타의 책과 확실하게 차이점을 두고 있으며, 이러한 차이점은 초중급 학습자에게 큰 장점이다.

만약, 플라스크에 대한 경험이 없다면 이 교재의 1장과 2장을 먼저 읽고, 웹에서 간단한 플라스크 튜토리얼을 1~2개 정도 진행 후에 4장을 진행해보길 권한다. 그리고 도커 사용이 힘들다면 heroku 등을 사용해서 무료로 배포를 진행할 수 있으니 도전해보면 좋을 듯 싶다.

책내용

2

현재 이 책에서 다루는 내용은 초급자분들이 접근하기엔 약간의 어려움이 따른다. 대표적인 것들이 RDS를 사용한다는 점인데, 초급 사용자가 RDS에 접근한다는게 쉽지 않을 것으로 판단되기 때문이다. MySQL 등을 설치하는 것도 초급자에게 쉽지 않기 때문에 될 수 있으면 SQLite3를 사용하는 방법을 권하고 싶다. 그리고 도커 등과 같은 소프트웨어를 설치하는 문제가 발생하는 경우에는 heroku 등과 같은 다른 무료 서비스를 최대한 활용할 수 있도록 별도의 가이드를 작성해서 배포한다면 좋을 듯 싶다. 그리고 해당 교재는 파이썬의 문법에 대해서 자세한 설명을 하고 있지 않기 때문에 파이썬 문법은 별도의 교재로 학습하고 진행하길 권한다.

파이썬코드

3

완전 초보자에게 조금 어려울 수 있지만, 개발 환경 구성에서 배포까지 전 과정을 제시하는 교재가 흔하지 않기 때문에 초급자는 약간의 도전과제라 생각하고 진행하면 좋은 성과를 이룰 수 있고, 중급자는 폴더 구조, 환경설정, 3rd-party 라이브러리 그리고 도커 등과 같은 다양한 기술을 사용해볼 수 있는 좋은 기회가 될 것이다.

 

Author: 윤정현 지음

출판사: 한빛 미디어

 Score /5: ⭐️⭐️⭐️⭐️

[이 책의 대상 독자]

  • 처음 플라스크를 배우시는 분
  • 바로 프로젝트를 경험하면서 배우고 싶은 분

Python은 요즘 많이 활용되기 시작하는 언어이고 그만큼 다양한 분야에 사용되고 있다. 기존 Java만 활용하던 내 입장에서는 Python에 대한 궁금증을 기반으로 해당 책을 읽어보았다.

해당 책의 장점은 내가 그동안 원하고 원했던 프로젝트 기반이라는 것이다. 어차피 기본 문법서는 인터넷등 다양한 자료로 충분히 제공되고 있다. 문제는 '해당 언어로 어떤 프로젝트를 구현해 볼 것인가?' 이다.  

해당 책은 기본 설정을 간결하게 하고 바로 프로젝트를 진행할 수 있다. 즉, 문법만 달달 외우다 끝나는 책과는 달리 책을 읽고 나서도 '경험' 의 관점에서 어떤 작업을 했고, 어떤식으로 개발하고 배포할 수 있을지 간단한 가이드 라인을 제공해 준다.

하지만 수정이 필요한 부분도 있다. 현재 내가 플라스크로 DB 연결을 못해본 경우, 어려운 부분이 있다. 예를들어 config.json 파일을 만들고 DB HOST  연결시에 https:// 형식으로 넣어야 할지, 아니면 jdbc연결 문자열로 넣어야 할지 확실한 가이드가 없어 DB  연결이 안되어 반나절을 날린 기억이 있다. 이런 부분은 경험이 부족한 독자를 위해 더 상세하게 설명해 줬으면 좋겠다. 그럼에도 불구하고 이 책은 초보자가 보기에 매우 좋은 책이다.

처음 플라스크를 경험하는 경우, 실제 프로젝트를 간접 경험하고 싶은 경우, 이 책을 통해서 기본기를 익히기 바란다.

※ 이 책은 한빛 미디어의 지원으로 작성된 글입니다

'처음 배우는 플라스크 웹 프로그래밍'을 읽고

한빛미디어의 '처음 배우는 플라스크 웹 프로그래밍'이란 책을 읽었다.

뭐 다 읽지는 못 한 상황이다. 중반 정도? 2장 넘어가면서 부터 코드 풀이가 어렵네... 그래서 더디다.

일단 플라스크를 전혀 모르는 상태에서 읽었다.

초반 설명은 읽을만 하다. 플라스크가 뭔지 어떻게 설치하는지 그런것들이다. 눈이 있으면 충분히 이해됨.

챕터 2부터 플라스크로 애플리케이션 만들기가 나오는데, 삽입되어 있는 파이썬 코드들이 초급 이상은 되어야 이해될 듯. 아닌가? 내가 잘 모르나? 어떻든 난 잘 이해가... 파이썬에 대한 코딩을 전혀 몰랐다면 읽지 않는게 낫다. 잘 이해가 안 되는 부분들을 지나치다 보니 중반 넘어서는 잘 눈에 안 들어오게 되더라. 파이썬 중급? 정도는 되어야 읽기 무난할 듯.

중간 넘어가면서 쇼핑몰 만들고, 블로그 만들고, 영화 예매 사이트 만들고~ 등 하는데 여기서부터 좀 맨붕이 온다. 파이썬 코드들을 잘 파악을 해서 이해를 해야하는데 파이썬 이해력이 딸리는건 어쩔수 없네. 

책 읽으면서 좋았던 점은 일단 기존에 아파치, 엔진엑스 정도 써봤던 경험에서, 플라스크라는 웹 애플리케이션이라는 걸 알았다는 거. 개념도 없었으니 웹서버와 웹애플리케이션 서버 그리고 이런걸 연결해주는 WSGI 그리고 플라스크에서 동작하는 라우팅 등 코두에서 이렇게 쓰는구나 하고 감은 잡았다. 뭐 실전 활용은 아직 멀었지만 어떤 것들이 있는지 어느 방향으로 쓰는지 개념을 얻은건 큰 소득이다.

나빴던 점은 책에 코드를 넣을거면 나 같은 파이썬 초보라도 잘 알 수 있도록 해주지. 한라인 한 라인 좀 더 자세히 설명해주지 않아서 읽기 힘들었다. 뭐 대상 독자층이 초중급이라고 적어놨지만 이게 초급도 포함되니깐 활용에 대한 부분 양을 줄이더라도 코드 부분을 최대한 쉽게 풀어쓰는게 좋지 않았을까 싶다. 

 

20210912_171812.jpg

 

플라스크 프레임워크로 나도 웹 프로그래밍 할 수 있다 !

실전 예제 3개와 클라우드를 배웁니다.

 

파이썬만 알면 개발자로 바로 만들어주는책!!

 

클라우드 배웁니다.

실무에서 이제 클라우드 모르면 일 못합니다.

여기서 연동하는 법 알려 줍니다.

 

깃 배웁니다.

개발자의 기본이죠~

 

예제 3개 배웁니다.

개발 하는 과정을 알려줍니다.

반복해서 내것으로 만들고, 내가 원하는 사이트를 만들어보자.

 

난 개발자가 된다.

평생 써먹을수 있는 기술이 된다.

 

 

  •  

 

실전에서도 유용하게 쓸 예제들이 가득해요.
제목은 가볍지만, 내용은 결코 가볍지 않아요.
나중에 서비스 개발 및 운영할 때 필요할 코드들이 많아요.

개발 환경 구성부터 예제를 따라가며 파이썬 플라스크 웹 프레임웨크를 배워 볼수 있습니다.

이 책은 저자가 플라스크를 실무에서 사용하면서 가장 이상적인 구조라고 생각하며 만든 프로젝트를 기반으로 진행한다.

아쉬운 점

  • 책의 일부를 실습했는데, 리눅스와 맥에서 virtualenv를 활성화하는 명령어가 잘못되어 있다.

    			
    					
    . venv/Scripts/activate

    책에서는 위와 같이 표기 되어 있다. 나는 Scripts 폴더가 없었고 다음 명령어로 activate 했다.

    			
    					
    source venv/bin/activate
  • 코드를 표기해놓은 부분 상단에 파일이름.py이 적혀있어서 해당 부분은 코드 윗 부분으로 빼거나, 주석으로 작성했으면 좋았을 거 같다.

  • 지면의 한계로 인해 입문자를 위해 세세하게 설명해주는 느낌의 책은 아니다. 설명이 부족하다는 뜻은 아니지만, 일부 코드는 스스로 분석하는 능력이 필요할지도 모르겠다. (입문자가 아닌 내 입장에서는) 아쉬운 점은 아닌데 그렇다고 장점도 아니라서 여기에 적었다.

좋았던 점

  • 저자의 Github에 예제 프로젝트가 올라와 있고, 프로젝트 구조가 만들어져 있다. 저장소에 완성 코드가 제공되지 않아서 무조건 실습을 해야 한다는 점이 좋았다.
  • 책이 얇다고 플라스크에 대한 내용만 담겨있다고 생각하면 오산이다. AWS RDS, Amazon SQSsimple queue service, 배포를 위한 AWS 엘라스틱 빈스토크elastic Beanstalk, Github Action도 일부 같이 설명하고 있다. 예제 프로젝트를 진행하기 위해 필요한 부분만 다룬다. 테스트 코드 작성에 대해서도 다루고 있고, 심지어 Reactive Programming도 일부 다룬다. 내용이 정말 만만치 않다고 생각한다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
처음 배우는 플라스크 웹 프로그래밍
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
처음 배우는 플라스크 웹 프로그래밍
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
처음 배우는 플라스크 웹 프로그래밍
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실