증정_ <회전목마에 숨어 있는 든든한 반복문> (그레이트북스)
페이지 정보
작성자 학교도서관저널 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일 18-12-12 13:07 조회 15,035회 댓글 33건본문
[신청]
- 학교도서관저널 홈페이지 '출판사 책소개' 코너의 해당 이벤트 페이지에 비밀댓글(이름, 주소/우편번호, 전화번호)을 달아 주세요.
[당첨]
- 비밀댓글(이름, 주소 + 우편번호, 전화번호)로 신청한 회원 가운데 10명 추첨, 도서 증정
주제어: 소프트웨어, 코딩, 프로그램, 명령어, 반복 구조, 반복문, 알고리즘 등|교과과정: 컴퓨터
자신 있게 재미있게!
사람이라면 지치고 헛갈리지만
기계는 지루해하지 않고 정확하게 해 내요!
살기 좋은 세상을 만드는 비밀, 코딩!
준비~땅!
▣ 작품의 내용
반복 구조의 비밀을 알아낸 우찬이와 소담이가
슝슝이에게 공 넣기 게임 코딩을 시작했어요!
대학교에서 컴퓨터공학과 국어국문학을 공부했어요. 자연과학, 역사, 문학 등 다양한 분야의 어린이 책을 쓰고 있어요. 쓴 책으로는 <도구가 필요해> <유럽과 아시아를 아우르는 거대한 땅, 러시아><비폭력으로 이룬 인도의 독립> <쇠를 먹는 불가사리> 들이 있어요.
대학에서 그래픽디자인을 공부하고, 한국일러스트레이션학교에서 그림책을 공부했습니다.
쓰고 그린 책으로는 <지옥탕> 이 있고, 그린 책으로는 <돌돌돌 내 배꼽> <부끄럼쟁이 아냐, 생각쟁이야!> <노잣돈 갚기 프로젝트> <그날 밤 이후, 이영준> <헬멧뚱과 X사건> 들이 있습니다. 재미난 세상을 두 눈에 가득 담아 종이에 풀어내고 싶습니다.
경인교육대학교 컴퓨터교육학과 교수입니다. 국내 컴퓨터 교육과 영재 교육 분야에서 왕성한 활동을 하고 있으며 250여 편의 논문을 발표하였습니다. 융합영재교육연구소 소장, 한국창의정보문화학회, 회장, 소프트웨어지원센터 센터장을 지내고 있습니다. 지금은 실생활과 연계된 소프트웨어 코딩 교육 프로그램을 연구하고 콘텐츠를 개발하고 있습니다. 쓴 책으로 <생활 속 ICT의 발견> <생활 속 SW 코딩의 발견> 들이 있습니다.
▣ 출판사 리뷰
『회전목마에 숨어 있는 든든한 반복문』은 《준비땅 코딩》시리즈의 마지막 권입니다. 아이들이 생활 속에서 접하는 소재를 통해 자연스럽게 코딩 개념을 익힐 수 있도록 기획 구성한 《준비땅 코딩》은 소프트웨어를 시작으로 순차, 조건문, 반복문으로 이어지며 코딩의 원리를 이야기로 설명하는 데 집중해왔습니다. 신호등, 라면 기계, 스프링클러 등 아이들이 쉽게 접하면서도 조금은 낯선 기계들을 통해 그 속에 숨어 있는 소프트웨어의 구조를 설명하는 형식이었지요. 시리즈의 마지막 권은 소프트웨어의 반복 구조를 다루고 있습니다. 아이들은 일상에서 ‘반복’ 알고리즘을 늘 접합니다. 아침에 일어나는 것, 학교에 가는 것, 옷을 입는 것, 모두 반복이지요. 그중에서도 아이들이 재미있어 하는 놀이동산을 배경으로 ‘반복’ 알고리즘을 설명하고 있어, 저절로 집중하여 이야기에 푹 빠져들게 됩니다.
회전목마를 사람이 돌린다고 생각해 볼까요? 목마를 올리고 내리고, 회전목마를 돌리고 하려면 아마도 수십 명은 필요할 겁니다. 사람의 수보다 더 걱정스러운 것은 ‘그 노동이 얼마나 지루하고 힘든 노동일 것인가’이지요. 다행히 회전목마는 ‘올라가라’,‘내려가라’,‘한 바퀴 돌아라’라는 단순한 명령어를 반복하기만 하면 하루 종일 아이들과 놀아줄 수 있지요. 사람이 하기 힘든 단순한 노동을 지루해하지 않고 정확하게 해 내도록 만드는 소프트웨어. 그것이 바로 반복 구조의 특장점입니다.
놀이동산에 간 우찬이와 소담이 남매. 남매는 회전목마를 타면서 그 속에 숨은 소프트웨어의 구조를 알게 됩니다. 놀이 기구들은 대부분 같은 동작을 반복하고 있고, 그 속에 반복 구조가 입력되어 있다는 사실을 말이지요. 이런 두 사람 앞에 나타난 슝슝이. 슝슝이는 소프트웨어가 사라져버린 공 놀이 게임기입니다. 남매는 반복 구조를 이용해 코딩을 시도하고, 성공적으로 공놀이를 해 냅니다.
슝슝이에게 공을 내보내는 다양한 반복 구조를 입력하는 우찬이와 소담이. 둘은 공놀이 게임을 하면서 조금 더 복잡한 구조의 코딩을 시도하고, 잘못된 부분을 디버깅하면서 좀 더 완성된 소프트웨어를 만들기 위해 노력합니다. 이 과정에서 두 남매는 ‘방법’을 찾기 위한 대화를 나누고, ‘개선’을 위한 대안을 제시합니다. 코딩 교육은 코딩을 위한 기술을 익히는 것이 아닙니다. 어떤 곳에, 어떤 코딩이 필요할지를 생각할 수 있는 창의적인 사고력이야말로 코딩 교육의 근간이지요. 이러한 창의적인 사고력은 자신의 생활 속에서 발견될 수밖에 없습니다. 세상을 바꾼 발명과 발견이 ‘필요’라는 동력에서 나왔던 것처럼, 오늘날의 혁신적인 소프트웨어 역시 ‘필요’에서 출발합니다. 아이들이 주어진 생활이 아닌, 생활을 바꿀 수 있는 사고를 하는 순간 창의적인 사고는 자연스럽게 개발될 수 있을 것입니다.
반복 구조는 순차 구조와 조건에 따라 동작하는 내용이 달라지는 선택 구조를 모두 포함하는 구조입니다. 반복은 순차적으로 진행되어야 하며, 얼마나 반복할 것인가는 조건에 따라 선택적으로 진행되기 때문입니다. 결과적으로 반복 구조는 가장 복잡한 소프트웨어 구조라고 할 수 있지요. 반복 구조는 반복해야 하는 ‘횟수’의 개념이 포함됩니다. 즉, 몇 번 반복을 할 것인가에 대한 내용이 포함되는 것이지요. 이러한 반복 횟수는 미리 정해질 수도 있으나, 그렇지 않을 수도 있습니다. 특정 조건에 따라 반복할 것인지 아닌지를 결정할 수 있는 것이지요.
사실 우리는 반복 구조를 매일 경험하고 사용합니다. 체육 시간에 선생님이 달리기 연습을 위하여 운동장을 ‘다섯 바퀴’ 돌라고 하셨다면, ‘다섯 바퀴’라는 반복 횟수가 지정된 반복 구조를 사용한 것입니다. 반복 횟수가 지정되지 않는 반복 구조도 있습니다. 수학 시간에 선생님이 모든 학생은 평가 점수가 ‘80점 이상’이 될 때까지 수학 공부를 반복해야 한다고 말씀하셨다면, 반복 횟수는 지정되지 않고 반복을 시행할지 말지를 결정하는 기준인 ‘80점 이상’만을 제시한 것이지요.
이처럼 반복 구조의 개념을 이해하고, 자신들의 일을 해결하기 위하여 반복 구조를 자유자재로 이용하는 것은 쉽지 않습니다. 꾸준한 연습이 필요하지요. 해결해야 하는 일들의 순서를 결정한 후에, 조건에 따라 해야 할 일들을 정리하고, 반복 구조를 이용하기 위하여 반복 횟수나 조건 등을 찾아서 글로 표현할 수 있다면 코딩은 완성됩니다. 아이들이 세 가지 프로그램 구조를 이해하고 생활 속에서 자연스러운 코딩을 할 수 있는 날이 오기를 희망합니다.