신간도서

신간도서

view_img

파이썬으로 배우는 소프트웨어 디자인

디자인 사고 및 컴퓨팅 사고의 이해와 응용
  • 저자김홍준
  • 관련분야파이썬, 컴퓨팅사고, 소프트웨어 디자인, 디자인사고
  • 발행일2020-02-27
  • 정가20,000원
  • 페이지256 페이지
  • ISBN 979-11-85578-61-3
  • 책소개
  • 저자소개
  • 목차
  • 출판사 서평

통합적인 사고의 개발, 파이썬과 함께! 

 

4차 산업혁명 시대에서 필요한 것은 인공지능이 해결할 수 없는 문제를 분석하고 분해하는 등의 작업을 통해 문제를 다시 정의하고, 컴퓨터를 활용하여 해결하는 역량을 갖춘 인재이다. 이 같은 역량은 디자인 사고, 컴퓨팅 사고 그리고 시스템 사고 등의 용어로 정리된 통합적인 사고의 개발을 통해 얻을 수 있을 것이다. 이 책은 특히 이러한 디자인 사고와 컴퓨팅 사고를 키울 수 있도록 내용을 구성하고 모든 학과의 학생들이 배울 수 있도록 비교적 입문하기 쉬운 파이썬을 도구로 활용한다. 가능한 문법 위주의 내용은 지양하고, 기본적인 조건문, 반복문을 구현하여 여러 가지 프로그래밍을 할 수 있게끔 유도한다. 프로그래밍의 재미를 느낄 수 있도록 거북이 그래픽 모듈을 주로 이용하여 프로그램 실행을 눈으로 확인할 수 있도록 한다.

김홍준
 

2004년 한국과학기술원(KAIST) 전자전산학과 학사 학위 취득
2007년 한국과학기술원(KAIST) 전자전산학과 전기및전자공학전공 석사 학위 취득
2014년 한국과학기술원(KAIST) 전기및전자공학과 박사 학위 취득
2014~2015년 삼성전자 생활가전사업부 S/W Lab. 책임연구원
2012~2013년 IEEE 학생회원
2014년~ IEEE 정회원
2017년~2018년 한국정보과학회 충정지부 이사
2015년~ 대전대학교 컴퓨터공학과 조교수 

CHAPTER 01 개요
 1. 4차 산업혁명 시대에 갖추어야 할 사고와 파이썬
  1.1 디자인 사고
  1.2 컴퓨팅 사고
  1.3 파이썬(python)
 2. 파이썬 개발환경
  2.1 파이썬 개발환경 구축
  2.2 파이썬의 대화형 모드
  2.3 파이썬의 스크립트 모드

 

CHAPTER 02 거북이 그래픽 모듈 사용하기 I
 1. 거북이 그래픽(turtle graphics)
 2. 거북이 그래픽 사용 준비
 3. 거북이 그래픽 사용하기 
  3.1 거북이 모양 바꾸기
  3.2 거북이 초기 위치 및 방향
  3.3 거북이 이동 및 회전시키기 I
  3.4 배경 바꾸기
  3.5 거북이 이동 및 회전시키기 II
  3.6 펜 올리기 및 내리기    

 

CHAPTER 03 거북이 그래픽 모듈 사용하기 II
 1. 변수(variables)와 주석(comments)
  1.1 변수(variables)
  1.2 주석(comments)
  1.3 두 마리의 거북이 만들기
  1.4 변수 사용의 장점
 2. 산술 연산자(arithmetic operator)
 3. 사용자로부터 입력받기
  3.1 input() 함수
  3.2 예제1: 원의 넓이 계산하기
  3.3 예제2: 점수 합계와 평균 점수 계산하기
 4. 펜으로 그리기
  4.1 자음 그리기
  4.2 모양 크기 변경하기
  4.3 펜 굵기 변경하기
  4.4 펜 및 배경 색 변경하기
  4.5 색칠하기
  4.6 원 그리기

 

CHAPTER 04 함수
 1. 함수의 뜻과 분류
 2. 함수 정의
  2.1 입력과 출력이 모두 없는 함수
  2.2 입력만 있고 출력은 없는 함수
  2.3 입력은 없고 출력만 있는 함수
  2.4 입력과 출력이 모두 있는 함수
 3. 함수화
 4. 함수의 활용
 5. Procedural 프로그래밍      

 

CHAPTER 05 조건문과 반복문
 1. 순차 구조, 선택 구조 그리고 반복 구조
 2. 관계 연산자(relation operator)
 3. 조건문(conditional)
 4. 논리 연산자(logical operator)
 5. 반복문(loop)
  5.1 while문
  5.2 for문
  5.3 예제1: 네모 그리기
  5.4 예제2: 바람개비 그리기
 6. 난수 생성      
  6.1 예제1: 숫자 맞추기 게임
  6.2 예제2: 가위바위보 게임

 

CHAPTER 06 리스트와 파일 입출력
 1. 리스트
 2. 리스트의 반복문 활용
  2.1 예제1: 스파이럴 그리기
  2.2 예제2: 최댓값, 최솟값 구하기
  2.3 예제3: 여러 개의 네모 그리기
 3. 파일 입출력
  3.1 파일 열기
  3.2 파일 닫기
  3.3 파일 쓰기
  3.4 파일 읽기
  3.5 파일 포인터
 4. 문자열 분리
  4.1 예제: 해밀턴 경로 따라가기
 5. 음악 파일 재생하기
  5.1 내장 플레이어 이용
  5.2 playsound 모듈 이용      

 

CHAPTER 07 이벤트와 쓰레드
 1. 이벤트 기반 프로그래밍(event-driven programming)
 2. 이벤트 핸들러(event handler) 등록하기
 3. 이벤트의 종류
  3.1 마우스 관련 이벤트
  3.2 키보드 관련 이벤트
 4. 예제: 미로 탈출 게임 내 버튼 만들기
 5. 쓰레드(thread)
 6. 모션 구현하기     

 

CHAPTER 08 디자인 사고와 컴퓨팅 사고
 1. 디자인 사고(design thinking)
  1.1 공감하기
  1.2 정의하기
  1.3 아이디어 떠올리기
  1.4 프로토타입 만들기(prototyping)
  1.5 테스트하기
 2. 컴퓨팅 사고(Computational Thinking)   

 

CHAPTER 09 문제 분해
 1. 문제와 문제의 해결
  1.1 예제1: 들판의 참새 떼
  1.2 예제2: 수련
  1.3 예제3: 불쌍한 파리
  1.4 예제4: 용수철의 길이 구하기
  1.5 예제5: 금화 나누기
 2. 분해(decomposition)

 

CHAPTER 10 추상화와 패턴 인식
 1. 추상화(abstraction)
  1.1 예제1: 공 낙하 궤적 시뮬레이션
  1.2 예제2: 공 맞추기 게임
 2. 재귀 함수(recursive function)
  2.1 팩토리얼(factorial)
  2.2 등차수열
  2.3 피보나치(Fibonacci) 수열
 3. 패턴 인식(pattern recognition)
  3.1 예제: 두더지 게임
 4. 자주 쓰이는 파이썬 모듈 
  4.1 requests
  4.2 scrapy
  4.3 Pillow
  4.4 pygame
  4.5 NumPy
  4.6 SciPy

 

CHAPTER 11 알고리즘
 1. 알고리즘 개요
 2. 의사 코드(pseudo code)
 3. 순서도
 4. 알고리즘 설계 및 구현
 5. 알고리즘 분석
  5.1 예제1: 1부터 100까지의 합
  5.2 예제2: 최대공약수 구하기
 6. 정렬(sorting) 알고리즘
  6.1 버블 정렬(bubble sort)
  6.2 선택 정렬(selection sort)
 7. 탐색(search) 알고리즘
  7.1 순차 탐색(a.k.a. sequential search)
  7.2 이진 탐색

 

CHAPTER 12 인공지능 및 기타
 1. 막대그래프 그리기
 2. 산점도(scatter plot) 그리기
 3. 런 길이 부호화(Run Length Encoding, RLE)
 4. Tic-Tac-Toe 게임
 5. 퍼셉트론(perceptron)
  5.1 예제: OR 연산 

이 책은 크게 두 부분으로 나뉜다. 1장부터 7장까지는 파이썬을 이용한 기본적인 프로그래밍 방법을 배우면서, 다양한 프로그래밍 패러다임도 함께 이해할 수 있도록 소개하였다. 8장부터 12장까지는 디자인 사고 과정을 수행하면서 디자인적 방법론에 익숙해지도록 하였고, 컴퓨팅 사고의 핵심요소들을 소개하고 예제들을 통해 실습함으로써 체득할 수 있도록 구성하였다.