본문 바로가기
프로그램개발/IT 트렌드·팁·상식

프로그래밍 코딩 실력 늘리기

by 크레도스 2018. 2. 20.

출처 : http://marinelifeirony.tistory.com/m/22


 맨처음에 프로그래밍을 시작할때 어떻게 하면 프로그래밍 코딩 실력을 늘릴 수 있지? 이 책 한권만 공부하면 정말 그 언어를 마스터 할 수있을까? 고민 하신분이 있을거라 생각합니다! 의욕이 넘치던 저 또한 그랬으니까요. 하지만 언어를 마스터한다는 말은 상당히 오만한 말이 될 수가 있습니다! 책에서 배우는 것들은 주로 쓰이는 것들, 기초적인 지식을 가르치는 것일 뿐이니까요.



1. 스스로 기존에 짰던거보다 큰 프로그램 짜보기


 저는 대학교에 처음들어와서 프로그래밍 공부를 시작한 초보이였습니다. 학교에 들어가기 전에 중고등학교에서 프로그래밍 공부하고 온 친구들에게 실력으로 무시 당하기 일쑤였습니다. 하지만 저는 엄청 단시간에 많은 실력을 올릴 수 있었습니다. 그 놀리던 친구들도 저의 늘어난 실력에 놀랄정도 였으니까요!

 제가 실력을 늘릴 수 있었던 비결은 제가 프로젝트 조장을 맡으면서 배운것을 이용해 자신이 만들고 싶은 프로그램을 정하고 구상하며 만들어 나간것이였습니다. 이는 책에 있는 것을 활용하는 능력뿐만아닌 자신이 필요한 해당 언어의 기능을 인터넷에 쳐서 찾아보게 되며 실력이 늘게되는 효과를 가져옵니다. 기존에 짰던거 보다 큰 프로그램을 짜게되면 자연스럽게 간단한 "소수만 출력하기!", "ax+by=c(자연수범위)에서 a,b,c 입력받고 x,y값들 출력받기!" 등의 프로그래밍을 하는게 쉬워지며 머리속에서 어떻게하면 짜질지 떠오르게 됩니다. 한마디로 레벨업한거죠! 비유를 하자면 "수학문제들의 난이도 상 문제들은 보통 쉬운문제가 여러개가 합쳐진것이다." 라고들 합니다. 프로그래밍도 마찬가지입니다. 여러분이 큰걸 짜면서 결국 여러개의 쉬운 난이도의 코딩을 하게되며 그것들이 복합적으로 작동 할 수 있게 하는 능력을 기를 수 있게 되는것입니다.

2. 디버그를 통해 자신의 소스가 의도적으로 돌아가는지 확인하기


 큰 프로그램을 짤수록 오류가 생기는 빈도가 커집니다. 자신은 제대로 짠거 같은데 오류가 생기면 그걸 해결하기 위해 엄청나게 스트레스를 받고는 하죠! 특히.. 오류목록에 없는데 프로그램 실행중에 오류가 생기면 더 찾기 힘든 오류! 이 오류들의 원인을 자기 스스로 찾아내고 해결해내는것이 프로그래밍 코딩 실력에 향상에 큰 도움이 됩니다. 공부 할때 오답노트를 푸는것과 마찬가지이죠. 자신의 코딩에 약점이 되는부분을 많이 보완해줄것입니다.

 보통 ctrl+f5로 디버그하지않고 시작하는 경우가 많은데,f5로 디버그를 통해 오류가 나는곳 근처에 중단점을 놓거나, 오류가 나는 해당 함수만 따로 컴파일해서 시험을 해보던지, 한줄한줄 시행하며 변수가 의도한대로 잘 변하는지 확인해주시면 됩니다.


@참고하시라고 스무디님 영상 올려두겠습니다.


3. 알고리즘 공부하기

알고리즘, 자료구조를 공부하면 논리적 사고하는 능력이 늘어나기 때문에 프로그래밍 실력에 큰 향상을 하는데 도움을 줍니다. 책을 사셔서 공부하셔도 되고 정보올림피아드에 있는 정보들로 공부하셔도 됩니다. 초급~고급책까지 무료pdf로 배포하고 강의도 있으니 관심이 있으시면 보시면 될것같습니다.




이외에도 KOI기출문제를 풀어보시면 실력 향상에 많은 도움이 되실것입니다.

4. 여러 문제를 풀어보며 실력 늘리기(경험 쌓기!)

프로그래밍에 대한 마스터란 말이 왜 오만인가!! 그것은 문제가 주어질때 자신이 짠 소스보다. 더 효율적인 프로그램 소스가 있을수도있고, 아직 발견되지 않은것도 있기때문 입니다. 그 외에도 많은 이유들을 들 수 있겠죠? 결국 프로그래밍을 많은 경험이 쌓이고 꾸준히 해야 실력을 늘릴 수가 있습니다. 여러 문제들을 풀수있는 사이트를 소개해드리겠습니다.


사이트주소

http://codeup.kr/JudgeOnline/index.php

http://euler.synap.co.kr/

https://www.acmicpc.net/


해당 사이트에서 여러문제를 접해보고 풀어나가시면 한층더 성장한 자신을 발견하실수 있게 될것입니다.

5. 다른사람의 소스도 읽어보고 이해해보기

자신만의 코드를 짜는것도 중요하지만 자신보다 더 뛰어난 코드가 얼마든지 있을 수 있습니다. 우리는 언제나 배우는 입장임을 직시하고 배우는 자세를 항상 취하시면 그것이 자신이 성장하는데 많은 도움이 될것입니다.



6.주석 활용하기


주석은 큰 프로그래밍을 짤수록 자주 사용하게 되는데요. 자기가 어떻게 할껀지 생각해놓고 까먹는 경우가 허다하거든요.  또한 수정을 할때 많은 도움이 되고, 다른 사람들이 자신의 코드를 읽을때 이해하는데 큰 도움이 됩니다.



7.헤더 활용하기


헤더를 사용하면 소스를 볼때 가독성이 좋아지고 파일을 관리 및 공유하기가 좋아집니다. 처음에는 귀찮고 할줄몰라서 오류도나지만 활용만한다면 프로그래밍을 할때 도움이 됩니다.




주변 애들중 이론을 빠삭한데 프로그래밍을 못하는애들이 꼭 몇명씩있더라구요. 특히 여자애들이 좀 많이 그러던데 프로그래밍의 배움은 배우고 예제소스 쳐보고 끝이 아닙니다.  여러분이 그 배운것들을 자유롭게 활용할 수 있게 스스로 자유롭게 짜보는게 코딩실력 상향에 주된 영향을 미칠것입니다. 그리고 무엇보다 프로그래밍에 관심을 갖고 하는게 제일 중요하겠죠!! 모두들 훌륭한 프로그래머가 되시길 바라며 코딩과목은 전부 A+받길바랍니다!!

이상 경험에서 우러나온 코딩 실력을 늘리기 위해 노력하는 이들을 위한 글이 였습니다.