'전체 글'에 해당되는 글 29건

  1. 2017.08.24 [엑셀 VBA #19] 엑셀 메크로를 사용해 사다리타기 만들기 #1 2

정말 오랜만에 올리는 포스팅이네요.

 

 시작하기 전에 먼저 코딩의 개념에 관해 짚고 넘어가겠습니다.

컴퓨터인간이 사는 나라가 있다고 가정해봅시다. 컴퓨터인간이 사용하는 언어는 컴퓨터 언어입니다. 컴퓨터 언어는 무엇일까요?

 바로 2진법 숫자입니다. 컴퓨터는 0101100101010.... 이런 방식으로 소통을 하죠.

하지만 사람은 이 숫자의 나열을 이해할 수 없습니다. 컴퓨터인간이 쓰는 언어를 해석하기 위해 여러 회사에서 번역기를 출시하게되죠.

 이 번역기의 종류는 다양합니다. 가장 널리 알려지고 보급된 번역기는 C 입니다.

하지만 사람들은 더욱 간단하고 강력한 번역기를 원하게 됩니다. 예를 들어 '뻐카충' 이라고 입력하면 컴퓨터는 알아서 '버스카드 충전'이라고 이해하는 것 처럼요.

 이게 실현된다면 언어의 효율성은 더 올라가게 되겠죠. 6글자 입력하던걸 3글자만 입력해도 되니까 말이죠.

따라서 회사마다 비슷하지만 다른 방식으로 자신들의 번역기가 이해할 수 있는 줄임말을 만들어내고 간단한 문법들을 만들기 시작합니다.

 SQL JAVA C++ 파이썬 등등이 탄생합니다.

 

 

 각각 번역기마다 특성이 다르고 사용처도 달랐죠. 사람들은 적절한 상황에 필요한 번역기를 사용하게 됩니다.

자연스럽게 낡은 번역기는 도태되고 최신형 번역기가 시장을 장악하게 됩니다. 미래에도 똑같은 일이 벌어질 것이구요.

 자, 그렇다면, 컴퓨터인간과 소통을 잘 하는 사람은 어떤 사람일까요?

① 컴퓨터 언어 번역기 안에 있는 자료를 모두 달달 외운 사람.

② 컴퓨터 언어 번역기의 종류와 구동 방식을 잘 이해하며, 각각의 사용 범위와 번역기의 구동 원리를 이해한 사람.


정답은 2번입니다.

 


 위 비유에서 알 수 있듯이, 프로그래밍 언어를 달달 외우고 있다고 해서 프로그램을 뚝딱 만들어내지 못합니다.

프로그래밍 언어를 '코딩' 이라는 행동을 통해 컴퓨터가 이해할 수 있게 연결할 수 있는 능력이 필요한 것입니다.

사람들은 '나 먹는다 사과' 라고 하면 다 알아들을 수 있지만, 컴퓨터는 '나는 사과를 먹는다' 라고 하지 않는 이상 정확히 이해를 하지 못합니다. (문법이 점점 간략해지고 있기는 합니다)

따라서 프로그래밍 언어가 작동하는 원리와 구조를 아는 것이 중요한 것입니다.

제 첫번째 게시글(http://simon-k.tistory.com/1)에 이미 적어놨지만, 자기 자신을 갓 태어난 아기라고 생각하고 공부를 시작해야 합니다.

 

 아기는 책을 읽을 줄 모릅니다. 단지 이것저것 만져보고 먹어보고 가끔씩 자빠져서 다치기도 하면서 세상을 배우죠.

 코딩 공부도 마찬가지입니다. 코딩은 '말하기'와 비슷합니다. 책만으로는 절대 배울 수 없습니다.

물론 기본적인 프로그래밍 언어 코드는 알고있어야 합니다. 하지만 확실한것은, 서점에서 책 한권을 사서 페이지 1부터 끝까지 볼 필요는 없다는 것입니다.

 프로그래밍 언어의 로직을 이해하려 노력하세요.

 

사다리타기.xlsm <-클릭해서 다운로드하세요.

 

 

 제가 업로드한 사다리타기 엑셀을 열어서 실행해보세요. 실행해보고 도대체 어떤 방식으로 사다리타기를 구현해냈는지 생각해보세요.

 그 구현 방법을 이해하는 것이 중요합니다.


 "아! 사다리타기를 만들 때 이렇게 이렇게 하면 사다리를 랜덤하게 만들어낼 수 있고, 저렇게 저렇게 하면 사다리를 타고 내려가는 모양을 구현해 낼 수 있겠구나!"


위와 같은 생각을 할 수 있도록 학습 방향을 잡아야 합니다.

로직에 대한 이해만 있다면 공부하지 않은 코드는 구글링을 통해 쉽게 알 수 있기 때문입니다.

 

다음 강의에서는 제가 올린 사다리타기 파일의 구체적인 작동 원리에 대해 알아보겠습니다.


Posted by Simon K
: