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

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

파이썬 웹 프로그래밍, 기초편(3판)

Django(장고)로 배우는 쉽고 빠른 웹 개발

한빛미디어

집필서

판매중

4.5점 (25명)
좋아요 : 2

Django를 활용한 파이썬 웹 프로그래밍 대표 도서! 

『파이썬 웹 프로그래밍, 기초편』이 장고 최신 버전을 반영하여 돌아왔다!

 

2015년, 초판 출간 후 8년이라는 세월 동안 장고 웹 프로그래밍 대표 도서로 자리매김한 『파이썬 웹 프로그래밍, 기초편』이 독자 피드백과 장고 4.x 버전을 반영하여 더욱더 새로워진 3판으로 돌아왔다!

 

이 책은 웹 개발자라면 필수적으로 갖춰야 할 거의 모든 지식을 담고 있다. 웹 개발 기초 지식이 되는 표준 라이브러리를 배우고, 풍부한 실습 예제를 통해 Django의 주요 기능을 배울 수 있다. 모든 사람이 쉽게 따라 할 수 있게 윈도우 환경에서 개발을 진행한다. 운영 서버 배포 과정에서는 PythonAnywhere와 AWS 등 클라우드 서버와 Ubuntu, Amazon Linux 등 다양한 리눅스 배포판에서 WSGI 서버(Gunicorn, uWSGI)와 웹 서버(Apache, NGINX)를 연동하는 방법을 경험할 수 있다. 또한 장고 4.x 업데이트에 맞춰 코드를 수정해 버전 걱정 없이 실습할 수 있다. 

 

이 책으로 웹 프로그래밍에 필요한 표준 라이브러리와 범용성 높은 웹 프레임워크인 장고를 익혀 보자!

 

 

11041_details.jpg

 

 

 

 

김석훈 저자

김석훈

C 언어로 프로그램 개발을 시작했으며 지금은 자바와 파이썬으로 프로젝트를 진행하고 있다. KT ucloud 서비스의 백엔드 서버 개발 프로젝트에 참여해 자바로 고객의 폴더/파일에 대한 메타 정보 처리 엔진을, 파이썬으로 클라이언트 푸시 서비스를 개발했다. 또한 KT 인터넷 회선의 속도 측정 프로그램, 네트워크 장비에 대한 운용 관리 프로그램, 방대한 양의 트래픽 데이터 분석 프로그램을 개발한 바 있다. 개인적으로는 파이썬의 매력에 푹 빠져 될 수 있으면 파이썬으로 코딩하기를 즐기고 있다. 그 일환으로 요즘은 Django를 활용한 웹 프로그래밍, Django REST Framework를 활용한 JSON 연동, Pandas를 활용한 데이터 분석 등의 프로젝트를 진행하면서 파이썬의 활용도를 넓혀 가고 있다.

Chapter 01 웹 프로그래밍의 이해

_1.1 웹 프로그래밍이란?

_1.2 다양한 웹 클라이언트

_1.3 프론트엔드와 백엔드

_1.4 HTTP 프로토콜

_1.5 URL 설계

_1.6 웹 애플리케이션 서버

 

Chapter 02 파이썬 웹 표준 라이브러리

_2.1 웹 라이브러리 구성

_2.2 웹 클라이언트 라이브러리

_2.3 웹 서버 라이브러리

_2.4 CGI/WSGI 라이브러리

 

Chapter 03 Django 웹 프레임워크

_3.1 장고의 특징

_3.2 장고 프로그램 설치

_3.3 장고에서의 애플리케이션 프로그래밍 방식

_3.4 애플리케이션 설계하기

_3.5 프로젝트 뼈대 만들기

_3.6 애플리케이션 개발하기 - Model 코딩

_3.7 애플리케이션 개발하기 - View 및 Template 코딩

 

Chapter 04 Django의 핵심 기능

_4.1 Admin 사이트 꾸미기

_4.2 장고 파이썬 셸로 데이터 조작하기

_4.3 템플릿 시스템

_4.4 폼 처리하기

_4.5 클래스형 뷰

_4.6 로그 남기기

 

Chapter 05 실습 예제 확장

_5.1 새로운 애플리케이션 만들기

_5.2 프로젝트 첫 페이지 만들기

_5.3 polls 애플리케이션을 클래스형 뷰로 변경하기

 

Chapter 06 Django의 웹 서버 연동 원리

_6.1 장고의 wsgi.py 파일

_6.2 장고의 WSGI 인터페이스

_6.3 운영 서버 적용 전 장고의 설정 변경 사항

_6.4 리눅스 배포 환경 선택

 

Chapter 07 Cloud 서버에 Django 배포

_7.1 PythonAnywhere 사이트 가입하기

_7.2 장고 소스 가져오기 

_7.3 리눅스 명령으로 압축 풀기

_7.4 파이썬 가상 환경 만들기

_7.5 PythonAnywhere 서버에서 장고 설정 변경하기

_7.6 PythonAnywhere 웹 서버 설정하기

_7.7 지금까지의 작업 확인하기

 

Chapter 08 NGINX-Gunicorn 연동

_8.1 Ubuntu 가상 환경 구성 및 장고 설정 변경하기

_8.2 Ubuntu에 NGINX 구성하기

_8.3 user 권한 Gunicorn 구성하기

_8.4 root 권한 Gunicorn 구성하기

_8.5 실행 테스트하기

 

Chapter 09 NGINX-uWSGI 연동

_9.1 Amazon Linux 가상 환경 구성 및 장고 설정 변경하기

_9.2 Amazon Linux에 NGINX 구성하기

_9.3 user 권한 uWSGI 구성하기

_9.4 root 권한 uWSGI 구성하기

_9.5 실행 테스트하기

_9.6 SQLite3 에러 조치 방법

 

Chapter 10 Apache 웹 서버와 연동

_10.1 CentOS 가상 환경 구성 및 장고 설정 변경하기

_10.2 httpd 웹 서버와 mod_wsgi 확장 모듈

_10.3 mod_wsgi 설치하기

_10.4 내장 모드로 mod_wsgi 실행하기

_10.5 데몬 모드로 mod_wsgi 실행하기

 

APPENDIX A 외부 라이브러리 requests, beautifulsoup4 맛보기

APPENDIX B 장고의 데이터베이스 연동

APPENDIX C HTTP 상태 코드 전체 요약

APPENDIX D PyCharm 무료 버전 사용하기

찾아보기

한계? 그게 뭔지 모르는 다재다능한 파이썬에 

장고(Django)를 더하면 누구나 쉽게 웹 프로그래밍을 할 수 있다!

 

파이썬은 쉽게 배울 수 있고 널리 활용할 수 있어 데이터 분석, 머신러닝, 크롤링 등 다양한 분야에 활용되고 있다. 특히 여러 분야 중 웹 개발에 가장 많이 활용되고 있는데 파이썬을 활용하면 웹 프로그래밍을 쉽게 끝낼 수 있기 때문이다. 

 

시중에는 매우 다양한 파이썬 웹 프레임워크가 존재한다. 다양한 웹 개발 지식을 축적한 사람이라면 자신의 프로젝트에 맞는 적합한 프레임워크를 선택해서 사용하면 되지만, 웹 개발을 처음 시작하는 사람은 수많은 프레임워크 중 어떤 것을 선택해야 할지 혼란스러울 수 있다. 그렇다면 고민할 것 없이 장고를 선택하자.

 

장고는 프로젝트 뼈대 생성, 데이터베이스 연동, Admin 관리 기능 등 웹 프로그래밍에 필요한 모든 것을 갖추고 있다고 말할 수 있을 정도로 풍부한 기능을 제공한다. 장고를 활용하면 이러한 기능을 단 몇 줄의 코드만으로 간단히 구현할 수 있다. 또한 파이썬 웹 프레임워크 중 사용자가 가장 많아서 관련 정보를 손쉽게 얻을 수 있다. 그렇다면 장고를 무엇으로 어떻게 배워야 할까? 고민할 것 없이 『파이썬 웹 프로그래밍, 기초편』으로 배움을 시작하자.

 

 

● 『파이썬 웹 프로그래밍, 기초편』의 특징

 

1. 누구나 쉽게 따라 할 수 있도록 윈도우 환경에서 개발을 진행한다.

2. 웹 프로그래밍 기초 지식과 파이썬 웹 표준 라이브러리 활용법을 알려 준다.

3. 파이썬 웹 프레임워크 중 범용성이 가장 높은 Django의 기초 개념을 제대로 알려 준다.

4. MVT(Model, View, Template) 패턴에 따른 충분한 설명과 실습으로 웹 애플리케이션 프로그래밍 방식과 원리를 제대로 알려 준다.

5. PythonAnywhere, AWS와 같은 클라우드 서버 배포 방법을 알려 준다.

6. 다양한 리눅스 배포판에서 WSGI 서버(Gunicorn, uWSGI)와 웹 서버(Apache, NGINX)를 연동하는 방법을 알려 준다.

 

 

● 『파이썬 웹 프로그래밍, 기초편』 3판에서 달라진 점

 

1. 파이썬 3.x 및 장고 4.x 버전에 맞게 코드 업데이트!

2. Ubuntu, Amazon Linux, CentOS 등 다양한 리눅스 배포판으로 배포 환경을 다각화!

3. 독자 피드백을 바탕으로 웹 프로그래밍 및 장고 지식 설명 추가!!

 

 

● 『파이썬 웹 프로그래밍, 기초편』을 읽어야 하는 당신

 

1. 파이썬 기본기를 바탕으로 생산적인 일을 하고 싶은 초급 개발자

    (『혼자 공부하는 파이썬』을 완독하고 웹 프로그래밍을 시작하고 싶은 개발자 지망생)

2. 다른 언어를 사용하다 파이썬으로 전환하려는 웹 개발자

3. 스타트업처럼 빠르게 웹 서비스를 구축해야 하는 조직의 개발자

 

 

●  예제 파일 다운로드

 

     → https://www.hanbit.co.kr/src/11041

 

 

●  관련 도서

 

『혼자 공부하는 파이썬(개정판)』(한빛미디어, 2022)

『파이썬 웹 프로그래밍, 실전편』(한빛미디어, 2019)

 

이번 달에는 Django로 배우는 쉽고 빠른 웹개발 파이썬 웹 프로그래밍을 리뷰하게 되었다.
파이썬은 현재 업무에서 주로 사용중인지라 정말 반가운 주제이다.

여느 책과 마찬가지로 1장은 웹 프로그램 초심자가 기본적인 개념부터 익히며 들을 수 있도록 친절한 설명이 이루어져있다.

 

2~4장까지는 웹 표준 라이브러리, 장고 프레임워크, 장고의 핵심 기능에 대해 알아볼 수 있으며, 5장에서는 앞장에서 공부한 실습 예제를 확장하여 새로운 애플리케이션을 만들면서 클래스형 뷰 사용법을 익힐 수 있게 되어있다. 기존에 개발했던 실습 코드를 클래스형 뷰로 변경하는 것도 함께 알아본다.

 

6~10장까지는 장고 프레임워크로 개발한 웹 애플리케이션의 작동 원리 및 배포, 주된 웹서버와의 연동 방법에 대해 설명하고 있어서 내가 개발한 애플리케이션을 인터넷에 공개하는 다양한 방법에 대해 알 수 있다.

 

책을 따라 진행하다가 마주하게될 수 있는 문제들을 제시하고 친절한 해결책을 알려주는 부분이 인상적이었고, 서버 세팅 항목에 있어서는 다양한 모드의 세팅 방법들을 수록하여서 독자의 필요에 맞게 설정하고 테스트해볼 수 있도록 돕고 있다.

장고에 관심을 가지게된 개발자 혹은 초심자에게 전반적으로 손쉽게 장고에 입문할 수 있게 해주는 좋은 길라잡이이다.

 

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

파이썬을 배우고 웹 프로그래밍을 하고 싶은 사람을 위한 책이다.

책 순서는 먼저 웹 개발이란 무엇인지부터 시작한다.

대략적으로 프론트엔드, 백엔드의 개념을 알고 나서 파이썬의 웹 표준 라이브러리를 배운다.

파이썬 웹 표준 라이브러리 내용의 경우는 필수는 아니기 때문에 당장 만들어보는 게 급하다면 2장은 생략해도 되겠다.

 

이후 장고에 대한 개념을 학습 후, 설치부터 프로그래밍 방식, 설계, 프로젝트 뼈대 등을 만드는 방법을 배운다.

그 후엔 장고의 핵심 기능을 배우는데 여기서 각종 어드민 사이트를 꾸민다던가 파이썬 셸로 데이터를 조작한다던가, 템플릿 시스템이나 폼 작성 등에 대해 더 배운다.

그 후 실습 예제를 하나 만들어보면서 파이썬으로 앱을 만드는 감을 익힌다.

배포하는 것까지 해볼 수 있도록 안내되어 있어서 따라가기 좋다. 

또한 저자가 책을 쓸 때 자신이 사용한 개발환경도 친절하게 안내해주고 있어서 부담없이 따라갈 수 있다.

 

장고는 MVC 패턴에 해당하는 MVT 패턴에 따라 개발하도록 되어 있다.

Model-View-Controller

장고에서는 View를 Template, Controlelr를 View라고 한다. 

MVC패턴이란 데이터(Model), 사용자 인터페이스(View), 데이터를 처리하는 로직(Controller)를 구분해서 한 요소가 다른 요소들에 영향을 주지 않도록 설계하는 방식을 의미.

-> UI 디자이너가 데이터관리나 앱 로직에 신경쓰지 않고도 화면 UI를 설계할 수 있음

 

웹 클라이언트 <-> View -> Model, Template 

 

MVT 코딩 순서

-프로젝트 뼈대 만들기

-모델 코딩하기: 테이블 관련 사항을 프로그래밍(models.py, admin.py)

-URLconf 코딩하기 : URL및 뷰 매핑 관계를 정의(urls.py)

-템플릿 코딩하기 : 화면 UI 프로그래밍(templates/ 디렉토리 하위의 *.html 파일)

-뷰 코딩하기 : 앱 로직 프로그래밍(views.py)

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

중고생들과 파이썬 프로그래밍 공부를 시작한 지 벌써 2년이 훌쩍 넘었다. 꼬마였던 학생들은 벌써 중3이 되기도 하였다. 그동안 파이썬의 기초 문법부터,  os, random, math, sys,  email 등의 기본 라이브러리와  turtle, tkinter, pygame, pandas, matplotlib, BeautifulSoup, requests 등을 이용하여 게임 개발, GUI 개발, 데이터 분석, 웹 크롤링까지 다양하게 학생들과 경험을 나누고 있다. 

 

파이썬을 가장 먼저 시작했던 반은 이제 다음 과정을 선택해야 할 때이다. 

파이썬으로 배울 수 있는 것은 데이터 분석 심화, 웹 크롤링 심화, 이미지 처리, 웹 개발 등 수많은 배움의 영역이 있는데, 학생들에게 물어보니 파이썬 웹 프로그래밍을 해보고 싶다고 하였다. 아마도, 웹을 늘 사용하고 있고 잘 만들면 서비스도 가능하니 도전해 보고 싶어 하는 듯하였다. 

 

그러면 어떤 책으로 맛을 보는 것이 좋을까?

평소에도 웹 교재는 지속적으로 검토 중이었고, 그중 한빛미디어  파이썬 웹 프로그래밍은 기초편, 실천 편은 집에 1판, 2판 모두 있어서 보고 있었는데 이번에 3판이 새로 나왔다고 해서 내용을 살펴보게 되었다.  

 

웹은 기본적으로 배워야 할 것들이 많다. 

클라이언트를 표현하는 html, css, javascript 그리고 서비스를 담당하는 서버 영역의 웹서버, 프레임워크,  sql, 웹 애플리케이션 부분까지 말이다. 파이썬으로 웹 프로그래밍을 해야 한다면 Django를 빼놓을 수 없다. 

이 책 파이썬 웹 프로그래밍 기초편의 저자 김석훈 님은 C언어부터 시작하여 백엔드 서비스를 개발하고 네트워크 운영 관리 프로그램도 개발한 바 있는 고수이다. 이 책도 2015년 초판이 나온 이후로 벌써 3판이 나오는 것을 보면 그 인기를 알 수 있다. 

 

이 책의 구성을 보면

Chapter 1에서는 웹 프로그래밍이 무엇인지 설명한다. 웹서비스의 기술적 구성을 처음 접하는 입문자들을 위해 구성된 챕터라고 말할 수 있다.  

Chapter2에서는 urllib와 html과 같은 파이썬에서 웹을 지원하는 표준 라이브러리에 대해서 설명한다. python2 점대 버전과 python3으로 넘어오면서 관련 라이브러리가 어떻게 변경되었는지도 표로 정리되어 있다. 

Chapter3, 4장에서는 Django 프레임워크의 개념과 동작원리와 핵심 기능에 대해서 설명한다. 장고의 MVT 패턴으로 저자와 함께 실습을 따라 하면서 애플리케이션을 만들고, 프로젝트도 설정하고 템플릿도 작성할 수 있도록 구성하였다.  그리고 프로젝트 진행시 반드시 알아야 하는 6개의 기능을 선정하여 자세하게 설명하여 우선순위가 있는 핵심 기능을 익힐 수 있도록 하였다. 

Chapter5에서는 좀 더 기술적으로 업그레이드된 클래스 형 서비스를 만드는 방법을 설명하였는데, 기존의 서비스를 클래스 형으로 변환해 보면서 어떻게 다른지 알 수 있도록 하였다. 

Chapter6장부터는 아파치 웹서버와 NGINX, pythonAnywhere 클라우드 웹 서버에서 장고 애플리케이션이 돌아가게 하기 위해 필요한 기술적 요소를 설명하였다. 즉, 내 PC에서 서비스를 개발한 후, 실제로 서비스를 하려면 기존의 서버에 올려야 하는데 이와 관련된 사항이 있는 챕터라고 할 수 있다. 

 

한빛미디어의 <Django로 배우는 쉽고 빠른 웹 개발 파이썬 웹 프로그래밍 기초편>의 특징을 요약하자면 아래와 같다. 

2015년 초판이 출판된 이후로 독자들의 피드백을 적용하여 3판까지 출판되었다는 점

기초편을 다루고 실전편으로 학습할 수 있도록 단계별로 구성되었다는 점

웹을 모르는 사람들도 웹개념부터 이해할 수 있도록 챕터가 구성되었다는 점

웹을 만들어본 사람들도 파이썬 웹 개발이 어떤 특징이 있는지 알 수 있도록 구성하였다는 점

파이썬 프레임워크 중에서도 많이 알려진,  장고 Django를 다루고 있다는 점

저자와 함께 하나씩 따라 하면서 결과를 확인하면서 익힐 수 있도록 친절하게 설명되어 있다는 점

기존의 웹서버에 올리거나 연동할 수 있도록 별도의 챕터를 구성하였다는 점

윈도우와 리눅스에서 개발하는 사용자를 위해 두 가지 환경에서 테스트하면서 설명하였다는 점 

 

​또한, 한빛출판 홈페이지에 들어가면 교재에서 사용한 샘플 프로그램 소스를 다운로드할 수 있다. 

프로그래밍 연습을 할 때 앞 챕터에서 막히면 이후 챕터 진도 나가기에 어려움이 있는데, 한빛소프트 홈페이지에서 예제 소스를 내려받아서 압축을 해제하면 아래와 같이 챕터별로 정리되어 있기 때문에 테스트하기에도 수월하다. 

 

<Django로 배우는 쉽고 빠른 웹 개발 파이썬 웹프로그래밍 기초편>은 기초편이기는 하지만 웹개발을 처음 해보는 사람이 보기에는 살짝 어려울 수도 있다. 기존에 웹개발을 해본 사람이 파이썬으로 웹서비스를 어떻게 하면 구현할 수 있는지 정도의 기술적 수준에서 만들어진 책이다. 

하지만, 파이썬 문법을 알고 있고 약간의 웹서비스에 대한 개념만 이해한다면 충분히 실습하면서 이해할 수 있도록 구성돼 있다.

 

​프로그래밍을 하는 사람이라면 웹 개발 경험은 필수라고 생각한다. 그리고 파이썬으로 웹 개발을 하려고 한다면  Django를 꼭 경험해 보아야 한다. 왜냐하면 프로젝트 구조를 빠르게 구성해 주고 웹 프로그래밍에 필요한 기능을 간단하게 경험해 볼 수 있도록 해주기 때문이다. 

수많은 유경험자들의 피드백을 담아, 벌써 3판까지 출판된 <Django로 배우는 쉽고 빠른 웹개발 파이썬 웹프로그래밍 기초편>을 꼭 한번 경험해 볼 것을 권해 본다.  

 

무엇보다 가독성에 대한 단점이 너무나 크게 다가왔고,

책을 읽는 동안 다른 책에 비해서 피로감이 훨씬 더 컸던 책이었다.


아무래도 초판 -> 개정판 -> 3판을 거치면서 내용들이 추가되고 변경도 되었을 것이고,
지은이께서 좀 더 많은 내용들을 전달해주려는 노력들이 책을 보다보면 알 수 있을 것이다.

무엇보다 책의 전체적인 구성자체는 웹 프로그래밍, 무엇보다 파이썬에 초점이 맞춰져 있다는 것에서는 정말 좋은 책이라고 생각한다.
다만 Django를 공부하기 위해서 이 책을 구매하려고 한다면, 진지하게 서점에 들러서 한번 책을 열어보고 괜찮다면 구매하길 바란다.

Django 입문서로는 추천하지 않는다.
파이썬을 활용한 웹 프로그래밍이라는 주제로는 확실히 기초 지식을 쌓기 위해서,
혹은 추가적으로 평소에 모자란 내용들을 채우기 위해서는 이 책을 추천한다.
 
자세한 리뷰는 블로그를 참고해주세요

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

https://blog.naver.com/ab415/223052947104

XL.jpg

 

 

파이썬 웹 프로그래밍은 파이썬 문법을 다 배우고 난 후 이 파이썬으로 무언가를 만들어 보고 싶은 분들께 추천하고 싶은 책이다. 반대로 아직 파이썬 문법이 약하신 분들께는 다소 어려울 것이다.

HTTP 개념에 대해 한번 정리하고 파이썬의 웹 라이브러리를 살펴본다. urllib.parseurllib.requesthttp.client 등과 같이 클라이언트를 위한 라이브러리부터, HTTPServerBaseHTTPRequestHandler 등 웹 서버 라이브러리 사용방법도 배울 수 있다. 

그리고 이제 이 책의 주요 내용인 장고를 MVT 패턴에 맟게 프로그래밍 과정을 설명해주고 또 예제를 통한 실습이 진행된다. MVC 패턴은 많이 들어봤는데 MVT 패턴이 생소하신 분들도 있을텐데 MVC가 Model, View, Controller 였다면 이 MVC 패턴의 개념을 그대로 받아들여 장고 프레임워크에서는 MVT Model, View, Template 를 사용한다. 

마지막으로는 개발 뿐만이 아니라 PythonAnywhere이나 AWS와 같은 클라우드 서버 배포 방법도 설명해주고 있다. 

실습 코드들이 터미널에서 작성하고 실행하기에 터미널과 친해질 수 있는 경험이었다.

  

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

저는 백엔드보다는 프론트엔드쪽을 좀더 많이 배웠었는데, 인터넷의 구성원리 그리고 백엔드에서 일어나는 오류코드들을 소개하는 부분이 흥미로웠습니다! 

아직 완독은 하지 못했지만 재미있게 차근 차근 해볼 수 있을거 같습니다!

 

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

 

[서론]

 

파이썬에서 Django, Flask는 언제나 양대 웹 프레임워크이다. 쟝고는 모든 검증된 기능을 한 방에 제공하며, 플라스크는 가장 간편하고 작게 도입을 시작할 수 있어서 편리하다.

 

"파이썬 웹 프로그래밍, 기초편"은 Django 프레임워크를 사용하여 웹 애플리케이션을 구축하는 방법을 배우고자 하는 파이썬 웹 프로그래밍 입문자를 위한 책이다. 

 

 

[구성]

 

이 책은 개발 환경 설정부터 완성된 애플리케이션을 서버에 배포하는 방법까지 모든 내용을 간결하게 설명한다. 

 

이 책은 코드 예제와 핵심 개념에 대한 설명이 많이 포함되어 있어 따라하기 쉽고 잘 구성되어 있다. 저자는 복잡한 주제를 초심자에게 알기 쉬운 방식으로 설명하면서 타 언어로 웹 프로그래밍 경험이 있는 개발자들에게도 충분한 깊이를 제공한다.

 

 

[목차]

 

Chapter 01 웹 프로그래밍의 이해

Chapter 02 파이썬 웹 표준 라이브러리

Chapter 03 Django 웹 프레임워크

Chapter 04 Django의 핵심 기능

Chapter 05 실습 예제 확장

Chapter 06 Django의 웹 서버 연동 원리

Chapter 07 Cloud 서버에 Django 배포

Chapter 08 NGINX-Gunicorn 연동

Chapter 09 NGINX-uWSGI 연동

Chapter 10 Apache 웹 서버와 연동

 

 

[장점]

 

이 책의 장점 중 하나는 모델 및 폼 구축, 뷰 및 템플릿 작업, 타사 앱 및 플러그인 사용, 프로덕션 서버에 애플리케이션 배포 등 다양한 주제를 다룬다는 것이다. 

 

또한 실제 애플리케이션을 구축하는 방법을 보여주는 다수의 사례를 포함하고 있어 실용적이고 기능적인 애플리케이션을 구축하는 방법을 보여준다.

 

이 책의 가장 큰 장점 중 하나는 전체적으로 잘 구성되어 있다는 것이다. 각 장의 내용이 서로 일관되게 이어지며, 명확하고 자세한 설명과 함께 코드 예제가 충분히 제공되어 있다. 이 책의 또 다른 강점은 다양한 주제를 다룬다는 것이다. 모델, 뷰, 템플릿, 폼, Django Admin, 사용자 인증, 배포 등 많은 내용을 다룬다.

 

 

[단점]

 

이 책의 단점은 가끔 내용이 너무 상세해서 Django 프레임워크 초보자들에게는 이해하기 어려울 수 있다는 것이다. 또한 때때로 설명이 너무 기술적이어서 구성이 단조롭게 느껴지는 부분도 약간은 있다. 

 

 

[결론]

 

이 책은 전반적으로 쉽게 이해할 수 있는 문체로 쓰여져 있다. Django에 대한 이해가 없는 초보자들도 이 책을 통해 Django를 사용하여 웹 애플리케이션을 구축하는 방법을 배울 수 있다. 이 책은 Django를 사용하여 개발자들이 새로운 웹 애플리케이션을 빠르게 만들 수 있도록 도와준다.

 

전반적으로 "파이썬 웹 프로그래밍, 기초편"은 Django를 사용하여 웹 애플리케이션을 구축하는 방법을 배우고자하는 모든 사람들에게 강력히 추천되는 자료이다. 이 책은 잘 쓰여져 있으며 따라하기 쉽다. 쟝고 웹 개발 프레임워크를 탐색하려는 모든 사람들에게 견고한 기초를 제공한다. 파이썬에서 쟝고르 사용하여 웹 애플리케이션을 구축하는 방법을 배우기에 좋은 출발점이 될 것이다.

1.jpg

 

웹 프로그래밍은 개발자에게는 필수적인 요소입니다. 특히 요즘 개발언어로 파이썬이 한참 각광받고 있어 파이썬으로 하는 웹 개발은 현업 개발자들에게 핵심적인 기술력으로 여겨지고 있습니다. 웹 프로그래밍의 개념에 대해 간단히 설명하자면 웹 프로그램은 기본적으로 클라이언트-서버로 이루어 지는데 이러한 클라이언트와 서버를 개발하는 일입니다. 웹 클라이언트와 웹 서버를 같이 개발할 수도 있고 둘 중 하나만 개발할 수도 있습니다. 장고(Django)는 파이썬 웹 프레임워크로 파이썬 철학과도 맞닿아 있으며 개발을 바로 시작할 수 있도록 프로젝트 뼈대를 만드는 역할을 합니다. 또한 데이터베이스를 쉽게 연동시켜 주며, 쉽고 편리하게 사용할 수 있도록 Admin 관리 기능 등 웹 프로그래밍에 필요한 기능은 모두 있다고 이야기 할 수 있을 정도로 풍부한 기능을 제공하고 있어 파이썬으로 개발하는 것이 생소한 분들이 쉽게 개발을 시작하실 수 있습니다.

 

제가 이 책을 선택한 이유는 이 책이 장고의 문법이나 코딩 방식만 설명하는 것에 그치지 않고 웹 프로그래밍의 기반 지식을 전달하고자 노력하였고, 장고를 어느정도 잘 다루게 된 후에도 필요한 내용을 찾아볼 수 있도록 내용을 구성하고 있어 파이썬이 첫 개발언어이신 분들이나 다른 개발언어를 사용하시다가 파이썬을 사용하여 개발하시는 것이 처음이신 분들이 편안하게 개발을 진행하실 수 있기 때문입니다.

이 책의 특성은 웹 라이브러리 및 모든 상태 코드를 설명하였고, 자신에 맞는 데이터베이스를 선택할 수 있도록 장고에 여러 가지 데이터베이스를 연동하는 방법도 안내하고 있으며 또한, 개발한 프로그램을 배포하는 과정에서 발생하는 시행착오를 보다 최소화할 수 있도록 Linux 배포 환경을 다각화해서 설명하고 있다는 점입니다.

 

구성

Chapter 1: 웹 프로그래밍의 이해

Chapter 2: 파이썬 웹 표준 라이브러리

Chapter 3: Django 웹 프레임워크

Chapter 4: Django의 핵심 기능

Chapter 5: 실습 예제 확장

Chapter 6: Django의 웹 서버 연동 원리

Chapter 7: Cloud 서버에 Django 배포

Chapter 8: NGINX-Gunicorn 연동

Chapter 9: NGINX-uWSGI 연동

Chapter 10: Apache 웹 서버와 연동

APPENDIX A: 외부 라이브러리 requests, beautifulsoup4 맛보기

APPENDIX B: 장고의 데이터베이스 연동

APPENDIX C: HTTP 상태 코드 전체 요약

APPENDIX D: PyCharm 무료 버전 사용하기

 

파트별로 나누어 봤을때 1~2장은 웹 프로그래밍의 개념 및 표준 웹 라이브러리에 대해 설명하고 있고, 3장은 Django 기초 사용 방법에 대해, 4~5장은 Django를 사용하여 웹 사이트 개발하는 방법에 대해, 6~10장은 Cloud 서버, NGINX 등 여러 서버와 연동하는 방법에 대해 설명하고 있습니다. 부록으로는 현재 넷상에서 자주 사용되는 라이브러리를 사용하여 간단한 실습 방법과 데이터 베이스와 연동, HTTP 상태 코드 요약, 파이썬 개발프로그램인 PyCharm 무료버전을 사용하는 방법에 대해 설명하고 있습니다.

 

개인적인 생각으로 학습은 파이썬 문법을 공부한 후에 웹 프로그래밍을 배우려는 초보자, 개발자로 취업 및 이직을 희망하시는 분들께서는 1장부터 시작하시면 좋을 것 같고 어느정도 경험이 있으신 분들(2년차~ 또는 다른 개발언어로 웹 프로그래밍을 한 경험이 있음)부터는 2장까지는 쭉 훓으시면서 파이썬 웹 라이브러리 구조에 대해 파악한다는 방식으로 보시고 3장부터 학습하시는 것이 좋을것 같습니다.


개인적으로 약간의 단점이 어쩌면 욕심일수도 있는게 좀더 많은 실습 예제 및 비즈니스 케이스가 담겨있으면 더 좋았지 않았을까라는 아쉬움이 있습니다.

 

저의 리뷰를 읽어주셔서 감사합니다. 다음에는 좀더 유용하고 좋은 책으로 더 나은 리뷰를 통해 여러분께 책을 소개시켜드릴 수 있도록 더 노력하겠습니다.

 

감사합니다.

 

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

[나는리뷰어다] 한빛미디어, 파이썬 웹 프로그래밍 3판


