베스트셀러

베스트셀러

view_img

컴퓨팅 사고와 문제해결

스크래치로 배우는 창의적 코딩
  • 저자천인국, 이화민, 차현진
  • 발행일2021-02-26
  • 정가25,000원
  • 페이지484 페이지
  • ISBN979-11-85578-80-4
  • 책소개
  • 저자소개
  • 목차
  • 출판사 서평

컴퓨팅 사고(Computational Thinking)은 자넷 윙 교수가 2006년에 컴퓨터 학술지에서 언급한 이후로 컴퓨터 교육 분야에서 상당한 이슈가 되고 있는 용어이다. 컴퓨팅 사고는 복잡한 문제를 분해하여 문제 안에 내재된 패턴을 찾고 추상화 단계를 거쳐서 문제를 해결하는 알고리즘을 작성하는 과정이다. 작성된 알고리즘은 사람이 수행하거나 컴퓨터를 이용하여 자동화될 수 있다.

컴퓨팅 사고는 컴퓨터 전공자만 배우는 것은 아니다. 어떤 직업이든 해결해야 하는 문제가 있고 이 문제를 해결하는 데 컴퓨팅 사고를 사용할 수 있는 것이다.

이 책은 컴퓨터에 사전 지식이 없는 독자들을 대상으로 일상생활이나 자신의 전공분야에서 만날 수 있는 문제들을 해결하는 능력을 기르는 데 중점을 두고 작성되었다

천인국

서울대학교 전자공학과에 입학하여 1983년에 공학사 학위를 취득하였고, 한국과학기술원 대학원에 입학하여 1985년에 전기 및 전자공학과 석사 학위를, 1993년에 박사 학위를 취득하였다. 1985년부터 1988년까지 삼성전자 종합연구소에 주임 연구원으로 재직하였고, 1993년부터 현재까지 순천향대학교 컴퓨터공학과 교수로 재직 중이다. 2005년에는 캐나다 UBC에서 방문교수를 지냈다.

 

이화민

고려대학교 컴퓨터교육과에 입학하여 2000년에 이학사 학위를 취득하였고, 동대학원에서 2002년에 컴퓨터교육학과 석사 학위를, 2006년에 박사 학위를 취득하였다. 2006년부터 2007년까지 특허청에서 통신사무관으로 재직하였고, 20079월부터 현재까지 순천향대학교 컴퓨터소프트웨어공학과 교수로 재직 중이다. 2014년에는 미국 콜로라도대학교에서 방문교수를 지냈다.

 

차현진

한양대학교 컴퓨터교육과에 입학하여 2000년 이학사 학위를 취득한 후 2000SK C&C에서 프로그래머로 일하였고, 2004년에는 영국에 University College London에서 Human Computer Interaction with Ergonomics로 석사 학위를 취득하였다. 그 후 성균관대 창의적 디자인을 위한 지능형교육시스템 관련 연구소인 CREDITS 연구소와 한국교육학술정보원(KERIS, Korea Education Research Information Service)에서 일하였고, 2012년 한양대학교 교육공학과에서 박사 학위를 취득하였다. 현재는 순천향대학교 기초공통교양학부 교수로 재직 중이다

CHAPTER 01 4차 산업혁명과 컴퓨터

[필수 이론]

01 4차 산업혁명의 시대

02 소프트웨어 중심사회

03 다양한 산업 분야 속 소프트웨어

Unplugged Activity 4차 산업혁명 시대와 나의 미래

[스크래치 실습]

04 컴퓨터 활용 기초

05 스크래치 소개

06 스크래치 가입하기

 

CHAPTER 02 정보통신기술(ICT) 및 트렌드의 이해

[필수 이론]

01 컴퓨터와 소프트웨어

02 컴퓨터 하드웨어

03 컴퓨터의 동작과정

04 정보통신기술(ICT)의 최신 트렌드

Unplugged Activity 정보통신기술에 대한 이해

Lab 이진수 이해하기

Lab 2진수 게임

[스크래치 실습]

05 스크래치 홈페이지 둘러보기

06 스크래치 에디터

07 스크래치 블록

 

CHAPTER 03 컴퓨팅 사고의 이해

[필수 이론]

01 컴퓨터와 인간

02 컴퓨팅 사고의 정의

03 왜 우리는 컴퓨팅 사고를 배워야 하는가?

Unplugged Activity 생활 속의 컴퓨팅 사고

[스크래치 실습]

04 스크래치 화면 구성

05 스프라이트 모양 변경하기

06 사운드 재생하기

07 배경 변경하기

08 그림 편집기

Lab 날아가는 새

Lab 나만의 밴드 만들기

Lab 뮤직비디오 만들기

 

CHAPTER 04 컴퓨팅 사고 단계

[필수 이론]

01 컴퓨팅 사고의 주요 개념

02 컴퓨팅적 사고의 전() 단계

03 컴퓨팅적 사고의 주요 하위 개념

Unplugged Activity 컴퓨팅 사고의 적용

Lab 가우스의 덧셈법

Lab 웹 사이트의 비밀번호 기억하기

[스크래치 실습]

04 스크래치 블록

05 “동작블록

06 “제어블록

07 “블록

Lab 터틀 그래픽 사용해서 그림 그리기

 

CHAPTER 05 분해/문제분할

[필수 이론]

01 분해의 개념

02 분해 적용하기

03 분할 정복 알고리즘

Unplugged Lab 보물 찾기

Solution 보물 찾기

Unplugged Lab 이진 탐색

Lab 큐브 스티커 붙이기

Solution 큐브 스티커 붙이기

Lab 비봇 게임

Solution 비봇 게임

Unplugged Activity 분해/분할 활동

[스크래치 실습]

04 “연산블록의 활용

05 “감지블록의 활용

Lab 간단한 애니메이션 만들기

 

CHAPTER 06 패턴 인식

[필수 이론]

01 패턴 인식이란 무엇인가?

Unplugged Lab 숫자 패턴

Solution 숫자 패턴

Unplugged Lab 늘어나는 좌석은 몇 개?

Solution 늘어나는 좌석은 몇 개?

Unplugged Lab 세일보트 그리기

Unplugged Lab 터틀 그래픽스

Solution 터틀 그래픽스

Unplugged Lab 물리학에서의 패턴 인식

Unplugged Lab 콜레라의 발병 원인 찾기

Unplugged Lab 구글 검색에서 잘못된 단어 검색

Unplugged Lab 하노이 탑 문제

Unplugged Activity 하노이 탑 실행

Solution 하노이 탑 문제

Unplugged Lab 암호학에서의 패턴 인식

Unplugged Lab 빈도를 이용한 암호 해독

Unplugged Lab 빈도를 이용한 암호 해독

Lab 목걸이의 비용 계산

[스크래치 실습]

02 이벤트 블록

Lab 간단한 게임 만들기

 

CHAPTER 07 추상화

[필수 이론]

01 추상화란 무엇인가?

02 특성이나 특징은 무엇인가?

03 추상화하는 방법

Unplugged Lab 수학에서의 추상화

Unplugged Lab 추상화의 예: TV

Unplugged Lab 추상화의 예: 영어 문법

Unplugged Lab StarLogo TNG

Unplugged Lab 이진수와 컴퓨터

Unplugged Lab 컴퓨터에서의 추상화 계층

Unplugged Lab 버스 경로 찾는 작업

Unplugged Lab 지도의 추상화

Unplugged Activity 추상화 활동

[스크래치 실습]

04 자료형과 연산

05 변수

Lab 물고기 잡기 게임 만들기

Lab 앵그리 터틀 게임에서의 추상화

Lab 성적 관리 프로그램 만들기

Lab 수학 문제 풀이 프로그램 만들기

Lab 짝수 홀수 구별하기

Lab 비밀 코드 맞추기 게임

Lab 핑퐁 게임 만들기

 

CHAPTER 08 알고리즘과 세 가지 제어구조

[필수 이론]

01 알고리즘이란 무엇인가?

Unplugged Lab 수학적인 알고리즘

Unplugged Lab 유클리드 GCD 알고리즘

Unplugged Lab 이진 탐색 알고리즘

02 알고리즘의 기술

03 의사 코드

Lab 화씨 온도를 섭씨 온도로 변경하는 알고리즘

Lab 음료를 바꾸는 문제

