로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

코딩 강화 파이썬

   
지은이 이규호   |   출판사 주식회사 제이펍  |   발행일 2019년 06월 28일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 19,800원17,820원 10%
마일리지 5% 990원
발행일 2019-06-28
ISBN 1188621564 | 9791188621569
기타정보 국내서 | 368쪽 | 일반
예상출고일 1~2일 이내 (근무일기준)
배송비 2,000원 (20,000원이상 무료배송)
   
프로그래밍언어
   
 

기초부터 차근차근 나선형 구조로 배우는 진짜 입문서!

이 책은 저자가 고등학생을 대상으로 프로그래밍을 가르칠 때 마땅한 교재가 없음을 느껴 집필했습니다. 따라서 중학교 수준의 배경지식만 있으면 배울 수 있으며, 비전공자나 프로그래밍을 처음 접하는 사람도 읽을 수 있도록 내용 제시 순서를 엄격하게 지키고 있습니다. 예를 들어, 함수를 배우기 전에 print()가 함수라고 설명하지 않으며, 모듈을 배우기 전에 import하지 않습니다.

1. 출판사 서평
2.
기초부터 차근차근 나선형 구조로 배우는 진짜 입문서!

이 책은 저자가 고등학생을 대상으로 프로그래밍을 가르칠 때 마땅한 교재가 없음을 느껴 집필했습니다. 따라서 중학교 수준의 배경지식만 있으면 배울 수 있으며, 비전공자나 프로그래밍을 처음 접하는 사람도 읽을 수 있도록 내용 제시 순서를 엄격하게 지키고 있습니다. 예를 들어, 함수를 배우기 전에 print()가 함수라고 설명하지 않으며, 모듈을 배우기 전에 import하지 않습니다.

혼자 공부하는 독자를 배려하여 내용을 쉽게 이해할 수 있도록 도와주는 ‘노트’나 공부하면서 생길 수 있는 궁금증을 해결해 주는 ‘Q&A’ 등 다양한 참고 요소를 활용하였습니다. 또한, 강의 교재로도 사용할 수 있도록 기존의 따라 하기 방식의 입문서 형태에서 벗어나 설명 => 예제 => 유제로 이어지는 체계적인 구성으로 설명하고 있습니다.

이 책의 대상 독자
● 블록 코딩에서 텍스트 코딩으로 나아가고 싶은 중학생
● 정보 교과서의 내용을 예습/복습하고 싶은 고등학생
● 학부 과정 기초 프로그래밍 수업을 더 잘 이해하고 싶은 대학생
● 비전공자이지만 프로그래밍을 배우고 싶은 일반인
● 무작정 따라 하는 주입식 학습에 지쳐 있는 모든 프로그래밍 입문자

추천사
“이 책은 파이썬을 이용한 프로그래밍을 알려주는 책이지만 컴퓨팅 사고를 익히는 부분을 놓치지 않고 있습니다. 코드를 만들 줄 아는 사람을 만들기 위한 책이 아니라 컴퓨팅 사고를 자연스럽게 익히고 그것을 프로그램으로 구현하기 위한 도구로서 파이썬을 배우는 것입니다. 책을 읽으면서 약간 저 자신의 집필 의욕이 꺾일 만큼 제가 고민하고 교육하고 싶었던 내용을 저자분이 놓치지 않고 책에서 설명하고 있습니다. 코딩을 배우고 싶은 학생부터 자녀의 컴퓨팅 사고 교육을 위한 고민을 하는 부모님까지, 이 책으로 한 걸음 더 목표에 가까워지리라 확신합니다.”
― 배프, 《배프의 오지랖 파이썬 웹프로그래밍》 저자, 패스트캠퍼스 파이썬 강사

“디지털 시대에 접어들면서 너나 할 거 없이 모든 사람이 코딩을 도구로써 이용해야 할 필요성이 생겼다. 그렇다면 코딩을 어떤 언어로 시작할 것인가를 결정해야 하는데, 파이썬은 세계적으로 가장 많이 사용되는 언어이자 중요한 프로그래밍 언어 중 하나다. 그래서인지 시중에는 파이썬 교재가 넘쳐나고 있다. 전문가가 쓴 책들은 자칫 비전공자나 사전지식이 없는 독자에게 어렵게 느껴지기도 하는데, 이 책은 비전공자를 교육해 본 경험을 토대로 집필한 노력이 곳곳에서 엿보인다. 처음 시작하는 독자에게 맞춤인 책이다.”
― 안성진, 성균관대학교 컴퓨터교육과 교수

“무언가를 새롭게 학습할 때, 가장 중요한 것은 ‘어떻게 하는 거지?’에 대한 의문을 가지는 것이 아니라, ‘왜 하는 거지?’에 대한 의문을 가지는 것이라 생각한다. 그리고 이 책은 우리에게 코딩을 ‘어떻게 해야 하는지’가 아닌 ‘왜 해야 하는지’를 먼저 알려준다. 올바른 ‘프로그래밍적 사고’를 기반으로 코딩을 시작하고 싶은 분에게 이 책을 추천한다.”
― 윤기태, 패스트캠퍼스 강사

“프로그래밍 언어를 배우는 것은 ‘컴퓨터를 배우는 일일까요?’ 아니면 ‘논리를 배우는 일일까요?’ 적어도 컴퓨터 프로그램을 만드는 일을 하는 저로서는 후자의 답을 고르겠습니다. 왜 이 답을 골랐는지는 이 책을 읽으면 알 수 있을 겁니다. 파이썬은 지금 바로 여러분이 원하는 모든 것을 마음만 먹으면 만들어낼 수 있도록 여러분을 도와줄 것입니다. “배우지 않은 것은 쓸 수 없다”고 말하는 저자가 쓴 이 책이 여러분에게 정말 컴퓨터가 즐거운 것이란 상상을 하게 만들어주리라 기대합니다. 추천인으로서 여러분에게 바라는 한 가지가 있다면 이것입니다. 두려워 마세요. 한 발자국을 내디디면 새로운 세상이 열려 있을 거예요.
― 이지호, 《Flask 기반의 파이썬 웹 프로그래밍》 저자

“단순히 파이썬 입문서나 코딩 입문서라고 부르기엔 기존 책들과 다른 책이다. 첫 장인 ‘용어부터 알고 가자’를 보면 이 책이 지향하는 바를 확실히 알 수 있는데, ‘프로그래밍’과 ‘코딩’을 정확히 정의하고 풀어 설명한다. 이처럼 용어를 민감하게 사용할 뿐만 아니라, 그 의미도 꼭 설명한다. 덕분에, 코딩 입문자도 막힘없이 따라갈 수 있다. 게다가 알고리즘까지 설명하니, 이 책을 모두 읽으면 코딩 초보를 졸업했다고 할 수 있겠다.”
― 이태화, 《일 잘하는 평사원의 업무 자동화》 저자

“개발과 교육을 업으로 삼고 있는 저도 이 책의 꼼꼼함과 자세한 설명에 깜짝 놀랐습니다. 입문자가 알아야 하는 거의 모든 내용이 이 책에 있다고 자신 있게 이야기할 수 있습니다. 이 책을 통해 여러분은 파이썬다운 프로그램 작성법, 함수와 객체 사용법, 디버깅 방법, 컴퓨터적 사고방식까지 함께 익힐 수 있을 것입니다. 더불어, 예제와 유제를 머리를 싸매며 직접 풀어 본다면 책을 덮는 순간, 한층 더 레벨업한 여러분을 만날 수 있을 거라 생각합니다.”
― 정호영, 코드스쿼드 강사
3. 책속으로
“이 나라의 모든 사람들은 프로그래밍을 배워야 한다. 왜냐하면 프로그래밍이 생각하는 방법을 가르쳐 주기 때문이다(Everybody in this country should learn how to program a computer, because it teaches you how to think).” 이는 애플의 공동 창립자 중 한 명이자 CEO였던 잡스가 남긴 말이다. 굉장히 멋진 말이고, 프로그래밍 교육의 핵심을 꿰뚫는 표현이기도 하다. 하지만 프로그래밍을 배우기 전이라면 다소 의문이 생길 수밖에 없는 표현을 포함하고 있다. 그것은 바로 ‘생각하는 방법(how to think)’이라는 단어다. 스티브 잡스는 프로그래밍을 배우지 않은 사람들을 모두 생각할 줄도 모르는 사람이라고 비난한 것일까? 물론 그렇지 않다. 잡스가 말한 ‘생각하는 방법’이란 컴퓨팅 사고를 의미한다. 그렇다면 컴퓨팅 사고란 무엇일까?
_3쪽

기계장치는 사람의 말을 알아듣지 못하므로 규칙을 정할 필요가 있었다. 이것이 원시적인 형태의 기계어, 즉 0과 1로 이루어진 약속이자 규칙이다. 학자들은 이 규칙대로 작동하는 기계를 만들고, 약속된 언어의 형태로 여러 가지 명령을 내렸다. 즉, 사람이 ‘정보 처리 절차’와 함께 ‘처리할 정보’를 기계장치에 전달하면, 기계는 계산 끝에 ‘결과’를 돌려주었다. 이때의 ‘정보 처리 절차’가 바로 컴퓨터 프로그램의 뿌리다.
_16쪽

변할 수 있는 숫자를 변수(variable)라 한다. 하지만 프로그래밍에서의 변수는 숫자보다 자료의 공간에 더 가깝다. 편의에 따라 숫자를 바꾸며 자료를 저장하는 장소로 사용하기 때문이다. 변수는 정보를 편하게 저장하고 싶은 인간의 욕구를 충족시킨다. 훗날 재사용할 목적으로 정보를 기록하는 것은 인간의 본성이다. USB 메모리스틱에 서류를 저장하거나 웹 공간에 사진을 저장하는 것은 우리가 모든 것을 머릿속에 저장하지 못하기 때문이다. 이처럼 인간은 스스로를 대신해 정보를 기억해줄 매체를 원하고, 변수가 이 욕구를 해소해줄 수 있다.
_32쪽

인간에게 큰 스트레스를 주는 작업이 여럿 있다. 그중에서도 프로그램이 대신할 만한 작업이 두 가지 있는데, 바로 판단과 반복이다. 인간은 당연히 이 두 작업을 프로그램에게 미루고자 애썼고, 성공했다. 조건문과 반복문이 그 결과물이다. 이 둘을 합쳐 제어문이라고 한다. 먼저, 조건문에 대해 알아보자. 조건문은 인간 대신 프로그램이 판단을 내릴 수 있도록 한다. 정해진 구조에 따라 조건문을 활용하면 판단 결과가 참(True)인 경우와 거짓(False)인 경우로 나누어 다른 작동하도록 명령할 수 있다. 일종의 분기점인 셈이다.
_56쪽

함수는 프로그램 제어에 필수적인 요소가 아니다. 제어문 덩어리를 묶어 정리하여 코드를 간결하게 만들어줄 뿐이기 때문이다. 하지만 그렇다고 해서 함수가 중요하지 않은 것은 결코 아니다. 코드가 간결해지면 프로그래머는 시간과 정신력을 아껴 다른 일을 할 수 있기 때문이다. 간결성의 중요함을 이해하기 위해 다음 사례를 보자.
_90쪽
LEVEL 01 있어 보이는 계산기 사용자 1
1.1 용어부터 알고 가자 2
1.1.1 프로그래밍 vs 코딩 2
1.1.2 컴퓨팅 사고 3
1.1.3 프로그래밍 언어 3
1.2 왜 하필 파이썬인가? 5
1.2.1 적용 가능한 분야가 넓다 5
1.2.2 인기 있다 6
1.2.3 학습이 쉽다 6
1.2.4 고등학교 정보 교과 교육과정에 채택되었다 6
1.3 설치와 실행 그리고 첫 프로그램 7
1.3.1 설치 7
1.3.2 실행 8
1.3.3 첫 프로그램 12

LEVEL 02 되게 만드는 명령권자 15
2.1 프로그램의 구조 16
2.1.1 컴퓨터 프로그램은 왜 필요했을까? 16
2.1.2 문제 해결을 위한 프로그램, 어떻게 만들어야 할까? 16
2.1.3 프로그램과 함수 구조 18
2.2 화면 출력 22
2.2.1 왜 알아야 하는가? 22
2.2.2 어떻게 할 수 있는가? 22
2.2.3 실습 27
2.3 주석 29
2.3.1 왜 필요한가? 29
2.3.2 사용법과 예제 29
2.4 변수와 할당연산자, 그리고 자료형 32
2.4.1 변수, 왜 필요한가? 32
2.4.2 변수, 어떻게 사용할 수 있는가? 32
2.4.3 여러 가지 자료형과 연산자 41
2.4.4 형 변환 50
2.5 키보드 입력 52
2.5.1 왜 필요한가? 52
2.5.2 어떻게 적용할 수 있는가? 52
2.5.3 실습 54
2.6 조건문 56
2.6.1 왜 필요한가? 56
2.6.2 유형과 실습 56
2.7 반복문 70
2.7.1 왜 필요한가? 70
2.7.2 어떻게 사용할 수 있는가? 70
2.7.3 실습 76
2.8 제어문 심화 80
2.8.1 제어문, 왜 심도 있게 이해해야 하는가? 80
2.8.2 어떻게 해야 더 잘 이해할 수 있는가? 80
2.8.3 실습 85
2.9 함수 90
2.9.1 왜 필요한가? 90
2.9.2 어떻게 만들고 사용할 수 있는가? 93
2.9.3 사용자 정의 함수와 내장함수 106
2.10 클래스 110
2.10.1 왜 필요한가? 110
2.10.2 사용법과 실습 114
2.11 모듈 126
2.11.1 왜 필요한가? 126
2.11.2 어떻게 사용할 수 있는가? 126
2.12 파일 입출력 135
2.12.1 왜 필요한가? 135
2.12.2 사용법과 실습 135
2.13 유제 해설 145

LEVEL 03 세련된 중재자 157
3.1 컴퓨팅 사고와 알고리즘 158
3.1.1 컴퓨팅 사고란 무엇인가? 158
3.1.2 컴퓨팅 사고는 왜 필요한가? 166
3.2 문법 이해 심화 169
3.2.1 다차원 도형과 반복문 중첩, 다차원 자료형과 리스트 내포 169
3.2.2 데이터 교환(data swap)과 튜플의 숨겨진 사용 173
3.2.3 파라미터 이해 심화 176
3.2.4 불변 자료형과 가변 자료형 180
3.2.5 이름 짓기와 영역 187
3.2.6 재귀함수 195
3.2.7 print( ) 함수 더 잘 쓰기 201
3.2.8 모듈과 패키지 205
3.3 오류와 디버깅 208
3.3.1 오류의 종류 208
3.3.2 구문 오류의 해결 208
3.3.3 실행시간 오류의 해결 208
3.3.4 버그와 디버깅 217
3.4 유제 해설 222

LEVEL 04 필드 위의 플레이어 227
4.1 레벨 4를 본격적으로 시작하기 전에 228
4.2 실습 문제 229
4.2.1 문제 풀이에 앞서 229
4.2.2 유형 1: 프로그래밍 기초 231
4.2.3 유형 2: 프로그래밍 활용 239
4.2.4 유형 3: 프로그래밍과 수학 247
4.3 알고리즘의 효율 분석과 설계 패러다임 265
4.3.1 알고리즘의 효율 비교 265
4.3.2 정렬 알고리즘 개괄 271
4.3.3 O(n2) 정렬 알고리즘 271
4.3.4 알고리즘 설계 패러다임 277
4.4 유제 해설 306

LEVEL 05 길을 찾은 여행자 323
5.1 패스워드 크래킹: 당신의 힘을 실감하라 324
5.1.1 들어가기 전에 324
5.1.2 거짓말의 이유 325

찾아보기 343
참고용 코드 347

이규호
성균관대학교에서 컴퓨터교육과 경영학을 전공했다. 고등학교 프로그래밍 강사로 활동하면서 입문자를 배려한 소프트웨어 교육 콘텐츠가 부족함을 느꼈고, 이를 해소하는 데 이바지하기 위해 집필을 시작했다. 명확성을 통해 감동을 추구한다. 왜 A를 배워야 하는가, 왜 B보다 먼저 배워야 하는가, 왜 C는 가르치지 않는가, 어떻게 배워야 기억에 오래 남을 것인가, 재미있게 배우려면 어떻게 해야 할까, 재미란 무엇인가, 끊임없이 질문하며 콘텐츠 연구하기를 즐긴다.

1. 감수자 소개
권정인
현재는 상명대학교 교양대학 교수로, 비전공자 SW교육을 가르치고 있다. 성균관대학교에서 교과교육학과(컴퓨터교육 전공) 박사 학위를 취득했으며, 동 대학에서 초빙교수를 지냈다. 2015 개정 교육과정 정보컴퓨터 인정도서 심의위원으로 활동하였으며, 저서로는 《컴퓨팅 사고력 향상을 위한 문제해결과 알고리즘》(성균관대학교 출판부), 《4차 산업혁명 시대의 인터넷 윤리》(이한미디어), 《플레이봇과 놀자》(네이버 커넥트)가 있다.
등록된 서평이 없습니다.
두근두근 파이썬...
천인국
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
자바 병렬 프로그래밍...
David Holmes
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
C언어 스케치...
강환수, 이동규, 최재순
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
이반 추키츠...
로버트 C. ...
 
전체평균(0)
회원평점   회원서평수 0
이규호 의 최근 저서
 
2016 한국헌법 조문판례집
20,000원
(0%↓+5%)
 
주식회사 제이펍 출판사의 신간
브레인 이미테이션
이주완 저
16,200원
(10%↓+5%)
 
허교수의 ARM Mbed 프로그래밍 입문
허경용 저
24,300원
(10%↓+5%)
 
알파고를 분석하며 배우는 인공지능
오츠키 토모시 저
23,400원
(10%↓+5%)
 
R로 배우는 텍스트 마이닝
줄리아 실기, 데이비드 로빈슨 저
18,000원
(10%↓+5%)
 
고양이도 할 수 있는 Vue.js
mio 저
21,600원
(10%↓+5%)
 
이메일주소수집거부