글 / 사진 : 서원준 (news@toktoknews.com


 

 


본 소개 글은 한빛미디어 나는리뷰어다를 통해서 도서를 제공받아 진행하였으며, 구매가이드 성격이 강합니다. 


필자가 가장 아픈 손가락으로 꼽는 것이 몇 가지 있다. 프로그래밍, 데이터베이스 등의 컴퓨터 개발자 공부, 컴퓨터 자격증 공부, 영어, 일본어, 중국어 등의 어학공부, 그리고 컴퓨터 그래픽, 네트워크, 오피스 공부들이다. 이들 4가지는 필자 입장에서는 책도 준비돼 있고 공부도 어느 정도 하고는 싶지만 욕심때문에 망가지는 경우가 많았다. 


그 중 컴퓨터 프로그래밍 공부는 가장 아쉬운 상황이다. 특히 최근까지는 파이선 프로그래밍을 공부하려고 하였지만 솔직히 쉽지 않았다. 파이썬은 최근에 소개한 책과 함께 공부를 시작했더라면 지금쯤 인공지능을 활용한 다양한 머신러닝, 딥러닝 프로그래밍도 개발의 거의 완성단계까지 갔을텐데 하는 아쉬움이 여전히 남아있다. 모든 공부는 평생 해야 하는 만큼 절대 포기하지 않을 예정이다. 


 

 

 

 

 

 

 

 

 

 

 

 

 

 


파이썬만 있다면 못하는 것이 없다. 인공지능의 기능 중에는 파이썬으로 만든 것이 많다. 그 정도로 파이썬의 인기는 상상 그 이상이다. 그런데 파이썬으로 웹 프로그래밍을 배운다? 필자가 이 책을 만나기 이전에는 전혀 몰랐던 부분이다. 


한빛미디어에서 출간된 파이썬 웹 프로그래밍 3판은 장고란 프레임워크를 활용해서 배우는 쉽고 빠른 웹 개발을 도와주는 책이다. 이 책은 웹 개발부터 가장 어려워 하는 클라우드 배포, 그리고 웹 서버 연동까지 가능한 책이다. 파이썬 3 계열과 장고 프레임워크 4 계열 버전에 완벽 대응한다. 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


도서 소개를 마치면서


참고로 장고(Django)에 대해서 간략히 설명하자면 파이썬 기반의 수많은 웹 프레임워크 중 준비가 잘 된 프레임워크로 제공하는 기능이 풍부해서 쉽고 빠른 웹 개발이 가능하고 사용자가 가장 많다. 인터넷 서점에서 장고를 검색해 보면 많은 책들이 나와 있는데 그만큼 장고의 인기가 좋다는 것이다. 필자는 이 책을 잘 활용하여 향후 업무에 응용할 계획이다. 


[소개]

한계? 그게 뭔지 모르는 다재다능한 파이썬에

장고(Django)를 더하면 누구나 쉽게 웹 프로그래밍을 할 수 있다!


파이썬은 쉽게 배울 수 있고 널리 활용할 수 있어 데이터 분석, 머신러닝, 크롤링 등 다양한 분야에 활용되고 있다. 특히 여러 분야 중 웹 개발에 가장 많이 활용되고 있는데 파이썬을 활용하면 웹 프로그래밍을 쉽게 끝낼 수 있기 때문이다.


시중에는 매우 다양한 파이썬 웹 프레임워크가 존재한다. 다양한 웹 개발 지식을 축적한 사람이라면 자신의 프로젝트에 맞는 적합한 프레임워크를 선택해서 사용하면 되지만, 웹 개발을 처음 시작하는 사람은 수많은 프레임워크 중 어떤 것을 선택해야 할지 혼란스러울 수 있다. 그렇다면 고민할 것 없이 장고를 선택하자.


장고는 프로젝트 뼈대 생성, 데이터베이스 연동, Admin 관리 기능 등 웹 프로그래밍에 필요한 모든 것을 갖추고 있다고 말할 수 있을 정도로 풍부한 기능을 제공한다. 장고를 활용하면 이러한 기능을 단 몇 줄의 코드만으로 간단히 구현할 수 있다. 또한 파이썬 웹 프레임워크 중 사용자가 가장 많아서 관련 정보를 손쉽게 얻을 수 있다. 그렇다면 장고를 무엇으로 어떻게 배워야 할까? 고민할 것 없이 『파이썬 웹 프로그래밍, 기초편』으로 배움을 시작하자.


[목차구성]

Chapter 01 웹 프로그래밍의 이해

_1.1 웹 프로그래밍이란?

_1.2 다양한 웹 클라이언트

_1.3 프론트엔드와 백엔드

_1.4 HTTP 프로토콜

_1.5 URL 설계

_1.6 웹 애플리케이션 서버


Chapter 02 파이썬 웹 표준 라이브러리

_2.1 웹 라이브러리 구성

_2.2 웹 클라이언트 라이브러리

_2.3 웹 서버 라이브러리

_2.4 CGI/WSGI 라이브러리


Chapter 03 Django 웹 프레임워크

_3.1 장고의 특징

_3.2 장고 프로그램 설치

_3.3 장고에서의 애플리케이션 프로그래밍 방식

_3.4 애플리케이션 설계하기

_3.5 프로젝트 뼈대 만들기

_3.6 애플리케이션 개발하기 - Model 코딩

_3.7 애플리케이션 개발하기 - View 및 Template 코딩


Chapter 04 Django의 핵심 기능

_4.1 Admin 사이트 꾸미기

_4.2 장고 파이썬 셸로 데이터 조작하기

_4.3 템플릿 시스템

_4.4 폼 처리하기

_4.5 클래스형 뷰

_4.6 로그 남기기


Chapter 05 실습 예제 확장

_5.1 새로운 애플리케이션 만들기

_5.2 프로젝트 첫 페이지 만들기

_5.3 polls 애플리케이션을 클래스형 뷰로 변경하기


Chapter 06 Django의 웹 서버 연동 원리

_6.1 장고의 wsgi.py 파일

_6.2 장고의 WSGI 인터페이스

_6.3 운영 서버 적용 전 장고의 설정 변경 사항

_6.4 리눅스 배포 환경 선택


Chapter 07 Cloud 서버에 Django 배포

_7.1 PythonAnywhere 사이트 가입하기

_7.2 장고 소스 가져오기

_7.3 리눅스 명령으로 압축 풀기

_7.4 파이썬 가상 환경 만들기

_7.5 PythonAnywhere 서버에서 장고 설정 변경하기

_7.6 PythonAnywhere 웹 서버 설정하기

_7.7 지금까지의 작업 확인하기


Chapter 08 NGINX-Gunicorn 연동

_8.1 Ubuntu 가상 환경 구성 및 장고 설정 변경하기

_8.2 Ubuntu에 NGINX 구성하기

_8.3 user 권한 Gunicorn 구성하기

_8.4 root 권한 Gunicorn 구성하기

_8.5 실행 테스트하기


Chapter 09 NGINX-uWSGI 연동

_9.1 Amazon Linux 가상 환경 구성 및 장고 설정 변경하기

_9.2 Amazon Linux에 NGINX 구성하기

_9.3 user 권한 uWSGI 구성하기

_9.4 root 권한 uWSGI 구성하기

_9.5 실행 테스트하기

_9.6 SQLite3 에러 조치 방법


Chapter 10 Apache 웹 서버와 연동

_10.1 CentOS 가상 환경 구성 및 장고 설정 변경하기

_10.2 httpd 웹 서버와 mod_wsgi 확장 모듈

_10.3 mod_wsgi 설치하기

_10.4 내장 모드로 mod_wsgi 실행하기

_10.5 데몬 모드로 mod_wsgi 실행하기



[이 책의 주요 특징]

● 『파이썬 웹 프로그래밍, 기초편』의 특징

1. 누구나 쉽게 따라 할 수 있도록 윈도우 환경에서 개발을 진행한다.

2. 웹 프로그래밍 기초 지식과 파이썬 웹 표준 라이브러리 활용법을 알려 준다.

3. 파이썬 웹 프레임워크 중 범용성이 가장 높은 Django의 기초 개념을 제대로 알려 준다.

4. MVT(Model, View, Template) 패턴에 따른 충분한 설명과 실습으로 웹 애플리케이션 프로그래밍 방식과 원리를 제대로 알려 준다.

5. PythonAnywhere, AWS와 같은 클라우드 서버 배포 방법을 알려 준다.

6. 다양한 리눅스 배포판에서 WSGI 서버(Gunicorn, uWSGI)와 웹 서버(Apache, NGINX)를 연동하는 방법을 알려 준다.


● 『파이썬 웹 프로그래밍, 기초편』 3판에서 달라진 점

1. 파이썬 3.x 및 장고 4.x 버전에 맞게 코드 업데이트!

2. Ubuntu, Amazon Linux, CentOS 등 다양한 리눅스 배포판으로 배포 환경을 다각화!

3. 독자 피드백을 바탕으로 웹 프로그래밍 및 장고 지식 설명 추가!!


● 『파이썬 웹 프로그래밍, 기초편』을 읽어야 하는 당신

1. 파이썬 기본기를 바탕으로 생산적인 일을 하고 싶은 초급 개발자

(『혼자 공부하는 파이썬』을 완독하고 웹 프로그래밍을 시작하고 싶은 개발자 지망생)

2. 다른 언어를 사용하다 파이썬으로 전환하려는 웹 개발자

3. 스타트업처럼 빠르게 웹 서비스를 구축해야 하는 조직의 개발자


[이 책의 독자 대상]

프로그래밍 경험이 전혀 없지만, 파이썬으로 프로그래밍을 입문해보고 싶은 독자

파이썬 기초 문법은 배웠지만, 여전히 프로그래밍을 어떻게 작성해야 하는지 모르는 사람

실생활 문제를 개념화하고, 작은 단위로 나누고, 단계별 코드 작성을 통해 문제를 해결하는 과정을 통해 체계적으로 사고하는 법, 컴퓨팅 사고력을 익히고 싶은 사람

파이썬 문법이 아니라 프로그래머들이 실제로 작업하는 방법을 익히고 싶은 독자


[서평]

Django로 배우는 쉽고 빠른 웹 개발 파이썬 웹 프로그래밍 3판 기초편는 Django로 웹 개발을 배우려는 사람들을 위한 훌륭한 책입니다. 이 책은 명확하고 간결한 방식으로 작성되어 초보자도 쉽게 따라할 수 있습니다.


저자는 Django에 들어가기 전에 HTML, CSS 및 JavaScript를 포함한 웹 개발의 모든 기본 사항을 다룹니다. 이 접근 방식은 독자가 웹 개발의 보다 복잡한 측면으로 이동하기 전에 강력한 기반을 갖도록 합니다.


이 책의 강점 중 하나는 실제 사례에 중점을 둔 것입니다. 저자는 독자가 자신의 웹 애플리케이션을 구축하는 데 사용할 수 있는 많은 코드 스니펫과 예제를 제공합니다. 이 실습 접근 방식은 독자가 행동을 통해 배우는 데 도움이 되며 실제 적용을 통해 배우는 것을 선호하는 사람들에게 특히 효과적입니다.


이 책은 또한 웹 애플리케이션 배포 및 데이터베이스 작업과 같은 고급 주제를 다룹니다. 이 섹션은 웹 개발 기술을 다음 단계로 끌어올리고자 하는 독자에게 특히 유용합니다.


또 다른 장점은 Django로 웹 애플리케이션을 개발하기 위한 모범 사례와 권장 기술을 다루고 있다는 것입니다. 저자는 일반적인 웹 취약성으로부터 애플리케이션을 보호하기 위해 프로젝트를 구조화하고, 효율적이고 유지 관리 가능한 코드를 작성하고, 보안 조치를 구현하는 방법에 대한 지침을 제공합니다.


전반적으로 이 책은 따라하기 쉬우며 독자가 자신의 웹 애플리케이션을 구축하는 데 도움이 되는 많은 실제 예제를 제공합니다. 명료한 작문 스타일, 실용적인 예, 모범 사례에 대한 포괄적인 범위는 초보자와 숙련된 개발자 모두에게 이상적인 지침서로 추천합니다.



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

 

Django로 웹 프로그래밍을 쉽게 배울 수 있는 책이 나온 것 같다. Django로 프로젝트를 진행할 거라 생각했는데 무산이 되서 조금 아쉽기는 한데 그래도 이 책을 읽으면서 Django가 무엇인지 알아갈 수 있었다.

 

 

 

이렇게 간단하게 웹 서버를 반들 수 있다. 물론 파이썬과 라이브러리를 써서 가능한 일이다. 내부적으로는 당연히 더 복잡한 연산들이 많이 일어나고 있다. 요즘 ChatGPT가 유명하던데 거기에 부탁해도 비슷한 코드를 작성해 줄것 같다는 생각이 든다.

 

 

 

Django의 특징과 장점에 대해서 책에 잘 나와있다. Django는 특히 DB를 편리하게 다루는데 도움을 많이 줘서 좋은 프레임워크라고 생각이 든다.

 

 

 

프론트엔드 까지 구성해 볼 수 있도록 책에 예제가 잘 실려있다. Django를 사용해 간단한 개인 웹사이트를 만들고 싶다면 이 책을 봐도 괜찮을 것 같다는 생각이 든다.

 

 

 

다 만들어진 웹 서비스는 Cloud서비스에 배포해 볼 수 있도록 책에 설명이 잘 되어 있다. NginX와 Apach를 연동하는 방법까지 소개하고 있으니 Linux등이 플랫폼에서 Demon 서비스를 띄우는데 까지 도움을 받을 수 있다.

 

 

 

이 글은 한빛미디어로 부터 책을 증정받아 작성되었습니다.

파이썬 기반 웹 프로그래밍 서적으로 두번째 개정을 거처 3판이 나오는 책이다. 2판에서는 윈도우와 리눅스에서의 서버 환경을 구성하여 진행 되는 부분이 3판에서는 대세가 된 클라우드 서버 기반과 리눅스 서버 기반으로 변경 되었다.

CHAPTER 01 웹 프로그래밍의 이해
웹 프로그래밍을 잘 모르는 사람을 대상으로 간략하게 내용을 전달하고 있다. 말 그대로 간략하게 정리하였기 때문에 네트워크 환경에 대한 이애 없이 파이썬 문법만 떼고 웹 프로그래밍에 입문 하는 입장에서는 무슨 소리를 하는지 모를 수도 있겠다는 생각이 든다.
하지만 그렇다고 웹 프로그래밍을 할 수 없다는 이야기는 아니다. 알아두어야 할 것? 공부해야 할 것이 무엇인지 확인 하고 넘어 가는 것으로 이해하고 넘기면 될 것이다.

CHAPTER 02 파이썬 웹 표준 라이브러리
파이썬으로 웹 프로그래밍을 하기 위한 표준 라이브러리들을 이용한 예제를 소개하는 내용이다. 처음 볼 때는 어렵게 느껴질 수 있겠다는 생각이 들지만 이 부분이 이 책에서 중요한 부분이 아닐까 한다. 딱딱하고 재미없는 내용이 대부분 기본기 수양에 필요한 내용인 것처럼 뒤에 이어질 내용들을 보다가도 언제든지 앞으로 되돌아와서 보지 않을까싶다.

CHAPTER 03 Django 웹 프레임워크
Django 프레임워크를 설치하고 사용하기 위한 기본적인 세팅을 하고 예시로 프로젝트를 생성해서 설명하고 있다. 내용이 많아지고 복잡해지기 시작하는 부분이라서 그런지 소챕터 말미에 있는 “지금까지 작업 확인하기”에서 그간에 작업내용을 점검하고 다음내용으로 나갈 수 있도록 하고 있다. 그러다 보니 예제에 설명도 길어지고 있다 보니 조금 부담스러운 부분이 있다. 이런 부분을 보면 이 책은 무작정 따라 하기식이 아니라는 점을 염두에 두어야 할 것이다.

CHAPTER 04 Django의 핵심 기능
3장에서 생성한 프로젝트의 admin 페이지를 수정하는 내용으로 부터 시작을 하고 있다. 마치 워드프레스 사용법처럼 느껴져서 워드프레스를 사용하는 사람입장에서는 설명하는 내용이 익숙하게 다가왔다. 워드프레스가 php로 되어 있는 것처럼 django도 파이썬으로 제어하는 워드프레스로 비유를 해도 되려나. 물론 워드프레스와 Django의 성격은 다르겠지만 말이다.
파이썬을 가지고 무엇을 할지 모르는 방황하는 상태라면 이 책으로 웹 프로그래밍에 빠져들어도 좋을 것이다. 내용을 이해하고 실습해 나가는 길이 호락호락 하지는 않겠지만 자세한 설명과 체계적인 예제를 따라 하다 보면 자신만의 웹 어플리케이션 구현이 가능 할 것이다.

CHAPTER 05 실습 예제 확장
앞에서 작성한 예제를 이용하여 실습을 진행하기 때문에 “지금까지 작업 확인하기” 에서 꼭 정상적으로 작동 하는지 여부를 확인 하고 실습에 들어가야 하겠다. 그것이 싫다면 예제 프로그램을 다운로드 해서 실습을 해도 무방할 것이나. 프로그래밍 공부는 백문이 불여일타라고 하지 않은가. 계속 코딩 해가면서 실습 하는 것이 좋을 것 같다.

CHAPTER 06 Django의 웹 서버 연동 원리
Apache, NGINX, PythonAnywhere클라우드 엡 서버에서 장고 어플리케이션을 구동하기 위한 내용을 설명하고 있다. 이로서 개발환경과 운영환경에 대한 이해를 할 수 있도록 구성되어 있디.

CHAPTER 07 Cloud 서버에 Django 배포하기
작업한 예제를 pythoneverywhere라는 클라우드 환경에서 테스트 해 볼 수 있도록 하는 방법을 설명하고 있다. 이 부분은 내용은 많지 않지만 참 유용한 정보를 제공하고 있다고 칭찬하고 싶다. 웹 프로그래밍 학습시 매번 고민 하는 것 중에 하나가 1대 pc에서 서버와 클라이언트 개발을 동시에 하므로 겪게 되는 구조적인 문제 발생의 요소를 어떻게 처리 할까 하는 것이었는데 클라우드 환경을 제공하는 곳에서 더 쉽게 개발에 임할 수 있도록 친절하게 설명해주고 있다.

이 부분이 너무도 맘에 들었다. 보통 웹 프로그래밍의 경우 서버를 통한 배포 방법은 잘 나와 있는 경우가 드문 상황인데 이에 비하면 참 친절한 구성이다.

CHAPTER 08,09에서는 apache와 NGINX와 Django를 연동하여 사용하는 방법을 설명하고 있는데 apache와 NGINX를 사용 중인 사람들이라면 쉽게 이해가 갈 것이나, 그렇지 않은 사용자의 경우에라도 부담 가지지 말고 이런 웹 서버 프로그램이 있구나. 알고 나서 추후에 필요에 따라 조금 심도 깊게 공부해도 될 것이다.

어느 분야든 책 하나만 봐서 다 알 수가 없다. 그렇지만 이 책 하나만 봐도 파이썬을 이용한 웹 프로그래밍은 어떤 방향으로 나가야 할 지 길을 쉽게 제시 해준다는 점이 참 맘에 들고 빅데이터와 관련해서 나오는 파이선 서적 들이 많은 상황에서 웹 프로그래밍 부분의 대한 입문서로 굳건히 자리를 차지할 것 같다.

 

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

 

파이썬으로 웹 개발을 해야할 때가 있다. 그런데 맨땅에 헤딩하는 식으로 밑바닥부터 차근차근 쌓아 올리며 개발을 진행한다면 생산성이 떨어질 수 밖에 없다. 그렇기에  프레임워크를 사용할 필요가 있다. 아니 사용해야 한다. 프레임워크를 사용함으로써 개발 속도와 생산성 모두 잡을 수 있기 때문이다. 

 

파이썬 생태계에서 대표적인 웹 프레임워크로는 Flask, Django 등이 있으며 요새는 신흥 강자로 부상하고 있는 Fast API가 주목 받고 있는 상황이다. 하지만 무엇보다 풍부한 자료와, 레퍼런스를 제공하며 다양한 사용자를 확보하고 있는 프레임워크는 단연 Django(이하 장고)이다. 장고가 제공하는 유연성과 기능적 풍부함은 여타의 프레임워크를 제치고 충분히 상위에 랭크될 가치를 갖고 있다. 

 

KakaoTalk_20221127_231540988.jpg

 

오늘 소개하는 이 책은 장고를 기반으로 파이썬 웹 개발을 안내하고 있는 서적으로서 부제는 'Django(장고)로 배우는 쉽고 빠른 웹 개발'이다. 참고로 본 서적은 3판으로서 출간된 지 오랜 시간이 지났음에도 새롭게 내용이 보강되어 출판되고 있는 국내에 얼마 안 되는 장고 관련 책이다. 시중에 장고와 관련된 책이 거의 없다시피 한 상황 속에서 꾸준히 다양한 독자층을 확보하고 있고 업데이트가 되어 독자에게 사랑 받는 책으로 평가된다. 

 

각설하고 이 책은 파이썬을 어느 정도 활용할 줄 아는 사람을 대상으로 한다. 파이썬 입문서를 통해 이제 막 파이썬의 기본을 닦았다면 도전하기에 더할 나위 없이 좋은 책이다. 파이썬 기본 문법을 알고 있다면, 무난하게 이 책을 끝까지 따라가며 웹 개발에 대한 기초를 탄탄히 닦을 수 있으리라 생각한다. 

 

웹 개발 경험이 없거나 웹에 대한 이해가 부족한 독자를 위해 본 서적은 웹 프로그래밍에 대한 이해를 책의 도입부에서 다루고 있다. 웹 개발을 위해 반드시 알고 있어야 할 개념과 지식을 저자의 세심한 배려를 통해 쉽게 파악할 수 있게 구성되어 있다. 물론 지면상의 한계로 웹에 대한 전부를 다룰 순 없지만 적어도 웹 개발을 위한 최소한이 담겨 있으므로, 부족한 부분은 독자의 노력이 어느 정도 필요할 수 밖에 없다. 

 

이윽고 파이썬과 관련된 웹 표준 라이브러리에 대한 챕터가 마련되어 있고 해당 라이브러리를 어떻게 활용하고 어느 때 사용하게 되는지에 대해 학습하게 된다. 이후 본격적으로 장고와 관련된 학습이 시작되는데, 장고의 특징을 위시해서 장고를 설치하고 MVT 패턴이 어떻게 구성되어 있으며 장고의 핵심 기능이 무엇인지에 대해 배울 수 있게 된다. 

 

실습 예제로 구성된 부분을 단계별로 확장해 나가며 웹 애플리케이션을 완성하고 웹 서버의 연동 원리에 대해 학습을 진행해 나간다. 실제 운영 환경에서는 웹 서버 위에 파이썬 웹 애플리케이션이 구동되기 때문에 웹 서버와 연동과 관련된 부분은 실무 개발을 함에 있어 반드시 이해하고 익혀야 하는 중요한 포인트라고 할 수 있겠다. 

 

이어서 PythonAnywhere와 같은 클라우드 환경에 파이썬 애플리케이션을 배포하는 팁을 얻을 수 있고, Nginx 및 Apache Httpd와 같은 오픈 소스 웹 서버 환경에 애플리케이션이 구동될 수 있는 설정을 어떻게 적용하고 구성하는지에 대한 과정을 학습하게 된다. 파이썬 기반의 실무 웹 개발 환경에서는 Nginx, Apache Httpd 등의 플랫폼이 많이 사용되므로 해당 파트에서 제공하는 내용이 굉장히 유용하지 않을 수 없다. 

 

이 책은 전반적으로 장고와 관련된 학습 과정이 깔끔하게 구성되어 있고, 군더더기 없는 설명과 독자를 배려한 상세한 내용 풀이를 통해 파이썬과 장고를 활용한 웹 개발의 기본을 여실히 제공하고 있다. 파이썬을 활용해 웹 개발을 시작해야 한다면  이 책과 시작해 보는 게 어떨까. 곁에 두고 오랫동안 읽고 싶게 만드는 이 책과 함께 장고를 시작한다면 재미와 기쁨 모두 누릴 수 있는 기회를 갖게 되리라 생각한다.  

 

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

이 책은 파이썬의 대표적인 웹 프레인워크인 장고를 이용해서 빠르게 웹 개발을 하는 방법을 알려주는 책이다. 2015년 초판이 출간된 이래 개정판을 거쳐, 3판에 이르기까지 8년의 세월동안 꾸준한 사랑을 받은 책으로 보인다.
 
수많은 파이썬 관련 서적과 질 좋은 무료 강의 또한 범람하는 요즘. 그럼에도 불구하고 이 책을 봐야하는 이유를 찾자면, 첫째. 책 속의 모든 실습 예제를 장고 공식 문서에서 발췌하였다는 점이다. 따라서 추후 책 속 내용을 조금 더 깊이 이해하고 싶은 니즈가 있어 공식 문서를 찾게 될 때 동일한 예제를 다룬 경험이 공식 문서를 이해하는 데 많은 도움을 줄 것이다. 
 
둘째. 운영체제와 상관없이 예제 소스를 실행할 수 있도록 친절하게 안내되어 있다. 특히 초보자의 경우 개발 환경 구성이 어려워 중도 포기를 하게되는 경우가 많은데, 그런 일이 없도록 쉽고, 누구나 무료로 사용할 수 있는 개발 툴을 권장하여 장벽을 제거하였다.
 
또한 실습만을 위해 다짜고짜 명령어나 코드를 타이핑 하기 전에, 나무가 아닌 전체 숲을 볼 수 있도록 프론트와 백엔드, HTTP 프로토콜 등 웹 프로그래밍의 기초 개념을 설명하여 자연스레 지식을 체득할 수 있도록 흐름이 짜여있어 누구나 보기에 부담이 없다.
 
다만 파이썬 기초 문법을 설명하는 서적은 아니므로 다른 서적이나 강의를 통해 문법을 공부하고 난 뒤에 활용해야 하는 책이다. 뿐만 아니라 시리즈 서적이 기초와 실전 두 권으로 나눠져 있어서 그런 것일까? 정말 기초적인 수준의 실습만 수록되어 있기 때문에 목차에 나와있는 기술들을 말 그대로 찍먹만 할 수 있도록 서술되어 있다. 때문에 정말 처음으로 장고를 접해 시작에 도움이 필요한 독자에게만 권할 만한 책이라는 생각이 든다.

 

장고로 배우는 쉽고 빠른 웹 개발 - 파이썬 웹 프로그래

 

 

    "파이썬 웹 프로그래밍" 이 벌써 3판이 나왔다. 이번 책에서는 장고 4.0 버전과 파이썬 3.10 버전을 윈도우 환경에서 개발할 수 있도록 환경을 구성했다. 더불어 이전 독자들의 피드백을 반영해서 웹 개발과 관련된 내용을 많이 추가했다고 한다. 일반적인 파이썬 웹 개발 내용과 함께 AWS, Ubuntu 등 리눅스 환경에서 개발하고 배포할 수 있는 환경도 함께 배울 수 있다. NGINX, APACHE 웹 서버 와 gunicorn, uWSGI 등 다양한 기술들을 사용해보고 배울 수 있으니 차근차근 따라가면 기초편이라고 소개한 책이지만 많은 것을 배울 수 있다.

 

 

장고 개발 환경

 

 

    장고 웹 프레임워크에 대한 특징을 설명하고 아주 기본적인 설치부터 개발까지 자세하게 챕터가 구성되어 있다. 이 책은 기본적으로 하나의 나만의 프로젝트를 개발하는 방식으로 진행되기 때문에 웹 프로그래밍을 처음 공부하는사람을 첫 내용부터 하나씩 따라가면서 배워보는 것을 추천한다. 

 

 

장고 웹 프레임워크에 대해 상세하게 설명하고 있다.

 

 

    나만의 애플리케이션을 만들어 가기 때문에 실습 예제를 확장하는 챕터가 별도로 할당되어 있다. 이 단원에서 우리의 애플리케이션을 어떻게 설계하는지 어떤 기능(애플리케이션)이 추가될지, Model, View 등을 어떻게 구성하고 개발하는지 확인해 볼 수 있다.

 

 

장고 프로젝트 실습을 위한 웹 어플리케이션 개발

 

 

    책의 첫 내용에도 소개하고 있듯이 독자들의 피드백을 반영해서 웹 개발에 대한 아주 기초적인 설명도 빠짐없이 들어있다. 따라서 이제 막 파이썬이라는 언어를 배운 사람이 웹에 대해 공부하고 싶을 때, 이 책을 바로 이용해도 괜찮다고 생각한다. 이 책을 통해 웹을 개발하면서 기본적인 내용을 배우고 더 상세한 내용이 궁금하면 그 때 더 전문적인 웹 개발 관련 서적을 찾아보는 것도 좋은 커리큘럼이 될 것으로 보인다.

 

 

 

웹 프로그래밍이 무엇인지 부터 설명한다.

 

 

    핵심적인 소스코드는 라인 바이 라인으로 정말 상세하게 설명되어 있다. 모든 코드를 이렇게 설명하지는 않지만 몇몇 핵심적인 부분에 대해서는 정말 사소한 부분까지 설명하고 있다. 이런 부분이 기본서로써 정말 좋은 책이라고 생각한다.

 

 

소스코드를 라인바이라인으로 설명한 부분1

 

 

 

소스코드를 라인바이라인으로 설명한 부분2

 

 

    웹 개발자가 되는 것이 꼭 목표가 아니더라도 이 책을 통해 파이썬이라는 언어로 개발할 수 있는 스펙트럼을 넓혀가면 다른 개발을 할 때도 많은 도움이 될 것이다. 특히 MVT 패턴이나 클라우드 서버 배포 방법, 리눅스 환경에서의 웹 서버 연동 방법 등도 배울 수 있기 때문에 꼭 장고 뿐만 아니라 많은 것을 함께 배울 수 있다. 이제 막 파이썬을 배운 입문 개발자들이 꼭 한번은 봤으면 좋을 책이다.

 

 

파이썬, 장고 뿐만 아니라 다양한 기술들을 함께 배울 수 있는 기초 입문서다,

KakaoTalk_20221127_211453774.jpg

 

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

 

최근들어 AI 모델을 이용하여 웹 서비스를 하고 싶은 욕심이 생겼는데, 때마침 한빛미디어에서 Django를 이용한 웹 프로그래밍에 대한 기초서를 리뷰할 수 있게 되어 매우 기뻤다. AI 모델을 배포해야 하니 Spring 보단 python으로 서비스하기도 편할 것 같아 이번에 신청하였다. 

 

책의 내용은 탄탄하다. 표준 라이브러리 활용법도 알려주고 Django의 기본 개념도 알려준다. 최대한 기초자들에게 맞추려는 노력이 보인다. 하지만 처음 접하는 사람들에겐 난해한 요소들도 보인다. 최대한 실습 위주로 꾸민 것 같아 초보자들이 보기에는 어려운 점도 있으며, 책에 대한 내용 + 인터넷 정보 등을 합쳐 공부해야 하는 점도 있다. 하지만 핵심 기능들에 대해선 꼼꼼하고 실습위주로 되어있어 너무 초심자들보단 어느정도 기본 개념을 갖고 있는 초보자들에게 더욱 도움이 될 책이라 생각한다. 

 

장고를 이용한 파이썬 웹 프로그래밍을 기초부터 배울 수 있는 책입니다. 서버 프로그래밍이 어떻게 발전해 왔는지 소개하면서 웹 프로그래밍에 대한 기초 지식들을 탄탄하게 설명해 줍니다.

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

사실 파이썬이라는 언어를 이용해서 할 수 있는 분야는 꽤 많다. 각종 통계를 통해 보더라도 이미 Java를 뛰어넘은 사용량은 둘째로 치더라도 이제는 파이선은 ICT의 여러분야에서 사용하고 있다. 특히 MVT 즉 Model, View, Template의 개념을 이용하는 웹 프레임워크인 Django는 쉽고 간단하면서도 이제는 엔터프라이즈급에서도 사용하기 문제가 없다고 평가를 받고 있다. 하지만 유독 한국에서는 대부분의 엔터프라이즈급 웹 프레임워크는 전자정부프레임워크의 언어인 Java 즉, Spring의 위세에 눌려 빛을 발휘하지 못하고 있는 느낌이다. 파이썬을 좋아하는 한 사람으로서 안타깝다.

요새 Low-Code, No-Code라 하여 코딩을 거의 하지 않거나 아예 하지 않으면서도 필요한 애플리케이션을 제작하려는 시도가 있다. 그런 관점에서 보면 도대체 어떻게 코딩하는 것이 보다 Agile하면서 변화무쌍한 웹 환경에서 개발을 좀 더 쉽게 할 수 있는 방법에 대한 논의가 활발하다. 이 책은 장고의 공식문서를 잘 활용하여 보다 더 장고를 잘 활용할 수 있도록 친절하게 안내하고 있다. 이것은 대단히 중요한 것인데, 이 책의 목적이 중급 이상의 프로그래머가 타겟이 아니라 이제 막 파이썬을 가지고 장고라는 웹 프레임워크에 입문하는 초보 프로그래머를 대상으로 하기 때문이다. 즉, 많은 내용을 전달하기 보다 소위 FM 코딩을 안내함으로써 기초를 튼튼히 하려는 데 목적이 있기 때문일 것이다.

초보 장고 입문자를 대상으로 하고 있지만, 웹 개발에 필요한 내용은 모두 담고 있다. 웹 개발에 필요한 파이썬 라이브러리, 장고 소개, 장고의 핵심 기능, DB 연동 그리고 요새 가장 핫한 클라우드기반 개발까지. 어느 것 하나 소홀히 할 수 없는 가장 기본적이면서도 웹 개발에 필요한 최신 트렌드까지 다루고 있다. 저자의 꼼꼼함을 발견하기 어렵지 않다. 마지막으로 개발에 필요한 PyCharm 툴 사용법까지. 이 책 하나면 장고의 기초는 끝이라는 게 책을 다 보고 난 후 드는 생각이다. 이 책이면 다른 것은 안 봐도 된다. 그리고 이제 중급 프로그래머로 도약할 준비가 될 것이다.

 
 

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

 저는 최근 회사에서 데이터를 활용해서 다양한 인사이트를 얻어내기 위해 부단히 노력하고 있습니다. 하지만, 데이터의 수집은 생각보다 쉽지 않고 좀 더 넓은 영역에 대해 공부하고자 이 책을 선택하게 되었습니다. 

1. 대상 독자

 이 책은 웹 프로그래밍에 대한 기초지식이 없는 분에게도 도움이 될 수 있는 책입니다. 또한 파이썬 언어를 활용해서 웹 프로그래밍할 때에는 주로 장고, 플라스크 등을 떠올릴 텐데, 그 중 장고를 활용해서 웹 개발을 배워보실 분에게 추천드립니다. 저도 웹 개발에 대한 지식이 없이 봐도 될까? 라는 생각을 했었는데, 읽어보면 베이스가 없는 분들이 읽어도 될만큼 기초부터 작성해주신 책인 것 같습니다.

책의 구성

책은 총 10개의 Chapter로 구성되어 있습니다.

  • 웹 프로그래밍의 이해
  • 파이썬 웹 표준 라이브러리
  • Django 웹 프레임워크
  • Django의 핵심 기능
  • 실습 예제 확장
  • Django의 웹 서버 연동 원리
  • Cloud 서버에 Django 배포
  • NGINX-Gunicorn 연동
  • NGINX-uWSGI 연동
  • Apache 웹 서버와 연동

 책의 구성을 보면 알 수 있듯이, 단순히 Django에 초점을 맞추기보단 웹 프로그래밍에 대한 기초부터 다양한 상황에서 연동하는 방법들을 소개하고 있습니다. 특히 이러한 부분이 기초를 공부하지 않은 분들에게 도움이 많이 될 것 같습니다.

2. 이 책의 특징

1) 친절하게 작성된 내용과 그림

 다양한 기술관련 책을 보다보면, 너무 내용이 길어서 해당 챕터에서 다루기 어려울 때, 다른 쪽에 적어놓았다는 표시를 하곤 합니다. 이 책에서는 해당 부분에 대해 시각적으로 다른 효과를 줘서 필요한 내용을 바로 찾아볼 수 있도록 돕고 있습니다. 개인적으로 궁금한 부분이 있으면 이해하고 넘어가다보니, 바로 해당 챕터로 가서 읽어볼 수 있다는 점에서 너무 괜찮았습니다. 또한 글로 표현되었을 때, 이해하기 어려운 부분들을 순서에 맞게 그림을 적절하게 활용해서 이해를 돕고 있다는 점이 좋았습니다.  

 

2) 다양한 내용을 위해 작성된 Appendix

requests나 beautifulsoup4 라이브러리를 사용하는 방법에 대해서도 간단하게 참고자료로 넣어뒀으며, 특히 가장 좋았던 부분인 다양한 DB와 연동하는 Appendix B였습니다. 아무래도 회사마다 주력으로 사용하는 데이터베이스가 있을 텐데, 다양한 DB에 연동하는 방법을 포함하고 있다는 점이 좋았습니다.

 

3. 총평

 제가 처음으로 웹 개발에 대해서 접해보는 책이다보니, 다른 책과 비교해볼 수는 없겠지만 저처럼 웹 개발을 처음 접하는 분에게는 도움이 많이 될 것 같습니다. 다양한 가상환경 구성방법부터 다양한 상황에서 어떻게 조치해야되는 지 등을 나름 자세히 녹여내려고 노력한 책인 것 같습니다. 저도 이 책을 통해 생각보다 웹 개발에 대한 이해도가 높아진 것 같습니다. 다른 분들에게도 도움이 되셨으면 좋겠습니다. 긴글 읽어주셔서 감사합니다.

파이썬으로 웹개발을 할때 다양한 Framework가 나타납니다.

Java의 경우 Spring으로 거의 일원화 되었지만, 

Python의 경우 Django, Flask, FastAPI등 많은 선택지가 있습니다.

 

장고의 경우, Python을 대표하는 프레임워크이고 가장 많이 사용합니다.

한빛미디어에 김석훈 저자님의 책은 빨강색(기본편), 파란색(실전편) 중에

이번에 기본편에 대해서 개정판이 나왔습니다.

 

 

이번에 개정된 3판에서는 2022년에 Release된 4.0 기반으로 책이 작성되어 있습니다.

 

글을 작성하는 시점에 최신 버전 정보는 아래와 같습니다.

Django 4.1.3 release notes

November 1, 2022

Django 4.1.3 fixes a bug in 4.1.2 and adds compatibility with Python 3.11.

 

> pip install Django로 버전명 없이 설치를 하면 현재 최신버전인 4.x의 사항이 설치됩니다.

기존 책에서는 3.x버전이 구성된 내용이 많아서 3.x버전을 설치하시려면 LTS버전인 3.2 버전으로 설치하시는게 좋습니다.

	pip install Django==3.2.16

 

 

■ 웹을 처음으로 접하는 분들을 위한 기본 동작 원리 설명

· 처음에는 Web의 동작방식 및 Django는 파이썬 기반하에 동작되는 Framework이기 때문에 
  파이썬 웹 표준라이브러리에서 urllib패키지, http.client모듈에 대해서 상세히 설명을 합니다.

  이런한 표준 라이브러리에 대한 개념 학습을 통해서, 사용되는 모듈의 전체적인 필요성과 동작방식을 이해하는데 도움이 됩니다.

 

■ 환경구성

· 기존에 3.x 버전을 사용중이신 독자분들은 아래 명령어를 통해서 4.x버전으로 업그레이드가 가능합니다.

	pip install Django --upgrade

 

· 장고를 수동설치하는 부분에 대한 내용

  개인적으로 이런 부분이 있어서 좋았습니다.

  일반적으로는 서버, 개인 개발환경에서 인터넷이 접속 가능한 환경이 일반적이지만,

   Offline환경에서 pip설치 및 django.tar.gz을 다운받아서 구성하는것은 좋은 가이드 같습니다.

 

 

 

· MVT모델

  모델 - 뷰 - 템플릿 형태로 기본적인 장고의 프로젝트를 구성합니다.

  자동을 생서오디는 파일 및 polls을 이용해서 구성되는 프로젝트를 통해서 각 파일의 성격 및 의미를 설명합니다.

 화면 출력을 위한 템플릿 사용, 폼을 이용한 값 전송하기, 클래스형 뷰 형태, 로그 남기기등을 

 샘플 예제를 작성하면서 구성합니다.

 기존에 3.x버전과 최근 major 릴리즈 버전인 4.x의 차이점을 설명하는 부분이 조금 있었으면 하는 아쉬움은 있습니다.

 

 

 

■ Django 웹서버 연동

· 실제 서비스를 위해서는 django 에 웹서버를 연동해서 사용합니다.

  해당 부분에 대한 내용이 있어서 실무 구축하는데 도움이 되실겁니다.

  많이들 연동해서 사용하는 서버는 nginx를 사용합니다.

  연동할때 많이 사용하는것이 uwsgi 입니다. 중간에 웹서버하는 역활을 하는 서버들이 다양합니다.

  6,9장에서는 uwsgi에 대해서 설명을 하고 8장에서는 Gunicorn에 대해서 설명하는 부분을 통해서

  2서버간의 연동설정에 대한 가이드 및 연동방식에 대해서 학습하실수 있습니다.

  10장에서는 apache웹서버와 연동하는 부분도 나옵니다. 

  현업 서비스시에 다양한 제약 및 선택가능한 옵션들이 있을수 있어서 다양한 구성방식에 대한 설명은

  처음 환경구축하시는 분들에게 도움이 됩니다.

 

■ 부록

· 기본적으로 Default로 장고를 설치시에는 sqlite db를 기본적으로 사용하고 settings.py에도 sqllite로 설정이 되어 있습니다.

· 부록에서는 다양한 DB에 접속 가능한 설정을 참고 하실 수 있습니다.

 

 

 

파이썬 웹 프로그램을 위한 가장 보기 쉬운 책


웹 프로그래밍을 위한 도구로써 장고(Djang)

20221127_113005.jpg

 

웹 프로그래밍을 위한 도구로써 장고(Django)​

웹 개발은 수 많은 개발 언어와 현재도 수 많은 웹 사이트가 만들어지고 있습니다. 현재 우리나라에서 가장 많은 수의 웹 개발을 담당하고 있는 언어로는 자바가 있다. 수 많은 공공기관 부터 은행 기업등의 많은 업무 시스템을 담당하고 있다.

이 제는 자바가 아닌 다른 언어로 웹 개발을 해보고 싶다는 생각을 가질 즈음 파이썬을 알게 되었고 그 매력에푹 빠졌다.

인공지능부터 웹 개발까지 소화할 수 있는 아주 매력적인 개발 언어이다.

현재 파이썬 웹 프로그밍을 할 수 있는 프레임워크는 많이 있다.

자신에게 잘 맞는 프레임워크를 선택할 필요가 있다. 하지만 파이썬 웹 프로그래밍을 처음 접한다고 하면 적극 추천하는 프레임워크이다. 바로 장고이다.

 

개발을 빠르고 쉽게 바로 시작할 수 있게 프로젝트 뼈대부터 디비(DB)도 쉽게 연동이 가능하고 가장 큰 장점이라고 생각하는 관리자 기능을 바로 만들어주기에 쉽게 사용이 가능하다

이 책은 기본적인 파이썬 문법과 어느정도 개발을 해본 독자라면 분명히 쉽게 이해하고 실무에 적용해 볼 수 있도록구성이 되었다. 특히 이 책은 독자들을 쉽게 장고의 매력에 빠지게 만들어 준다.

자바의 MVC 패턴과 비슷한 패턴을 제공하고 있다. 바로 M,V,T 패턴이다. 이를이용한 웹 프로그래밍은 분명 많은 이점을 제공하고 있다. 장고가 얼마나 편하고 쉽게 웹 개발을 할 수있는지 알 수 있다.

장고는 수많은 라이브러리와 자신이 원하는 데이터베이스도 선택할 수 있도록 이 책은 아주 친절하게 안내하고 있습니다.

 

3판까지 나온 이유가 분명히 있는 점이라고 볼 수 있습니다. 이번 리뷰를 위해 받은 기초편 뿐만 아니라 실전편도 가지고 있다.

분명히 소장 가치가 충분히 있다고 말하고 싶다.

그리고 이 책은 파이썬 웹 프로그래밍의 기본 기술뿐만 아니라 핵심 원리를 쉽게 이해하도록 구성 되어 있고 어떤프로젝트에서 적용해 볼 수 있게 이끌어 준다.

이 책을 가지고 다양한 실무에서 적용해 보시길 권해 드립니다. 


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

 
 
 

 

1_표지.jpg

 

 

 

파이썬에 대한 기본 문법을 알고 있으면 공부할 수 있는 책이라고 생각합니다. 

웹 백엔드에 대한 이론을 차근차근 설명해주고, 이를 장고로 이용해서 실습하는 방식입니다. 

웹 개발 경험이 없어도 충분히 따라갈 수 있게 잘 설명이 되어있습니다. 

리눅스 경험이 있다면 더 좋을 것 같지만 없어도 구글링을 통해서 실습을 끝까지 정주행 할 수 있을거라고 봅니다.

 

 

2_기초.jpg

 

3_파이썬_웹라이브러리.jpg

 

 

책의 예제도 장고 공식문서에 있는 예제를 사용하기에 나중에 장고 공식문서를 보기 더 편할 거라고 안내가 되어있습니다.

구성이 웹개발 백엔드에 대해 기본적인 걸 다 설명하고 있으며, 도식화가 잘되어있습니다.

코드에 대한 설명도 넘버링을 통해 가독성을 잘 만들어주셨습니다. 

 

 

4_장고1.jpg

 

 

파이썬에 대한 기본 문법도 공부해봤다면, 웹개발을 안해봤더라도 충분히 학습할 수 있는 내용들입니다. 후반부에 내용들은 조금 어려울 수도 있지만, 구글링을 곁들인다면 충분히 다 소화할 수 있을거라고 생각합니다. 

