<div><br></div> <div>c언어 배우다 보면 여러 가지 어려움 중에서 포인터를 빼놓을 수는 없겠지요.</div> <div><br></div> <div>뭐 쉽게 이해하는 능력 있는 분들이 있지만 이런 분들은 소수 입니다.</div> <div><br></div> <div>대부분이 이해하기 힘들고 그것은 당연합니다. 그리고 c로 개발하는 많은 경력자 분들도 <span style="font-size:9pt;line-height:1.5;">그러한 어려운 과정이 없었었던 것은 아닙니다. (당연히 있었고 그것을 극복한 분들입니다.)</span></div> <div><br></div> <div><span style="font-size:9pt;line-height:1.5;">제가 프로그램으로 밥 벌어 먹고 살면서 느낀 것이 있습니다.</span></div> <div><span style="font-size:9pt;line-height:1.5;"><br></span></div> <div><span style="font-size:9pt;line-height:1.5;">프로그램에서 어려운 것은 포인터뿐만이 아니라는 것을, 그리고 그것 보다 더 어려운 내용들이 </span><span style="font-size:9pt;line-height:1.5;">많다는 것이었습니다.</span></div> <div><br></div> <div>어떻게 어려움 해결해왔었는지 되돌아 보면, 쩌리일 적에 단 한 줄이라도 도움이 된다면 책을 구입해서 읽었고 <span style="font-size:9pt;line-height:1.5;">이건 꼭 써먹어 봐야 하는 코드들은 전부 타이핑해봤습니다.</span></div> <div><br></div> <div>어떤 경우에는 책의 모든 코드를 통째로 처 보기도 해봤습니다.</div> <div><br></div> <div>솔직히 말씀 드리면 책에 있는 모든 코드를 다 쳐본다고 이해되는 것은 아니더군요.</div> <div><br></div> <div><span style="font-size:9pt;line-height:1.5;">저는 프로그래밍이 컴퓨터와의 대화라고 생각합니다. 컴퓨터가 알아먹을 수 있도록 명령어들을 나열하는 것이 코딩이죠.</span></div> <div><br></div> <div>우리가 한글을 알아도 글자를 마음대로 배열한다면 다른 사람이 이해할 수 없고 어느 정도 문법에 맞게 써 놓아야 <span style="font-size:9pt;line-height:1.5;">타인과 대화할 수 있듯이 코딩도 컴퓨터가 이해?(처리)할 수 있도록 순서에 맞게 늘어놔야 하겠지요.</span></div> <div><br></div> <div>컴퓨터를 이해하기 위해서 <span style="font-size:9pt;line-height:1.5;">컴퓨터와 친해야 되는데 친해지는 방법이 저처럼 무식하게 책을 전부 코딩해 볼 수도 있고 </span><span style="font-size:9pt;line-height:1.5;">다이어그램이나 알고리즘을 열심히 노트에 그려보는 것 등등이 있을 수 있는데 핵심은 컴퓨터가 코드의 한 줄 한 줄을 </span><span style="font-size:9pt;line-height:1.5;">실행하는 것과 같은 사고의 흐름이 있어야 된다는 것입니다.</span></div> <div><br></div> <div><span style="font-size:9pt;line-height:1.5;">주변에 아 코딩 할만하다, 이제 좀 프로그래밍 알 것 같다라고 말할 수 있는 분들이 있다면 그 분들은 최소한 컴퓨터와 대화하는 </span><span style="font-size:9pt;line-height:1.5;">방법과 순서 그리고 머리가 그러한 흐름을 따라가고 있는 분들이구나 라고 보시면 됩니다.</span></div> <div><br></div> <div><span style="font-size:9pt;line-height:1.5;">초보자에게 C언어 포인터, 어렵습니다. 하지만 계속 가까워지고 자꾸 쓰다 보면 자연히 이해가 되고 안 쓰는 것이 더 이상할 정도가 됩니다.</span></div> <div><br></div> <div><span style="font-size:9pt;line-height:1.5;">언어의 입문 과정에 있는 기초 과정의 책은 말 그대로 기본 과정입니다. 거기서 모든 것을 배울 수 있다면 좋겠지만 어떤 학문도 </span><span style="font-size:9pt;line-height:1.5;">입문 과정에서 모든 것을 배울 수 있는 것은 아닙니다. 이것이 가능하다면 공업 수학이나 고등 미적분(advanced calculus) 과목은 </span><span style="font-size:9pt;line-height:1.5;">필요 없겠지요.</span></div> <div><br></div> <div>아무튼 프로그램도 마찬가지여서 기초 과정에 있는 분들이라면 이런 것이 있구나 하는 정도에서 외우는 것으로 마무리 하는 것이 좋습니다.</div> <div><br></div> <div>삼각함수 sin, cos, 초월 함수 exp를 안다고 고등 수학을 단번에 이해하기는 어렵듯이 프로그램도 어느 정도 수준 있는 과정을 거처야 <span style="font-size:9pt;line-height:1.5;">고급 스킬들을 쓸 수 있는 것입니다.</span></div> <div><br></div> <div>학생이라면 자료구조, 알고리즘, 프로그래밍 언어론, 시스템 프로그래밍 등의 고급 과목들을 쫓아다니면서 작은 프로젝트에서 차츰 규모가 있는 <span style="font-size:9pt;line-height:1.5;">프로젝트들을 완성하다 보면 제 말이 맞다는 것을 알게 되실 것입니다.</span></div> <div><br></div> <div>내가 뭘 모르고 있는지 그 모르는 것을 격렬하게 파다보면 정말 무엇을 모르는 지를 알게 됩니다. 그리고 뭘 모르는지 알게될 때 기쁨과 두려움의</div> <div><br></div> <div>짜릿함... 아 말로 표현할 수 없네요. 아무튼<span style="font-size:9pt;line-height:1.5;"> 모르면 모를 수록 책을 더 읽고, 더 코딩 해 보세요.</span></div> <div><br></div> <div><br></div> <div><span style="font-size:9pt;line-height:1.5;">우리가 부처님이 아닌 평범한 사람인데 어떻게 태어나면서 모든 것을 이해할 수 있겠습니까?</span></div> <div><br></div> <div>혹시 주변에 그러한 분이 있다 하더라도 기죽지 마시고 자신의 꾸준함을 만드세요. 그런 능력자 분들은 질투보단 격려를 해 주어서 <span style="font-size:9pt;line-height:1.5;">내가 쓸 수 있는 좋은 알고리즘을 만들 수 있도록 도와주어야 합니다.</span></div> <div><br></div> <div>아무튼 코딩은 내가 좋아서 하는 것인데 좀 능력이 딸리면 어때? 내가 즐거우면 되는 것을.</div> <div><br></div> <div>이런 생각으로 계속한다면 반드시 좋은 개발자가 될 것이라는 것을 제가 보증합니다.</div> <div><br></div> <div><br></div> <div>한줄 요약: 즐거운 마음으로 계속 코딩 하다 보면 자연히 이해되고 실력도 코딩한 시간만큼 는다.</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.