04 세 가지의 제어구조

Unplugged Lab 프린터 고장 수리 알고리즘

Lab 큰 수 출력하기

Unplugged Lab 숙제하기 알고리즘

Unplugged Lab 전화걸기 알고리즘

Unplugged Activity 알고리즘 적용

[스크래치 실습]

05 세 가지 제어구조 실습

Lab 1부터 10까지 합계 계산하기

Lab 도넛의 유통기한 묻기

Lab 3-6-9 게임

Lab 팩토리얼 계산

Lab 유클리드 GCD 알고리즘

Lab 주차장 알고리즘

Lab 엘리베이터 알고리즘

 

CHAPTER 09 자료구조와 리스트

[필수 이론]

01 자료구조란?

02 리스트

03 배열을 이용하는 알고리즘

04 정렬

05 이진 탐색 알고리즘

06 최단 거리 찾기 알고리즘

[스크래치 실습]

07 리스트

08 리스트 관련 블록

09 동적 리스트

Lab 버킷 리스트

Lab 건강지수 게임

Lab 막대 그래프 그리기

Lab 이진 탐색

 

CHAPTER 10 컴퓨팅 사고의 적용

[필수 이론]

01 온라인 교육 플랫폼

02 코딩교육 웹 기반 플랫폼

Unplugged Activity 블록리 게임즈

Solution 블록리 게임즈

[스크래치 실습]

03 함수 만들기

04 함수 안에서 함수 호출하기

05 순환 호출

06 재귀 호출

Lab 피드백 함수활용 문제 맞추기 게임

Lab 구구단 함수 만들어 구구단 외우기

Lab 목걸이의 비용 계산

Lab 최소값 찾기

Lab 평균구하기

Lab 탐색

Lab 버블 정렬

 

CHAPTER 11 창의적 문제 해결을 위한 디자인 사고 방법론

[필수 이론]

01 창의적 문제해결 과정이 왜 필요한가?

02 창의적 사고의 시작

03 디자인 사고 방법론의 절차

Unplugged Activity [Step 1] 공감하기

Unplugged Activity [Step 2] 사용자 리서치

Unplugged Activity [Step 3] 진짜 문제 정의

Unplugged Activity [Step 4] 아이디어 도출 및 컨셉디자인

Unplugged Activity [Step 5] 프로토타입

Unplugged Activity [Step 6] 평가와 개선

[스크래치 실습]

04 이야기 방식의 스토리 만들기

05 웹페이지 또는 메뉴 방식

06 다른 사람들이 만든 스크래치 엿보기

 

CHAPTER 12 사용자 중심의 디자인 프로젝트

[필수 이론]

01 사용자 중심의 디자인이란?

02 사용자 중심의 디자인 절차

Unplugged Activity [Step 1-1] 주제 및 페르소나

Unplugged Activity [Step 1-2] 사용자 리서치

Unplugged Activity [Step 2] 기능 및 메뉴 구성

Unplugged Activity [Step 3] 아이디어 도출 및 컨셉디자인

Unplugged Activity [Step 4] 프로토타입

Unplugged Activity [Step 5] 평가와 개선

[스크래치 실습]

03 약육강식 게임

04 미로 게임

05 탁구 게임

06 스크롤 게임

07 확장 기능

-이 책은 컴퓨팅 사고를 처음 시작하는 독자들도 따라 올 수 있도록 컴퓨팅 사고의 기본적인 개념인 분해, 패턴인식, 추상화, 알고리즘을 자세히 설명하였다.

-적절한 그림을 가능한 많이 사용하여 보다 친숙하고, 지루하지 않으며 독자들이 이해하기 쉬운 교재를 만들려고 노력하였다.

-컴퓨팅 사고는 흥미로운 실습 예제가 많이 필요하다. 최대한 많은 실습 예제를 간추려서 LAB으로 제공하였다. LAB의 끝에는 도전 문제를 두어서 독자들이 추가적으로 실습을 할 수 있도록 하였다.

-이 책의 Unplugged LAB 문제는 간단한 도구나 언플러그드 활동으로 실습할 수 있다.

-이 책의 LAB 문제는 스크래치를 이용하여 컴퓨터로 실습할 수 있다