장고를 통해 백엔드의 기본기를 다지고 싶다면, 이 책이 큰 도움이 될 것입니다.

 

 

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

책 표지

 

> 책의 구성 및 내용

Django 라는 프레임워크 자체가 쉽고 빠르게 웹을 개발하는 목적을 띄고 있다보니
Document 도 잘되어 있고 인터넷을 통해 예제 소스도 쉽게 접할 수 있는 장점이 있습니다.

이러한 접근용이성 때문인지 지은이(https://www.inflearn.com/users/@bestdjango)는 

어떻게 하면 이책이 소장가치를 가질 수 있을까? 를 고민하게 되었습니다.
고민의 결과로 장고의 문법이나 코딩방식만 설명하는 데 그치지 않고
웹 프로그래밍의 기반 지식을 전달하고자 노력하였고, 
장고를 어느정도 잘 다루게 된 후에도 필요한 내용을 찾아볼 수 있도록 본문을 구성하였습니다.

라고 책 서두에 쓰고 있습니다.

지은이의 말처럼 책에는 단순히 Django 의 문법, 구성, 코딩방식 만이 아니라
전반적인 웹 프로그래밍에 대한 기반지식(기초)을 설명하는데 많은 지면을 할애하고 있습니다.

위와 같은 이유 때문에 개인적으로는 이 책의 소장가치가 좀 더 느껴지는 것 같습니다.
(사실 Django는 docs 만으로도 충분히 웹 프로젝트를 수행할 만큼 document가 잘 작성되어 있습니다.)

책은 총 10개의 챕터로 이루어져 있습니다.

  • 1. 웹 프로그래밍의 이해
  • 2. 파이썬 웹 표준 라이브러리
  • 3. Django 웹 프레임워크
  • 4. Django의 핵심 기능
  • 5. 실습 예제 확장
  • 6. Django의 웹 서버 연동 원리
  • 7. Cloud 서버에 Djnago 배포
  • 8. NGINX-Gunicorn 연동
  • 9. NGINX-uWSGI 연동
  • 10. Apache 웹 서버와 연동

기초적인 웹 프로그래밍 지식에서 부터 차근차근 깊이 들어가며 설명하고 있습니다.

 

 

위와 같이, 비전공자가 해당 책을 봐도 이해하기 쉽게 내용을 풀이하고 있습니다.

책에서 나오는 예제들도 굉장히 상세하게 주석을 달아 설명해 주고 있습니다.

 

 

웹 프로그래밍 이외에도 Django 에 대한 상세한 아키텍처도 책에서 전달해 주고 있습니다.

 

 

책 중간중간 짧막한 Note 들도 있어 다양한 웹 지식을 전달하고자 노력했음을 느낄 수 있었습니다.

 

CSFR 공격 설명

 

책을 읽으며 Django 뿐만 아니라 웹프로그래밍에 대해 최대한 상세하게 쓰려한
저자의 노력을 많이 볼 수 있어, 기초편임에도 불구하고 
IT지식에 대한 재점검(?) 도 해 볼 수 있어 좋았습니다. 

 

 

위와 같이 Django 와 연계되는 웹서버에 대한 설명들도 자세히 되어 있습니다.

> 장점

  • Django에 대한 기초적인 내용 외에도 웹프로그래밍에 대한 다양한 지식을 포함하고 있습니다.
  • IT 기본지식이 부족해도 상세한 설명 덕에 이해가 가능한 수준입니다.

> 아쉬운 점

  • 없음

책읽기 필요사항

python 기초 문법

추천 독자

python 을 이용한 웹프로그래밍을 배우려는 모든이

> 정보

저자: 김석훈
출판사: 한빛미디어
전체 페이지: 411페이지

책의 예제소스 : https://www.hanbit.co.kr/src/11041

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

파이썬으로 웹 개발을 시작할 때 입문하기 좋은 책.

이 책은 파이썬 웹 개발에 막 입문한 초급 개발자를 대상으로 하는 만큼, 기본적인 웹 프로그래밍 개념을 설명한 후 파이썬 웹 표준 라이브러리를 소개하여 기초 기반을 다지며 시작한다. 이후 강력한 웹 프레임워크인 Django를 기반으로 전반적인 웹 개발 내용을 실습과 함께 다루고 있다. 또한 다양한 환경에서의 서버 연동 및 클라우드 배포를 포함하고 있어 전체적인 플로우를 경험하기 정말 좋다고 생각된다. 외부 라이브러리 맛보기, 데이터베이스 연동하는 방법 그리고 HTTP 상태 코드가 다른 책에 비해 상세히 정리되어 있다는 점도 좋았다.

나는 컴퓨터공학이라는 전공을 선택한 시점부터 AI 'Researcher'만을 바라보고 공부해왔고, 그런 탓에 엔지니어링 능력은 다소 소홀히 했던 감이 없잖아 있었다. '어차피 대학원 갈 건데, 논문 잘 읽고, 잘 이해하고 그런 게 더 중요하지 않나?'라는 생각에 이론적인 부분을 중점적으로 공부했다. 물론 이게 아주 틀린 말은 아니다. 적어도 리서처에게는, 당장 어떤 서비스를 만들어내고, 이걸 배포하고.. 이런 것보다는 머신러닝 딥러닝 개념을 심도 있게 이해하고, 자신의 논리를 수학적으로 표현할 줄 아는 것이 더 중요한 것은 맞다. 하지만 그게 엔지니어링을 소홀히 할 핑계가 되지는 못한다.

나도 '응애'긴 하지만, 솔직히 지금 막 AI Researcher의 길을 시작한 후배가 있다면, 디자인 패턴과 백엔드를 같이 공부하라고 추천하고 싶다. 내가 만든 모델이 실제로 어떤 가치를 창출하기 위해서는 모델의 API화가 중요하고, 이를 위해서는 최적화나 서빙이 매우 중요하기 때문이다. 물론, 백엔드 개발자, MLOps 담당자와 협업을 하며 이를 전적으로 맡길 수도 있다. 하지만 내가 어느 정도 알고 있는 상태에서 협업을 하는 것과, 아예 모르는 상태에서 협업을 하는 것은 천지차이라고 생각한다. 같이 협업하는 동료에게도 말이다. 그렇기에 이러한 부분은 나에게 항상 어딘가 모를 갈증으로 남아있었다.

이 책은 그런 나의 가려운 곳을 정확히 긁어주는 책이었다. 초심자를 대상으로 한 만큼, 웹 개발 관련 지식이 거의 없다시피 한 나도 큰 무리 없이 읽을 수 있을 정도로 친절하게 쓰여있었기에 쉬는 날 한두 시간 읽어보기 좋았다. '그럼 너무 겉핥기식으로 쓰여있는 거 아냐?'라는 의심이 들 수도 있겠지만 기초를 위주로 다루면서도 꼭 알아야 하는 개념들은 빠트림 없이 포함하고 있었던 것 같다.

당신이 웹 개발을 처음 시작하는 학생이라면, 혹은 AI 쪽으로 진로를 잡았다면, 아니 그냥 파이썬을 주로 다루는 사람이라면, 이 책을 읽어보는 것을 추천한다. 자바 왕국인 대한민국에서는 파이썬 기반 웹 개발이 아직 비주류인 감도 없잖아 있긴 하지만, 전 세계적으로 봤을 때는 많은 글로벌 기업들이 이로 옮겨가고 있으며, 국내 스타트업들도 빠른 서비스 구축을 위해 채택하고 있는 만큼 장래가 밝다고 생각한다. 얼마 전 파이썬 속도도 드라마틱하게 빨라졌으니 더더욱 많은 회사들에서 채택하지 않을까? 하는 생각도 들고 말이다.

올해 웹에 관심있는 학생이 입학한 관계로, 웹 프로그래밍을 가르쳐야 하는 상황이 되었다. 결론적으로 시간이 부족하여 열정적으로 많은 지식을 가르치지는 못했지만, 대략적으로 파이썬을 활용하여 웹프로그래밍을 가르쳤었다. 그 가운데 활용했던 책이 "파이썬 웹 프로그래밍 - Django(장고)로 배우는 쉽고 빠른 웹 개발" 이었다. 이번에 운인지 불행인지 한빛미디어 <나는 리뷰어다> 활동에 당첨된 책이 이 책이었다.

 

가장 마음에 드는 부분은 외부 라이브러리와 데이터베이스 연동, HTTP 상태 코드 그리고 PyCharm 설치하기가 부록으로 정리되어 있는것이다. 물론 다른 서적에서도 접할 수 있는 내용이긴 하지만 좀더 정교하게 쓰여져 있어서 쉽게 학생들이 따라할 수 있었던 부분이다. 부록으로 들어있어서 읽어도 되고 안 읽어도 되겠지만 어쨌든.. 없는 것보다는 나은듯 하다.

 

Django를 처음 접했을 때, Full Stack Framework라 많이 사용하는 웹 프레임워크라고 해서 기대하는 마음으로 이 책을 선택하였었다. 일단 이 책은 Django에 대해 기본적인 것을 학습하기에는 적합한 듯 하다.

대부분 처음 배우는 분야는 공식 문서를 많이 찾아보는데, 이 책이 그것보다는 자세하게 설명되어 있어서 이 책으로도 충분히 기본적인 내용을 익힐 수 있을 듯 하다.

 

예제를 따라 하다 보면서 Django가 고등학교에서 웹 프로그래밍에 대한 내용을 가르치기에 적합한 듯 하다. 파이썬의 묵시적인 특징을 잘 활용하면서도, 프레임워크 특유의 자잘한 것은 신경쓰지 않아도 괜찮은 그런 특징이 웹 프로그래밍에 대한 접근성을 높이기에 적합하다. 물론 관련된 코드들이 심플하지 않고 일반적으로 익숙해 있는 기술로 표현되어 있지 않은 면도 있어 조금은 산만하기는 하다. 

 

하지만 전체적으로 체계적으로 잘 정리해서 전달해 주려고 노력한 흔적들이 많이 보인다. Django가 여러 가지 제공되는 기능들을 보면 Full Stack Framework라고 여겨지는 부분도 많이 보이긴 한다. ORM을 지원하는 부분은 개인적으로 인상적이었다. 그리고 request URL을 urlpatterns으로 적절한 View와 매핑하고 각각의 View에서 Template을 지정하는 과정도 학생이 사용하기에 쉽게 표현되는 것 같았다. 또한 "Chapter 5. 실습 예제 확장하기" 편은 새로운 애플리케이션을 추가하는 일련의 과정을 설명해 주고 있어서 학생들에게 과제를 주고 시켜보기 좋았다. 그 결과 고등학생 특유의 많은 아이디어를 얻을 수 있어서 재미있었다. 

 

전체적으로 Django에 대해서 잘 설명하는 책인듯 하다. 왜 3판이나 출판할 수 있는지 역량을 볼 수 있는 책이다.

 

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

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

배송료 안내

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

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

닫기

리뷰쓰기

닫기
* 상품명 :
파이썬 웹 프로그래밍, 기초편(3판)
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

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

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

오탈자 등록

닫기
* 도서명 :
파이썬 웹 프로그래밍, 기초편(3판)
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
파이썬 웹 프로그래밍, 기초편(3판)
구입처*
구입일*
부가기호*
부가기호 안내

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

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

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

닫기

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

자료실

최근 본 상품1