|
파이썬이라는 프로그램에 대해서는 몇 년 전부터 알고 있었다. 내가 하고 있는 공부와 관심 분야에 분명 관련은 있지만 당장은 나와는 관련이 없는 프로그램이라고 생각하고 있었다. 이미 만들어져 있는 툴로 분석하는 것에 익숙해지는 것만도 벅차서 그랬던 것 같다. 그러다 분석 분야에 본격적으로 관심을 가지면서 데이터 관련 자격증을 취득해보자는 목표가 생겨 관련 프로그램을 찾다가 가장 먼저 배우기로 선택한 것이 바로 '파이썬'이라는 프로그램이다. 파이썬을 택한 이유는 접근성과 가성비였다. IT와 특히 분석툴을 가지고 업무를 하는 분들이나 배우고자 하는 분들은 잘 알고 계시겠지만, 프로그램 가격이 상상을 초월한다. 경우에 따라서는 프로그램당 천만원을 넘기는 경우도 있어서 배우고 싶어도 어쩔땐 책에 있는 그림만으로 공부해야 되는 경우도 있다. 파이썬의 경우는 오픈 소스이다 보니 프로그램에 소요되는 비용이 일단 들지 않는다. 게다가 최근에 각광받고 있는 프로그램이어서 관련 도서나 유튜브 등에서 공개되는 무료 강의 등 학습을 위한 자료의 접근성도 좋기 때문에 선택했다. 그 다음은 유료 강좌를 들을 시간적, 물리적 여유가 없어서 독학을 선택했는데, 어떤 책을 선택하느냐가 남은 숙제였다. ■ 수 많은 입문도서 중 이 책을 선택한 이유 시중에 파이썬 입문자를 위한 책은 상당히 많다. 그런데, 초보자가 더군다나 코딩과 관련된 도서를 백 번 비교해 본다고 해서 선뜻 고를 수 있는 것은 아니다. 아마존 서점에서 파이썬 분야 1위 서적이라는 문구 역시 이유가 되지는 않았다. 다만 눈에 띄는 것은 피드백 부분이었다. IT 분야는 정말 눈깜짝 할 사이에 발전하는 분야인데, 그에 비해 관련 도서 개정과 피드백은 정말 굼벵이가 형님 할 정도로 더디다. 그런데 다양한 독자들의 피드백을 반영했다고 해서 관심이 갔다. 그리고 미리보기를 통해서 앞부분을 볼 수 있는데, 번역 부분이다. IT 전공자는 아니지만, IT과목을 수강해야 한 적이 있었다. 네트워크와 운영체제 과목이었고, 강의 교재는 원서였다. 혹시나 번역서 없을까 싶어 찾았더니 있어서 번역서를 먼저 구입을 했는데, 한국사람에게 한국어 번역이 필요할 지경이다. IT 전공자가 아니어도 일상생활에서 컴퓨터와 모바일을 사용하며 흔하게 쓰고 있는 용어마저 듣도 보도 못한 한자어로 번역이 되어 있고, 문장은 기계 번역처럼 어색하기 짝이 없다. 그제서야 왜 IT과목 원서를 보는 전공자들이 원서를 추천하는지 절실하게 느껴졌고, 결국엔 원서와 번역서 두 권을 동시에 두고 번역서 이해를 위해 원서를 봐야 되는 아이러니 한 상황이 되어 버렸다. 그런데, 이 책은 번역이 정말 자연스럽다. 혹시나 싶어 처음에 한 5~60페이지 일일이 넘겨 보다 나중에는 무작위로 펼쳐서 반복해서 찾아봤지만 전에 IT 번역서를 보며 겪어야 했던 문제는 이 책에서 느낄 수 없었다. 그래서 번역서를 또 구입하기 위한 비용도 줄일 수 있었고, 이 중으로 봐야 하는 시간도 절약하게 되었다. 재미있는 점은 이 책의 원서 정보를 보다 보니 이 책을 학습하기 위한 파이썬 코딩 구문이 적힌 101장의 종이 카드가 자매품으로 발간되어 있었다는 점이다. 마치 영어 단어 암기를 위한 카드 같은 것이다. 저자가 어린 아이들을 대상으로 프로그래밍을 가르치는 교사이다 보니 그들의 눈높이에 맞춘 이러한 제품도 존재하는 것 같다. 만약에 어린 자녀와 함께 이 책을 보려고 하시는 분이라면 그 카드를 활용해 보는 것도 좋을 것 같다. [Python Flash Cards (http://www.yes24.com/Product/Goods/57626449)] 라는 제목으로 검색하면 외서지만 예스24에서도 구할 수 있다. 또 다른 이유는 본격적으로 파이썬을 배우기 전에 프로그래밍을 위해 기본적으로 익혀야 할 개념을 설명하는데, 저자는 이 부분에 대해 매우 강조하고 있다는 점이다. 다시 말하면 철저하게 기본기를 다지기 위한 부분이 되는 셈인데, 이 개념 부분은 파이쎤 뿐만 아니라 다른 프로그래밍에도 공통적으로 적용되는 부분이라서 정확하게 익혀두면 이 책으로 파이썬 기초를 마치고 고급 단계에서 유용할 뿐만 아니라 다른 목적으로 다른 프로그램 언어를 배울때도 아주 유용하다고 강조하고 있다. 요령이 아닌 탄탄한 기본기를 강조하고 있는 점이 굉장히 마음에 들었다. 정말 한 장 한 장 걷으면서 책에 쓰인 코딩 구문을 보면 다른 IT 자격증 공부를 하며 보았던 유사한 구문들이 많이 눈에 띈다. 온라인 자료 부분도 잘 정리 되어 있다. 외국의 IT 교재를 보는 사람들이 제일 많이 찾는 것이 책 속에 있는 연습문에의 정답인 솔루션을 찾는 일이다. 나는 직접 경험해 본적이 없지만, IT전공 학부에서는 중간고사나 기말고사에서 교재의 연습문제가 시험문제로 종종 등장하는 모양이다. 인터넷에서 찾을 수 있는 자료들은 죄다 한 참 지난 구 버전 솔루션들이고 최신 버전은 모두 유료이다. 심지어 레포트 사이트에 솔루션 파일 올려놓고 판매까지 하는 상황을 볼 수 있다.(아마 지금 당장 검색하보면, 무료 배표인척 하는 다량의 블로그 포스팅을 볼 수 있을 것이다.) 그런데, 이 책은 솔루션도 무료로 제공하고 있다. 책에 안내된 URL을 따라가 보면 받아볼 수 있는데, 우리가 생각하는 워드 파일에 적힌 답안지 형식이 아니고 소스코드 파일 형태로 받아볼 수 있다. 책에서 답을 알려주지는 않지만 파일 형식으로 제공하는 것은 최대한 스스로 연습해보고 그래도 안 될 경우 참고하라는 저자의 배려인 것 같아 정말 고맙다. 그리고, 마지막으로 책 말미에 운영체제별로 파이썬을 설치하는 방법이 간략하게 안내 되어 있다. 지금 사용하는 컴퓨터는 다른 분석툴 사용 목적으로 설치되어 있는 프로그램이 있어서 메모리와 용량 부족으로 설치하다가 오류가 생겨 여기에 캡쳐화면을 올릴 수가 없었다. 나중에 여유가 생기면 가상머신(VM)을 만들어 책에 제시된 운영체제별로 설치를 해보려고 한다. 나중에 실습해 보면서 분명 머리 쥐어 뜯을 일이 한 두번을 있을 테지만, 지금까지 내가 본 IT 번역서 중에 제일 괜찮은 책인 것 같다. 책 안에는 그 흔한 컬러 사진 한 장 없지만, 자연스러운 번역 문장이 공손하기 까지해서 일단 문장 읽다가 겁먹고 피하거나 어렵다고 무작정 책을 덮어버리는 일은 적어도 없을 것 같다. 파이쎤을 처음 배워볼 분이시라면 미리보기를 통해서라도 이 책의 매력을 꼭 한 번 확인해 보시길 권한다. *** 본 게시글은 리뷰어클럽 서평단 자격으로 작성한 리뷰입니다. *** |
책을 읽기 전에먼저 "나의 첫 파이썬" 이라는 책 제목을 보고 가장 먼저 든 생각은, 파이썬과 관련된 기초적인 내용을 주로 다루는 입문서적인 성격이 강할 것이라는 느낌이었습니다. 변수부터 예외처리, 테스트까지 자세한 기초 개념예상대로 책의 초반부에는 파이썬이라는 언어에 대한 기초적인 개념들을 다루고 있었는데, 그 깊이가 생각보다 아주 깊었습니다. 단순히 변수나 조건/반복문에서 끝나는 것이 아니라, 예외 처리 방법이나 테스트 작성 방법 등 실제 프로젝트를 개발하는 데 있어 꼭 필요한 개념들도 충실하게 다루고 있습니다. 게임 제작, 데이터 시각화, 웹 개발까지 다양한 활용 예제여기서 끝나는 것이 아니라 게임 제작, 데이터 시각화, 웹 개발까지 파이썬이라는 언어가 사용되는 다양한 분야의 활용 프로젝트를 제공하기 때문에 독자로 하여금 지루하지 않고, 책을 다 읽은 뒤 자신만의 프로젝트를 바로 만들어볼 수도 있어 굉장이 유익할 것 같습니다. 꼭 추천하고 싶은 프로그래밍 입문서최근 어린 학생들이 프로그래밍을 시작해 보고자 하는 경우가 많은데, 자칫 어려운 개념과 코드에 파묻혀 쉽게 흥미를 잃는 경우도 종종 있는 것 같습니다. 이러한 학생들이나 프로그래밍에 입문하고자 하는 사람이 있다면 누구든지, 이 책을 적극적으로 추천해주고 싶습니다. |
|
우선 책을 본 소감은 최근 읽은 IT 서적 중에 정말 재미있게 읽은 책이다. IT 서적을 소설 읽듯 읽어 본게 얼마만인가 싶었다.
이 책은 크게 보면 기초 부분과 프로젝트 실습 부분으로 나눠져있다.
기초 부분은 파이썬의 문법을 다루고 있는데 정말 잘 설명되어 있다. 프로젝트 부분은 외계인 침공 게임, 장고 웹프로그래밍 등을 소개 하고 있다.
기초 부분을 잘 공부하고 프로젝트를 심화하면서 공부를 하면 많은 분들에게 유익하지 않을까 한다.
10년이 넘은 개발자인데 이 책을 읽으면서 많은 생각을 해보는 기회가 된거 같다. 처음 개발을 하고싶은 학생이나 기존 개발자도 읽어 보면 좋을듯 하다.
또한 이전에 Django를 활용한 쉽고 빠른 웹개발 파이썬 웹프로그래밍 실전편 책을 리뷰하였는데 나의 첫 파이썬을 보고 Django 책을 보면 매우 재미있을 듯 하다. https://www.hanbit.co.kr/store/books/look.php?p_code=B5976336809 |
|
파이썬을 이용해서 프로젝트를 몇 가지 진행했었는데, 그때그때 필요한 부분만 쓱 보고 적용했더니 요사이 밑천이 드러나 버렸다. 만들어 놓은 코드들을 다시 보니 이렇게나 무식(?) 할 수 없다. 뭔 말인고 하니 조금만 알면 쉽게 쓸 부분들을 무식하니까 장황하고 읽기 어렵게 작성했더라. 걔다가 코드 이해력이 부족하니 그냥 건성건성으로 코드를 보게 될 수밖에 없다. 기초적인 딕셔너리도 수박 겉핱기 식으로 아는 터라 조금만 꼬아 놓으면 이건가 저건가 하게 된다. 다시 한번 기초부터짚어봐야겠다 싶었는데 마침 좋은 책이 툭~ 하고 눈앞에 보인다. '나의 첫 파이썬'이란 파이썬 입문서인데. 읽어보니 정말 입문서 맞다. 읽기 쉽다. 프로그래밍에 처음 입문하는 사람에게 변수는 무엇인지 조건문은 뭔지 등등 자세하고 친절히 설명해 놓았다. 기존 프로그래머 입장에서 읽으면 지루한 감이 있지만 읽어보니 처음부터 뭔가 다시 짚어보는 것도 나름 좋은 공부가 되더라. 난 이 책처럼 어떤 이야기하듯이 써놓은 책을 선호한다. 간혹 프레젠테이션이나 강의 식으로 내용을 나열하는 책들이 있는데 나하고는 정말 안 맞는 스타일의 책들이지. 설명을 위해 들어가는 코드의 양도 정말 짧아서 부담 없이 자투리 시간에 읽기에 좋았다. 인공지능이나 기타 영역에서 파이썬이 많이 쓰이는데 프로그래밍을 배우는 초보 프로그래머라면 처음 읽기에 괜찮은 책이라고 추천하고 싶다.
|
|
요약 - 학생들을 대상으로 집필한 책인 만큼 친절한 설명 - 최신 파이썬 버전을 반영한 파이썬 입문서적 - 전체적으로 파이썬에 대해 쭉 훑어주는 느낌과 프로젝트를 통해 완성된 느낌이 들게 하는 '종합서'의 느낌 요즘 파이썬 복이 터저버렸다!! 여러 서평단에 당첨되어서 이책 저책 새로운책 들을 받아보고 있는데, 대부분이 파이썬이다...! 최근에 회사에서 크롤링 관련 프로젝트 준비를 하려고 예전에는 못해봤떤 BeautifulSoup를 만져보고 있는데도 참 도움이 되고 있다. 이번에 리뷰할 책은 파이썬! 하면 가장 먼저 떠오르는 책들 중 하나인데...! (매우매우 유명한?) 나의 첫 파이썬 2판 이다! ![]() 파이썬...이라는 이름에 충실한 표지...! 17년도에 나왔던 1판의 아쉬운점을 개선했다는데... 1판을 안사서 잘은 모르겠지만 서점 평점들을 보면 1판도 꽤 좋은 평을 들었던 것 같다. 일단 간단하게 파이썬 3.6을 기준으로 설명을 하고있다. (2020년 1월 1일 2버전이 종료됨에 따라 3버전을 권장한다.) ![]() 지~~~인짜 간단한 영어를 할 줄 아는 사람이라면, if와 in, print가 뭔지 아는 사람이라면, 프로그래밍을 처음 접하는 사람이라도 위의 문장이 무엇을 뜻하는지 언듯 알 수 있을 것이다. "만약 [1,2,3,4] 안에 4가 있으면 "4가 있습니다."를 출력하세요." 정말 간단하고도 멋지게 파이썬을 표현했다고 생각한다. ![]() ![]() 다른 언어를 먼저 접한 사람들이 파이썬에서 가장 어려워 할만한 것을 꼽자면... 1. 괄호없이 들여쓰기 2. 세미콜론 3. 리스트와 딕셔너리 가 아닐까 싶다. 이 서적은 글쓴이가 '아이들'을 가르치기 위해 집필한 서적으로, '초심자'를 염두해서 만들었기 때문에 '리스트'의 정의에 많은 시간을 할애한다. 비슷하면서도 다른 두 기능을 보면 알겠다가 싶더가도 아리송한것이... 많은 시간을 할애할만하다 싶다. ![]() ![]() ![]() 파이썬 설명을 잘 따라왔다면 프로그래밍의 꽃 프로젝트! 가 기다리고 있다. 이론만 가지고 뭔가를 배우는것은 지루할 수 밖에 없고, 프로젝트라는것을 진행할 땐 이론을 알더라도 잘 안되는게 당연하다는것을 아는지 무려 각 프로젝트마다 3챕터를 포함한다. 간단하게 만들고 즐길 수 있는 pygame, 파이썬의 꽃 데이터 분석, 파이썬 웹 프레임워크 django! 를 다뤄볼 수 있다. 가장 유명한 크롤링을 다루지 않는것은 약간 아쉽지만, 웹에 약간 치우친 경향이 있는 크롤링이 빠지는게 또 어떻게 보면 맞는것 같기도 하다. 전반적으로 '종합서' 같은 느낌의 책이다. 책을 만들 때 '나는 이 주제만 깊게 설명할거야!' 라면서 '왜 파이썬을 써야하는가?(뭔가 왜 1+1은 2인가 같은 심오한...)' 같은 접하기 싫어지는 주제보다는 파이썬이라는건 이런거고 파이썬에선 이런걸 사용할 수 있고 파이썬으로 이런걸 만들수 있어 라며 딱 어린 친구들도 알아들을 수 있도록 설명한 서적이라고 생각한다. |
|
본격적으로 파이썬을 만진지가 1년이 조금 넘었다. IT 전공에 경력 20년이 다 되어가니 살짝이라도 거쳐간 언어만 해도 호랑이 담배피던 시절의 어셈플리, 코볼, 포트란, 베이직... 그리고 이제 파이썬... 새로운 일을 하기 위해 파이썬이 필요해서 근본도 없이 무작정 필요한 부분부분 찾아보며 일년의 세월이 지났다, 뭐 최근까지 자바나 C#을 계속 만져왔었기에 논리적인 로직을 생각하고 관련된 파이썬 글이나 소스코드를 참고해서 해왔는데 멀티프로세싱이나 RESTful API까지 이제 왠만큼은 해봤는데 그럼에도 불구하고 처음부터 다져가고 싶은 것이 마음 한켠에... 얇은 책자 두어권 봤는데 영 성에 차질 않는다... 그러다 만나게 된 책이 "나의 첫 파이썬"... ![]() ![]() 내거는 캐치프레이즈와 컨셉은 프로젝트 기반의 프로그래밍 입문서라는 것과 세계에서 제일 많이 팔린 파이썬 책, 뭐 특별한게 있을까 싶긴 한데 컨셉은 마음에 든다. 책의 내용은 크게 두가지 파이썬 문법을 설명하는 Part.I과 이걸 기초로 3가지 프로젝트로 설명하는 Part.II/III/IV 프로젝트는 입문서라 하기에는 살짝 난이도가 있다, 진짜 이 책을 가지고 처음 프로그래밍을 공부하는 사람은 다소 어려울 수도 있을 듯... 프로젝트에서 다소 눈길이 가는 것은 Django 기반의 웹 어플리케이션 프로젝트도 있다는 것, 보통 Django는 별도 책으로 많이들 나오는데 이게 포함되어 있는게 색다르다면 색다르다. 책을 펼쳐보면, 아니나 다를까... 여기도 Hello World가... ^^ ![]() 파이썬 문법을 다루는 Part.I 기초 부분은 최신버전으로 꼼꼼하게 잘 설명되어 있다, 그리고 중간중간 포함된 연습문제를 통해 학습한 내용을 내재화 할 수 있도록 배려해놨다. ![]() 앞서 살펴본 내용을 가지고 문제를 직접 풀어가며 체득할 수 있도록 꼼꼼하게 잘 배치되어 있다. 그리고 이어지는 프로젝트... 책은 전체적으로 기초적인 파이썬 문법에서 실제 프로그래밍에 준하는 프로젝트까지 이어갈 수 있도록 짜임새 있게 구성되어 있다. 이제 막 파이썬에 입문하는 분들의 실력 향상과 내재화에 많은 도움이 되지 않을까 생각된다. P.S : YES24 리뷰어 클럽 서평단 자격으로 작성한 글 입니다. |
|
전 세계가 선택한 프로젝트 기반 프로그래밍 입문서 나의 첫 파이썬 2판 Python Crash Course, 2nd Edition (에릭 마테스, 한빛미디어)
파이썬에 관심이 있어요 대안학교에서 중고등학생들에게 수학/과학을 가르치면서 특별한 교육과정들을 계속 고민하고 있다. 그 중에 하나가 코딩과 데이터 분석이다. 학생들이 배우기 쉬우면서 시각화도 하기 좋은 언어가 무엇일까를 검색해보니 "파이썬"을 압도적으로 많이 추천하고 있었다. 그래서 요즘 여러 파이썬 책들을 보면서 공부를 하고 있다. 다른 출판사의 아주 기초적인 파이썬 입문 책도 보았고, 같은 출판사의 다른 파이썬 입문 책도 보고 있는 중에 아주 강력한 광고 문구를 보았다.
도대체 어떤 책이길래 전세계에서 이렇게 많이 팔린 걸까? (난 아직 본적도 없는데...) 너무 궁금해 하던 차에 온라인 서점에서 서평단을 모집하는 걸 보고 바로 신청을 했다. 그리고 600페이지가 넘는 상당히 두꺼운 책이 내 눈 앞에 도착했다.
책을 두 권 산 것 같아요!! 이 책의 저자인 에릭 마테스는 고등학교 교사로 알래스카에서 과학과 수학, 프로그래밍을 가르치고 있다. (뭔가 나랑 비슷하다...?) 다섯 살 때부터 프로그램을 만들었고(이제부터 많이 달라진다...), 교육 부문에서 오픈 소스 소프트웨어를 만들거나 활용하는 데 주력하고 있다고 한다. 그래서인지 책의 내용이 아주 친절하고 상세하다. 얼핏 보면 대학교 교재 같은 느낌도 든다. 하지만 내용은 중고등학생 정도만 되어도 볼 수 있을 정도로 눈높이를 낮춰준 느낌이다. 이 책은 크게 둘로 나눌 수 있다. 반 정도는 파이썬의 기초를, 나머지 반 정도는 프로젝트 몇 개를 만들어보는 데 할애하고 있다. Part I에서는 보통의 파이썬 입문서 처럼 파이썬의 기본 설치에서부터 변수, 데이터 셋, 조건문과 반복문, 함수, 클래스, 파일 관리 등을 설명하고 있다. 다양한 OS 사용자를 배려해서 윈도우, 맥, 리눅스에서 파이썬 사용 환경을 구성하는 것을 설명하는 것으로 시작된다. 그리고 이후에 파이선 기본 입문서 처럼 기초적인 문법을 가르쳐준다.
요즘에는 워낙 쉽고 친절한 파이썬 입문서가 많기 때문에 여기까지는 그리 특별하지 않을 수도 있다. 그런데 이 책의 진짜 진가는 Part 2 부터라고 해도 과언이 아니라고 생각한다. 1부에서 파이썬 기초 문법을 다 공부한 다음, 2부, 3부, 4부에서는 프로젝트를 하나씩 완성해보면서 보다 실제적인 파이썬 프로그래밍의 경험을 쌓을 수 있다. 보통의 입문서를 다 보고 나면 의욕적으로 뭔가를 만들어 보고 싶은 생각이 든다. 그런데 코딩 창을 띄워놓고 무엇을, 어떻게 해야 할지 막막해서 금방 포기하곤 한다. (나의 경우 GW-BASIC을 공부했을 때도, C를 공부했을 때도, C++을 공부했을 때도.. 그랬던 것 같다.) 그런데 이 책은 보통의 그런 고민들을 알고 있는지, 실제적으로 프로젝트를 완성해보면서 배움의 깊이를 더할 수 있도록 안내해준다. Part 2 에서는 파이게임(Pygame)을 사용하여 외계인 침공 게임을 만들어보고, Part 3에서는 맷플롯립(Matplotlib)을 사용하여 데이터 시각화를 시도해본다. 이어서 Part 4에서는 장고(Django) 프레임워크를 사용하여 학습로그라는 웹 애플리케이션을 만든다. 파이썬에서 사용하는 대표적인 모듈들을 직접 활용해볼 수 있는 점, 그리고 각자가 관심있는 영역(게임, 데이터시각화, 웹 애플리케이션)을 골라서 공부해볼 수 있는 점이 좋았다.
게임도 만들어 보고,
데이터 분석도 해보고,
웹 애플리케이션도 만들어 볼 수 있다. 관심 있는 영역 부터 공부해보면 좋을 듯하다. (어쩌지? 난 다 관심있는데...) 왜 이 책이 "프로젝트 기반 프로그래밍 입문서"라고 했는지 알 수 있었다. 문법 이론을 공부할 때에는 대부분 짧은 코드를 작성하기 때문에 실제 큰 프로젝트를 진행할 때의 프로세스를 알기 어렵다. 그런데 이렇게 프로젝트를 따라 하면서 공부를 하니 그런 과정들을 이해할 수 있었다. 여러 개의 파일들과 클래스들을 구조화하고 기능들을 하나씩 추가해가면서 "아, 이런 과정으로 이런 프로그램들이 만들어져가는 구나!"하고 재미를 느낄 수 있었다. 프로젝트를 설계하고, 구현해가는 과정을 체험해볼 수 있는 것이 이 책의 아주 큰 매력인 것 같다. 정말 대박! 감탄하지 않을 수 없네. 마치 파이썬 프로그래밍 "입문편"과 "실전편"을 본 것 같다. 책 두권을 얻은 느낌이랄까? 그리고 마지막으로, 많은 양은 아니지만 책의 마지막에 제공되는 부록도 유익했다. 운영체제 별 설치와 문제 해결에 대한 내용(A), 몇 가지 텍스트 에디터 소개(B), 도움을 얻기 위한 몇 가지 팁(C), 버전 관리를 위한 깃 소개(D)들이 부록으로 제공되었다. 섬세한 것 까지 챙겨주는 배려가 느껴졌다.
저자의 설명대로 이 책의 목적은 가능한 한 빨리 파이썬으로 프로그램을 만들어보는 것이다. 그리고 프로젝트를 진행하며 학생들에게 프로그래밍을 가르치려 하는 중고등학교 교사들에게도 좋은 책이다. 프로그래밍을 공부하면서 더 쉬운 참고서를 찾는 사람들에게도 좋다. 저자가 제공하는 온라인 사이트에 가면 학습에 필요한 여러 가지를 제공하고 있어서 참고하면 도움이 많이 된다.
나도 열심하 코딩 공부를 해서 저자처럼 학생들에게 프로그래밍 교육도 하고, 프로젝트도 만들어보고, 관련된 책들도 써보면 좋겠다는 생각을 한다. 부지런히 공부해야겠다. 다음 학기에 코딩에 관심있어 하는 학생들과 동아리부터 만들어봐야겠다! 파이썬 입문서로 강력 추천합니다!!
|
|
이 책은 전세계에서 가장 많이 팔린 파이썬 책 으로 전세계적으로 무려 50만부를 판매하면서 아마존 서점 파이썬 베스트 셀러 분야 1위에 등극한 책이다 저자 소개 이 책의 저자 에릭 마테스는 고등학교 교사로 알래스카에서 과학, 수학, 프로그래밍을 가르치고 있다 다섯 살 때부터 프로그램을 만들었고 현재는 교육 부문에서 오픈소스 소프트웨어를 만들거나 활용하는 데 주력하고 있다고 한다 에릭 마테스는 아이들에게 파이썬을 가르치며 얻은 실습 중심의 수업 방식, 노하우를 초보자도 어려움 없이 파이썬을 배울 수 있도록 이 책으로 정리했다 온라인 자료 GitHub: https://github.com/ehmatthes/pcc_2e GitHub IO: https://nostarch.com/pythoncrashcourse2e no starch press: https://ehmatthes.github.io/pcc_2e/regular_index 온라인 자료에 포함된 내용
개정된 내용 50만 독자의 피드백을 반영하고 2판으로 개정되면서 최신버전인 파이썬 3.8에 맞게 수정하며 오래된 내용인 파이썬 2에 관한 지원을 제거 했다 1장 - 주요 운영체제 사용자들이 파이썬을 더 쉽게 설치 할 수 있도록 단순화 하고 서브라임 텍스트를 권장하는 내용을 추가 2장 - 파이썬이 변수를 어떻게 처리하는지 더 정확히 설명 - 변수를 값의 라벨이라고 설명 - 파이썬 3.6에서 도입한 f-문자열을 활용 - 파이썬 3.6에서 도입한 아주 큰 숫자에 밑줄을 써서 1_000_000처럼 표현하는 방법을 따름 - 변수 여러 개에 한꺼번에 값을 할당하는 방법을 일반화해 2장에서 소개함 - 파이썬에서 상수를 더 명확히 나타내는 표기법 설명 6장 - 딕셔너리에 키가 존재하지 않을 때 기본값을 반환하는 get() 메서드를 소개 12~14장 - 외계인 침공 프로젝트는 클래스를 바탕으로 완전히 수정 - 게임 자체도 함수의 연속이 아니라 클래스로 수정 - 전체적인 구조가 단순해지고 함수 호출 횟수와 매개 변수 수도 많이 줄어듬 - 이제 어떤 시스템에서든 명령어 한 줄로 Pygame을 설치할 수 있고 전체 화면모드나 창모드를 선택해서 실행할 수 있음 15장 - 데이터 시각화 프로젝트에서는 Matplotlib 라이브러리 설치가 쉬워짐 - Matplotlib의 시각화의 subplot() 함수를 사용하는 부분이 쉬워짐 - 주사위 굴리기 프로젝트에서 잘 관리되는 시각화 라이브러리 Plotly 사용 - Plotly는 깔끔한 문법으로 고품질의 출력 결과를 얻을 수 있으며 출력 옵션 역시 마음대로 바꿀 수 있음 16장 - 날씨 프로젝트는 NOAA 사이트의 데이터를 사용 - 초판에서 이용했던 사이트에 비해 향후 몇년은 신뢰할 수 있는 사이트 - 지도 프로젝트는 지구 규모의 지진활동을 시각화하는 것을 목표 - 프로젝트 완수 후 주어진 기간안에 일어난 모든 지진의 위치를 지각 판 경계와 함께 표시한 놀라운 시각화 결과를 보게됨 - 지리적 포인트를 포함해 어떤 데이터든 그래프로 그리는 방법을 알게됨 17장 - Plotly를 사용해 GitHub에서 진행되는 파이썬 관련 오픈 소스 프로젝트들을 시각화해봄 18~20장 - 학습 로그 프로젝트는 최신 버전의 Django를 사용 - 최신 버전의 Bootstrap을 사용해 스타일을 입힘 - django-heroku 패키지를 사용해서 프로젝트를 헤로쿠에 올리는 과정을 단순화함 - setting.py 파일을 편집하지 않고 환경 변수를 사용하게 바꿔서 더 단순화함 - 단순화할 뿐 아니라 최신 장고 프로젝트를 운영하는 프로 프로그래머들이 사용하는 방법 부록A - 파이썬 설치에 관한 최신 모범 사례를 따르도록 완전히 개정 부록B - 서브라임 텍스트 설정방법 추가 - 현재 널리 쓰이는 텍스트 에디터와 IDE 중 산당수를 간단히 소개 부록C - 도움이 필요한 독자들이 찾아볼 수 있는 온라인 자원 중에서 더 새롭고 인기 있는 곳들을 소개 부록D - 깃을 통해 버전 관리를 하는 방법을 소개 책의 구성 1부 책의 초반은 파이썬 프로그램을 만드는데 필요한 기본 개념을 배운다 이 개념은 어떤 프로그래밍 언어에서든 공통인 개념이다 다양한 데이터에 대해 배우고 그 데이터를 리스트와 딕셔너리에 저장하는 방법을 배운다 데이터 컬렉션을 만들고 그 컬렉션을 효과적으로 다루는 법을 배운다 while 루프와 if문을 통해 조건을 만족할 때는 이부분을 만족하지 않을 때는 다른 부분을 실행하는 방법을 배운다 사용자로부터 입력을 받아 프로그램을 대화형으로 만들고 사용자가 원하는 동안 계속 프로그램을 실행하는 방법도 배운다 함수를 통해 프로그램 일부를 다시 사용할 수 있게 만들어서 한 가지 일을 하는 코드는 한 번만 만들고 필요한 만큼 재사용하는 법을 배운다 나중에 이 개념을 클래스로 확장하면 아주 단순한 프로그램으로도 다양한 상황에 대응할 수 있다 흔히 일어나는 에러를 우아하게 처리하는 프로그램을 만들 수 있게 된다 이런 기본 개념들을 익힐 때마다 간단한 프로그램을 만들어서 필자가 세심하게 선정한 문제를 풀게 된다 마지막으로 코드를 테스트하는 방법을 배우면서 중급 프로그래밍으로 한 걸음 더 나가게 된다 이 과정을 익히면 버그를 두려워하지 않고 프로그램을 개발할 수 있게 된다 1부에서 배우는 것들은 모두 더 크고 복잡한 프로젝트를 만드는 기초가 된다 2부 1부에서 배운 내용을 세 가지 프로젝트에 응용한다 이들 프로젝트에는 정해진 순서가 없으므로 어떤 것을 먼저 진행하든 상관 없다 12~14장에서는 첫 번째 프로젝트로 점점 어려워지는 갤러그 스타일 게임 외계인 침공을 만든다 이 프로젝트를 끝내고 나면 스스로 2차원 게임을 만들어 볼 수 있다 15~17장에서는 두 번째 프로젝트로 데이터 시각화를 소개한다 데이터 과학자들은 방대한 정보를 이해하는 수단으로 다양한 시각화 테크닉을 시도한다 이 프로젝트에서는 코드를 통해 데이터 세트를 만들거나 온라인 소스에서 데이터 세트를 직접 내려받거나 프로그램이 자동으로 데이터 세트를 내려받는 등의 방법으로 생성한 데이터를 다루게 된다 이 프로젝트를 마치고 나면 방대한 데이터 세트를 누비고 다니며 저장한 정보를 시각화하는 프로그램을 만들 수 있게 된다 18~20장에서는 세번째 프로젝트로 학습 로그라는 간단한 웹 애플리케이션을 만든다 이 프로젝트는 특정 주제에 대해 공부한 개념이나 그 과정에서 얻은 아이디어를 기록할 목적으로 만든다 다양한 주제별로 로그를 만들 수 있고 다른 사람들도 계정을 만들어서 자신만의 기록을 남길 수 도 있다 프로젝트를 배포해서 누구나 어디서든 온라인으로 사용할 수 있게 하는 방법도 배운다 서평 전 세계 언어로 번역되어 50만부나 팔린 베스트셀러 서적이라고해서 파이썬 입문 서적이 어떻게 이렇게 나 많이 팔릴 수 있는 지 신기하기도 했다 신기하게도 이 책의 저자는 개발자가 아니며 고등학교 교사이다 프로그래밍 전문 강사도 아니였으며 과학, 수학, 프로그래밍을 가르치는 교사이다 저자가 남을 가르치는 직업을 가져서 그런지 교육자의 성향이 책에 그대로 녹아있어 학생의 입장에서 매우 이해하기 쉽도록 구성되어 있다 책의 내용과 구성 뿐만아니라 제공되는 온라인 자료 까지 정말 매우 체계적이고 초보자들이 쉽게 이해하며 언어를 배울 수 있도록 구성이 되어 있다 마치 자신이 처음 언어를 공부할때 알아가던 방식으로 마치 책의 독자들에게 강의 하듯이 진행된다 정말 상세히 프로그램 기초 부터 파이썬 언어의 기초를 가르쳐준다 아주 심플한 예제와 예제의 결과 값을 살펴보며 이 예제를 실행하면 왜 이런 결과 값이 출력이 되는지 아주 자세히 설명해준다 초보자들이 간과하기 쉬운 중요한 팁들도 놓치지 않고 가르쳐주며 넘어간다
이 책의 절반 가량은 파이썬 언어의 기초적인 내용들을 공부할 수 있도록 구성되어 있고 나머지 절반의 내용은 모두 프로젝트 개발 내용이 실려 있다 챕터 12의 외계인 침공 게임 프로젝트에서는 Pygame을 사용해 이떄까지 배웠던 파이썬 언어를 활용해 갤러그 비슷한 게임을 직접 구현해본다 언어의 기초를 배우고 써먹지 않으면 금세 까먹어 버리는데 이렇게 프로젝트를 진행해봄으로써 언어의 이해도가 훨씬 높아 지는 것 같다 기초적인 프로젝트이지만 코드의 구성이나 설계가 엉성하지 않다 중복코드를 줄이고 클래스를 활용하며 개발자들이 실제로 사용하는 기법들을 사용하여 프로젝트를 진행하므로 프로젝트를 하나하나 진행하면서 어떤식으로 코드를 짜는 것이 더 좋은지 왜 이런식으로 개발을 하는지 이해해나가며 실무에 활용할 수 있을만한 수준의 개발지식을 얻을 수 있게 된다
요즘은 데이터 시각화가 아주 중요하다 빅데이터를 사람이 분석하기 쉽도록 데이터 시각화룔 적용해달라는 요구사항이 많기 때문이다 데이터 가공, 분석, 시각화 부분에 있어서 파이썬은 매우 뛰어난 언어이다 다양한 라이브러리를 활용해 데이터를 가공하고 분석하고 Matplotlib 로 사람이 보기 쉽도록 시각화할 수 있다 15장에서 데이터 가공, 분석, 시각화 프로젝트를 진행해 볼 수 있으니 책을 통해 파이썬 언어로 데이터를 어떻게 시각화 할 수 있는지 알아볼 수 있다
끝으로 이 책은 파이썬과 Django를 활용해 웹 프로젝트를 진행하는 부분까지 내용이 추가 되어있다 Django는 파이썬 웹 프로젝트를 진행할때 가장 많이 사용하는 파이썬 프레임워크 이다 이 부분을 진행해보면서 Django를 활용한 웹 프로젝트는 어떤식으로 진행되는지 알아 볼 수 있다
이 책으로 파이썬 기초적이 부분을 공부하고 나서 프로젝트를 진행해 봄으로써 파이썬 언어 입문자는 매우 많은 성장을 할 수 있을 것 같다 하지만 프로젝트를 진행해본다고 해서 파이썬 프로젝트 각각에 대해서 깊게 이해하기는 힘든 부분이 있다 프로젝트 하나 하나가 실제로는 그 범위가 매우 넓고 방대한 분야이기 때문에 이 책을 통해 기초를 습득 했다면 이제 자신이 원하는 분야에 대해 더 깊게 공부 해볼 수 있는 준비가 된 것이므로 자신이 관심있는 분야에 대해 더 깊게 공부 해보면 좋을 것 같다 이 책을 훑어 보니 흔하디 흔한 파이썬 입문서중에 어떻게 베스트셀러가 된 건지 알 수 있을 것 같다 입문자를 체계적인 구성, 명확한 설명, 이해하기 쉬운 내용, 아주 기초적인 부분부터 눈높이를 맞추어 진행되는 예제 코드 그리고 마지막 끝판왕 각 분야벌 프로젝트 예제 완수로 이 책 한권만 마스터 하면 확실히 파이썬 언어의 기본적인 부분은 마스터 할 수 있다 파이썬 언어에 입문하고 싶다면 2판으로 개정된 나의 첫 파이썬 책을 강력히 추천한다
※출판사로부터 책을 무상으로 제공받아 직접 실습해보고 정성껏 작성한 리뷰 입니다 |
|
책 제목 : 나의 첫 파이썬 (2판) 저자 : 에릭 마테스 옮김 : 한선용 출판년도 : 2020.07.01 파이썬이 대세가 된지도 꽤 되었고 그와 더불어 무수히 많은 파이썬 교재들이 서점이 엄청나게 출시되었다. 주로 쓰는 언어가 c++, c#이긴 하지만 프로그래머라는 직업을 가지고 있다 보니 유행하는 언어나 직군이 있다면 자연스럽게 관심이 가게 된다. 그렇다 보니 파이썬 관련 책을 몇권 읽게 되었고 파이썬에 관심을 가지게 되었다. 이 책을 선택하게 된 동기도 파이썬을 기초부터 튼튼하게 다시 정립해 보고싶어서 였다. 책의 구성 책의 제목대로 이 책은 독자가 파이썬을 처음 배운다고 가정하고 파이썬으로 프로그램을 만드는 방법을 알려준다. 책의 초반에는 파이썬 프로그램을 만드는 데 필요한 기본 개념을 배운다. 다양한 데이터, 그 데이터를 저장하기 위한 리스트와 딕셔너리의 개념, 데이터 컬렉션을 만들고 그 컬렉션을 효과적으로 다루는 법, 조건식, 입력처리, 코드의 재사용 등 코딩에 대한 기본 개념을 익힌다. 이런 기본 개념을 익힐 때 마다 간단한 프로그램을 만들어서 사용하기 떄문에 코드를 직접 짜며 익힐 수 있고 코드를 여러가지 방식으로 테스트 할 수 있다. 책의 중반에서는 초반에서 배운 내용들을 토대로 프로젝트를 만든다. 독자의 호기심과 흥미를 유발하기 위해 갤러그 스타일 게임인 "외계인 침공"을 만든다. 이 프로젝트를 완성함으로써 스스로2차원 게임을 만들어 볼 수 있는 토대를 쌓을 수 있다. 다음으로는 데이터 시각화 프로젝트를 만든다. 요즘 파이썬을 활용한 데이터 시각화 프로젝트를 많이 접할 수 있다. 이유는 빅데이터, 딥러닝, 데이터 사이언티스트등 데이터 분석에 많은 관심이 쏟아지고 있고 시장에 도입되고 있기 때문이다. 이 프로젝트를 통해 데이터를 관리하여 시각화 하는 여러가지 프로젝트를 만들수 있는 실력을 키울 수 있다. 세번째로 "학습로그" 라는 간단한 웹 애플리케이션을 만든다. 웹에 간단한 주제나 내용을 기록할 수 있는 프로젝트다. 이 프로젝트의 유용한 점은 온라인 이라는 점에 있다. 다른사람들과 프로젝트를 공유하여 사용할 수 있다. 이 특별한 경험을 토대로 웹관련 프로젝트를 좀 더 쉽게 만들 수 있도록 한다. 부가적으로 os에 맞게 파이썬을 설치하는법, 파이썬 프로젝트를 수행할 IDE에 대한 소개, 깃과 버전관리에 대한 내용이 수록되어 있다. 책을 읽고나서... 파이썬이 요즘 시대에 각광받는 이유는 다른언어에 비해 직관적이고 효율적이기 때문이다. 확장하기도 쉽기 때문에 게임이나 웹 어플리케이션에도 많이 활용된다. 이 책을 읽으면서 파이썬의 기본적인 활용법과 실제 프로젝트를 만드는 방법을 익힐 수 있었다. 기초책인 만큼 파이썬의 문법에 대해 소개하는 부분이 꽤 많았고, 후반부는 문법을 활용하여 프로젝트를 수행하는 방식이었다. 그리고 각 챕터에는 챕터에서 학습한 내용르 한번 더 고민하고 연습할 수 있는 연습문제가 수록되어 있다. 파이썬 문법부터 차근히 공부하고 싶은 사람에게는 이 책이 좋은 시작점이 될 것 같다. 링크 - 책의 참고자료
|
|
우선 책 표지는.....전혀 끌리지 않았지만 목차를 보니 파이썬을 배우기에는 이 책이 나에게 매우 도움이 될 것 같았다.목차를 보면 알 수 있듯이 자세하게 설명을 해주는데 아래에 적은 것이 나한테 제일 도움 될 거라고 생각한 부분이다. 인강을 제공하고 있지 않기 때문에 책에서 정보를 얻어야만 했다. 기초> 프로그래밍 환경 만들기, 실해하기, 문제 해결, 인덱스 에러 피하지, 들여쓰기 에러 피하기 등 응용> 게임 만들기, 데이터 시각화하기, 웹 애플리케이션 만들기 부록> 상태 체크. 저장소 초기화하기 등 이 책은 2판인데 1판과 다른 점은 1장: 설치 단순화 2장: 파이썬 변수 처리 방법 자세히 설명 6장: get() 메서드 소개 16장: 날씨 프로젝트에서 신뢰할 수 있는 사이트의 데이터를 사용 부록B: 서브라임 텍스트 설정 방법 추가 되었다고 한다. 책은 내가 따라가기에 무리가 없을 정도로 설명을 매우 잘해주고 있다. 예를 들어, 나에게 리스트 list 는 목록일 뿐인데 -특정 순서가 있는 항목 모음 -알파벳 글자, 0-9의 숫자, 가족 이름 등 원하는 것을 리스트에 넣을 수 있음 -항목이 서로 연관될 필요 없음 -리스트는 항목이 보통 2개 이상이기 때문에 리스트 이름은 복수형으로 씀 -[]로 표현 -각 항목은 ','로 구분 과같이 6가지의 내용을 설명해 주었다. 내가 옷 리스트에 색 별로 항목을 적었다면 리스트 이름은 복수 형태인 clothes(단수형이 없음)가 되고 리스트 항목을 출력할 수 있다. clothes = ['red', 'blue', 'green', 'black'] print(clothes) ['red', 'blue', 'green', 'black'] 첫 번째 색의 옷을 지정하려면 clothes = ['red', 'blue', 'green', 'black'] print(clothes[0]) red 항목의 위치는 0부터 시작하기 때문인데 blue를 출력하려면 clothes = ['red', 'blue', 'green', 'black'] print(clothes[1]) 라고 하면 된다. 책을 보고 해야만 응용이 되는 정도이지만 초보가 따라 하기에는 응용도 문제없다는 것이므로 프로젝트 기반 프로그래밍 파이썬 입문서로는 좋다고 생각한다. |