시작해요, 코딩 1 : 코딩과 프로그래밍 시작해요, 코딩 1
헤더 라이언스 외 지음, 알렉스 웨스트게이트 그림, 홍지연 옮김 / 시공주니어 / 2017년 3월
평점 :
장바구니담기


 


코딩

2018년 부터 중 고등 교과과정(고등학교는 선택과목

2019년 초등 교과 과정에 코딩 교육이 포함된다고 해서

저도 정말 코딩에 대해서 많은 관심을 가지고 있는데요


사실 제가 코딩이라는것을 알아보려고 코딩 및 알고리즘 책을 보니 뭐가 그리 어려운지

컴공출신도 공대출신도 아니다보니 딴세상이야기 같은 느낌을 많이 받았는데요

하지만 요즘 아이들은 재미있게 배우고 쉽게 이애할 수 있는 코딩 프로그램을 접할 수가 있다고 해요


저희 둘째아이도 유치원에서 코딩 수업을 하는데 게임하듯이 너무 재미있다고 하더라고요

저는 그 교육이 어떤 수업인지를 받아보지 못했기때문에 아직도 자세히는 모르지만

아이가 집에 와서 집에 있는 패드에 어플을 깔아서 복습하는걸 보면

그다지 어려운건 아닌거 같다는 생각을 하긴 했어요


하지만 제가 이건 이렇다 저건 저렇다 정의 내리면서 알려주기엔

뭔가 많이 부족하다는 생각을 했고요


그런 의미에서 이책은

스크래치, 엔트리, 파이썬 자바 등

어떤 방식의 코딩을 배우게 되든 무조건 이 책을 먼저 보고 하면 된다고 자신있게 이야기해주네요


두 아들에게 코딩을 가르쳐야하는 엄마로서

코알못

코딩 전혀 알지 못하기에 저도 이책으로 함께 공부하면 되겠다라는 생각이 든 책이에요



 


시작해요 코딩

믿을 수 있는 출판사 시공주니어


코딩1 코딩과 프로그래밍

 


차례만 보더라도 ㅠㅠ 머리가 아파요

알고리즘

코디와 변수

버그 등등 잘 모르는 단어들이 너무 많아요


알고리즘이란

어떤 문제를 해결하기 위한 절치나 방법을 순서대로 나열하여 기록한 것을 말한다고 해요

정의는 이렇게 간단한데 제가 본 책에서는 정말 복잡하더라고요


이 책에서는 이러한 알고리즘을 만드는 방법과 실행하는 법, 그리고

오류가 있을때 바로잡는 법에 대해서 알려준다고 하네요


앞으로 배우게 될 중요한 용어들

- 알고리즘, 순차, 코드, 변수, 버그, 디버깅, 반복 구조, 조건문


정말 처음 듣는 용어 투성이인데요

책장을 넘기기 무서워하는 저와는 반대로

아이는 빨리 읽어달라고 했어요


 


자 그 어렵다는 알고리즘

도대체 알고리즘은 무엇일까요?


책에서 나오는것 처럼 저도 알고리즘 듣기만 해도 굉장히 어려운말로 들리는데요

사실 복잡한 뜻은 아니라고 해요

요리법이나 장난감 조립 순서와 같이 어떤 일을 하기 위한 절차를 나열한 것을 듯하는 말이라고 해요


제가 읽었던 알고리즘에 관한 책에서도 요리 레시피에 알고리즘을 비유하더라고요


컴퓨터는 알고리즘을 사용하여 우리가 시키는 일을 수행한다고 해요

따라서 컴퓨터 명령을 내릴 때는 정확한 순서에 맞는 알고리즘을 제시해야한다고 하네요

그래야 컴퓨터는 자기가 무엇을 해야하는지 정확히 이해할 수 있다고 해요


우리는 모든 일상생활에 알고리즘을 사용해요

양치질을 하기 위한 알고리즘을 그림으로 알아봤어요


1. 치약 뚜껑을 연다

2. 칫솔을 든다

3. 칫솔에 물을 묻힌다

4. 치약을 완두콩 크기만큼 칫솔에 짠다

5.치약 뚜껑을 닫는다

6.윗니와 아랫니를 왔다 갔다 하며 2분 동안 칫솔질을 한다

7.입속의 치약을 내뱉는다

8.칫솔을헹군다

9.칫솔을 다시 칫솔 꽂이에 놓는다



이게 바로 알고리즘이라는거에요


그럼 학교 갈 준비를 하는 알고리즘을 만들어 보라고 하네요



아이가 만든 알고리즘이에요


1. 침대에서 일어난다.

2. 실내화를 신는다

3.화장실로 간다

4.변기를 올린다

5. 쉬를 눈다

6.변기를 내린다

7.물을 내린다

8.손을 씻는다

9.비누로 씼는다

10.세수를 한다

11.수건을 꺼낸다

12. 수건으로 얼굴을 닦는다

13.방으로 간다

14. 서랍을 연다

15. 옷을 꺼낸다

16. 서랍을 닫는다

17. 옷을 입는다

18. 양말을 신는다

19. 주방으로 간다

20. 식탁에 앉는다

21. 수저를 든다

22. 밥을 먹는다

23. 물을 마신다

24. 식탁에서 일어난다

25.가방을 챙긴다

26. 가방을 멘다

27.현관으로 간다

28. 신발을 신는다

29. 현관문을 연다

30. 학교로 간다


아이가 생각해낸 순서대로 알고리즘 작성해보았어요

잘 했는지 아닌지 잘 모르겠다고 생각했는데

아이가 정답에 나온 답보다 조금더 구체적인 알고리즘을 작성한것 같았어요

엄마가 잘모르지만 어쨋든 정답보다 잘한듯 해서 엄청 칭찬해주었네요

잘했다고요~

 


명령은 순서대로


어떤 일을 수행하기 위한 알고리즘에서는 각각의 명령이 정확한 순서대로 이루어져야 해요

이렇게 알고리즘에서 각 명령이 처리되는 순서를 순차라고 한다네요


알고리즘을 작성할때는 각 명령들의 순서를 지키는 것이 중요하다고 해요

예를 들어 옷을 입을때 신발을 먼저 신고 그다음에 양말을 신으면 곤란해지니까요


만약에 알고리즘에서 순서가 맞지 않으면 명령이 제대로 실행 되지 않는다고 해요


쿠키 만들기 알고리즘을 통해서 어떤 부분이 틀렸는지 찾아내면서

순차에 대해서 자세히 배우게 되었네요

하나하나 차근차근 가르쳐 주는 코딩책~


코드와 변수


코드와 변수는 무엇일까요?

알고리즘은 코드로 작성 되요

코드란 컴퓨터가 알아들을 수 있는 언어라고 할 수 있죠

컴퓨터가 알아 들을 수 있는 언어라 함은 C언어 등이 아닌가? 순간 떠올랐는데요


캐릭터를 움직이려면 어느 곳에 위치해야 하는지를 알려주는 알고리즘을 코드로 작성해야하고

캐릭터를 이동 시키려면 캐릭터의 위치를 계속 바꿔줘야해요

그리고 크기, 색깔, 위치 등 알고리즘에서 변화를 줄 수 있는 부분을 변수라고 하고

캐릭터의 색깔이나 크기 위치등을 바꾸려면 코드를 바꾸어 주어야한다네요


변수를 찾아보자

일장연설로 코드와 변수에 대해서 알아보았지만 사실 확 와닿지 않아요

그런데 이책에서는 개념을 알려주고 또 그 개념을 직접 응용해볼수 있도록 연습문제와 함께하니

더 재미있네요

개념만 나왔다면 지루하고 재미없을수도 있었을텐데 말이죠

저도 마음속으로 풀어보고

아이는 자신있게 풀었어요

저는 살짝 헷갈리기도 했네요 잘 모르다 보니 이게 맞나? 하며 헷갈리더라고요 ㅎㅎ

 


반복 또 반복


컴퓨터가 어떤 일을 계속 해서 되풀이 하게 해야할 때가 있는데

이런 종류의 명령을 반복 구조라고 한다네요


되풀이하기를 원하는 명령이나 동작이 있을때는 반드시 반복 구조가 있어야 한다고 해요



잼 샌드위치 만들기로

어떤 반복 구조를 넣어야할지 직접 생각해보기


결과 예측하기


알고리즘을 보고 결과를 예측할 줄 알면 컴퓨터에 명령을 내릴 때 편리하다고 해요


알고리즘을 보고 어떤 모양이 될지 예측해보기

이건 꽤 쉬웠는데

+ T L 모양을 주면서 명령문을 만들어보라고 했는데

정답에도 나와있지 않고

어떻게 명령문을 만들어야할지 짐작도 가지 않더라고요


코딩이 참 어렵네요

정말 많은 연습을 해야할것 같았어요

다양한 생각을 해보고 시행착오를 겪어야 답이 생각날듯 했어요


조건에 맞게 선택하기


때때로 컴퓨터는 특정한 조건에섬나 어떤일을 실행해야 할때가 있어요

이때 만약 ~ 라면(조건문)을 사용한다고 해요


 


탐색하고 정렬하기


알고리즘은 정보를 찾고 규칙에 맞게 배열하는 데에도 아주 유용하게 사용할 수 있다고 해요


예를 들어 가나다순에 맞게 이름을 정렬할 수 있는데요

각 이름에 들어있는 글자들ㅇ르 서로 비교하여 앞에 놓을지 뒤에 놓을지 결정하는것이지요


순간 엑셀의 정렬이 떠올랐어요

정렬이라는 알고리즘 덕분에 문서작업할때 정말 쉬웠죠

일일이 조건에 맞도록 순서를 배치하려면 일인데

많은 정보를 가지고도 한번에 조건에 맞게 정렬해버리니 말이죠


이런거 보면 컴퓨터는 정말 모든 작업을 한번에 쉽게 할 수 있는것 같아요

이렇게 알고리즘을 잘 만들어놓는다면 더욱더 그럴거라는 생각이 들었네요

 


컴퓨터 속에 사는 벌레


알고리즘은 매우 유용하지만 가끔 제대로 작동하지 않아 원인을 찾아야할때가 있어요

이럴 때 알고리즘이 가진 오류를 버그라고 불러요

버그는 영어로 벌레라는 뜻이죠


벌레,버그 이러니 레이디버그가 생각난다는 아이 ㅎㅎ


프로그래머가 오류를 찾아내어 고치기 위해 알고리즘을 쭉 읽어 내려가는 것을 디버깅이라고 한다고 해요

디버깅 디버깅 하더니 이게 바로 디버깅이였군요


이러한 오류는 알고리즘에서 어떤 단계를 빼먹었거나 순서가 틀렸을 때 일어난다고 하네요


버그를 잡아라


직접 2개의 버그를 찾아보았어요


상당히 금방 정답을 찾았어요

이건 게임 처럼 너무 재미있다고 하네요

디버깅이 재미있는 거구나 하네요


그리고 1장이 끝났어요

1장이 끝나고 기억해야할 낱말

그리고 답과 풀이가 나와있었어요


아직도 완벽하게 코딩이 뭔지 이야기할 순 없지만

아 이런게 코딩이고 알고리즘이구나? 하는 걸 느꼈네요


2장 프로그래밍의 모든것


프로그램이란


여러가지 컴퓨터 언어


문법에 맞게


버그를 찾아라


만약 ~ 라면, 아니면
 


 


여기로 저기로


일일이 말해 줘야 알아들어요


프로그램 작성 하기


프로그래머의 눈으로


이렇게 또 프로그래밍에 대해서 코딩을 처음 만나는 저와 아이가 쉽게 이해하도록

설명되어있었어요

1장보다 조금 더 어려운것 같았지만 더 게임처럼 재미있기도 하고

수포자인 저는 좌표 나오자 순간 멈칫했고, 그걸 게임처럼 풀어나가는 아이

실제로 이걸 배워서 프로그램안에서 실행해보면 너무 재미있을것 같다는 생각했어요


특히나 어려운 개념들을 쉬운 연습문제를 통해서 직접 풀어보고

생각하면서 개념정리를 해나가는 과정이 재미있었어요

두고두고 둘째까지 읽어줘야할 코딩책이 아닌가 싶었네요



 


기억해야하는 낱말과 정답


그리고 색인으로 찾아보기 까지


이렇게 구성되어있는 시작해요 코딩 1


2편이 기다려 질 수 밖에 없던데요

바로 구매해야지 했네요

1권으로는 충분하지 못하다 2권으로 더 다져야겠다는 생각이 불끈 불끈!!


스티브 잡스 처럼 마크 주커버그 처럼 멋진 IT 인재가 되기를 바라는 엄마 욕심,

하지만 교과 과정으로 코딩수업이 들어온 순간 더 코딩이나 프로그래밍 등에 관심이 생겼네요

그전에는 막연히 IT 인재가 되어라~ 이런 바람이였다면

어떻게 그런 인재로 키워낼 수 있을까 계속 고민 중이네요


그러기에 기초인 코딩, 재미있게 잘 배워나갔으면 좋겠어요

학교에서 수업으로 배우기 전에 미리 약간 개념 정리를 하고 가면 수월하게 자신감 있게 배우지 않을까 싶네요

혹시 3편도 나올 예정인가 모르겠네요

그럼 3편도 바로 구매해서 봐야겠어요

저처럼 코딩에 관심 있고 아들 두신 부모님들은 시공주니어 출판사에서 출간된

시작해요 코딩 눈여겨 보셔요~




 


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo