프로그래밍의 고수가 되는 방법.. 진지하게 질문드립니다.

위 분류에 속하지 않는 모든 주제

Moderator: Dry8r3aD

kildin
Posts: 46
Joined: 2009/01/15 Thu 7:08 am

Re: 프로그래밍의 고수가 되는 방법.. 진지하게 질문드립니다.

Post by kildin » 2009/12/17 Thu 10:38 am

namhoonkim 님께서 말씀하신 것 처럼 C같은 언어는 비전공자들도 잘 사용하고,
어느 학원을 가도 4~5개월만 하면 쓸만한 수준으로 합니다. 다른 언어도 크게 다르진 않습니다.
언어라는게 '문법'과 '단어'만 익숙해지면 쓰는데 지장이 없으니까요 ^^

많은 언어를 접해보는 것도 프로그래밍에 대한 사고를 전환하기 좋은 방법일 수 있습니다만,
제 생각에 "프로그래밍 고수"가 되시려면, 언어가 아닌 알고리즘에 대해 공부하시는 게 좋습니다.

P.S) 개인적으로는 Perl을 선호합니다. 급하게 만들게 있을 때 막만들기 쉽기 때문에요^^

P.S) 국내대기업을 알아보신다면, 학업에 충실하면서 영어공부를 하시는 게 좋습니다.
국내에서 프로그래머로 취업코자 하신다면, Perl이나 Python 같은 언어는 별로 쓸모없을 듯 합니다. :)

User avatar
pcandme
Posts: 2921
Joined: 2008/04/27 Sun 12:06 am
Contact:

Re: 프로그래밍의 고수가 되는 방법.. 진지하게 질문드립니다.

Post by pcandme » 2010/02/16 Tue 2:17 pm

옛말(?)에 백문이 불여일견이요, 백견이 불여일타라고 했지요. ㅎㅎ

코드 백 날 쳐다봐봐야 한 번 코딩해보는 것보다는 못하다는 겁니다.

저 같은 경우, 컴퓨터 공학을 전공하였는데요, tinywolf 님처럼 대학에서는 언어 같은 걸 가르치지 않았기 때문에(대신 전통적인(?) 이론 위주의 커리큘럼이었습니다), 프로그래밍 언어는 항상 독학해 왔습니다.

독학하는 방법은 간단합니다. 독서대에 프로그래밍 책 펼쳐 둡니다. 책에 나와 있는 모든 코드를 다 쳐보고 다 실행해 봅니다. 문제 다 풉니다. 무조건 코딩합니다. 코딩코딩코딩코딩... '코딩만이 내 세상'이라는 노래도 있죠. (어디에!!!)

그리고 책은 단숨에 봅니다. 알고리즘 같은 책이 아니라 언어 자체, 특히 syntax 위주의 책이라면 일단 단숨에 보아야 한다는 게 제 지론입니다. 물론 그렇게 쉽게 단숨에 봐지지는 않습니다. 책에 나오는 모든 코드를 다 쳐보고 게다가 실행 가능하도록까지 코딩해서 돌려보는데 어떻게 빨리 볼 수가 있겠습니까. ㅎㅎ. 그러나 아무튼 syntax는 최대한 빨리 봐버리고 언어의 패러다임에 관해 더 공부하거나, 실전적인 예제를 접하면서 API의 사용법이나 실제 응용을 작성하는 데에 시간을 좀 더 할애하는 것이 언어를 배우는데에 더 좋다고 생각합니다. syntax는 어차피 static한 것이고 코딩을 열심히 하다보면 자연스레 익숙해 지기 마련이니까요. ㅎㅎ.

참, 위에서 패러다임 이야기가 나왔는데, 언어의 패러다임도 참 중요합니다. 객체지향 프로그래밍이니, 절차형 프로그래밍이니 많이 들어보셨을 겁니다. C++ 같은 경우 객체지향 프로그래밍 패러다임을 도입한 언어인데, 이게 자칫 잘못하면 얼마든지 C 처럼(즉 절차형으로) 짜는 것이 가능(?)합니다. 언어 자체의 특성과 언어가 지원하는 패러다임을 정확히 알고 '적확'하게 사용할 줄 아는 것이 참 중요하다라는 것이지요. 대학에서는 프로그래밍 언어론이라는 과목이 있습니다. 이는 프로그래밍에 대해서 배우는 것이 아니라 프로그래밍 언어의 역사와 종류, 그리고 그 패러다임에 관해 공부하는 학문입니다. 프로그래밍 자체의 스킬 향상에는 직접적인 도움이 되지 않을지 몰라도 다양한 언어들과 그 역사 및 프로그래밍 패러다임에 대해 잘 알아두는 것은 아주 중요한 것입니다. 또한 알고리즘과 자료 구조에 관해서도 잘 알아두는 것이 여러 언어의 syntax를 아는 것보다 훨씬 더 중요합니다. 알고리즘이나 자료 구조 때문에 같은 기능을 하면서도 현격한 성능 차이가 나는 것을 여럿 보았습니다.

이런 말이 있습니다. '프로그래머'가 될 것이냐 '코더'가 될 것이냐... 물론 전자 쪽이 되어야 겠지요. 프로그래머와 단순 코더를 구분하는 것이 위에서 언급한 것들입니다. 단지 많은 언어로 프로그래밍을 해보았다고 하여 고수가 되는 것이 아니라 그 언어 자체의 내면과 언어 외적인 것들 또한 동시에 잘 알아야지만 고수가 되는 것이 아닐까 합니다...

아참, 그리고 자바가 최악이라고 하셨는데, 프로그래밍 하실 거면 자바는 필수로 하셔야 할 것 같은데요. ㅎㅎ. 몇 년 전 데이터이지만 자바가 프로그램 언어 랭킹 1위거든요.;; 엔터프라이즈 쪽 프로그래밍하실 거면 아마 자바는 필수로 하셔야 할 겁니다. 참고로 요새(라고 하기엔 좀 철지났을 수도.; ) 프로그래밍 계(?)의 트렌드라고 하면 framework를 사용한 프로그래밍인데 자바 쪽에서는 스프링이 가장 유명한 것 같고 루비 같은 언어에서는 레일스 같은 것을 들 수 있겠네요. 언어 syntax를 공부한 뒤에는 이런 framework를 이용한 프로그래밍을 공부해 보시는 것도 좋을 듯 합니다. 게임 쪽 프로그래밍은 C나 C++로 많이 하시는 것 같고, WoW에서도 사용되고 있는 루아(Lua)라는 스크립트 언어가 게임 쪽 스크립트 언어로 유명하더군요. 개인적으로 관심 가지고 있는 병렬 프로그래밍 언어인 얼랭(Erlang)이라는 것도 있고...

세상은 넓고 프로그래밍 언어는 많군요. ㅠㅜ (어째 결론이...;;)

User avatar
황병희
Posts: 824
Joined: 2009/10/18 Sun 1:47 am
Contact:

Re: 프로그래밍의 고수가 되는 방법.. 진지하게 질문드립니다.

Post by 황병희 » 2010/02/16 Tue 4:11 pm

저는 전산 언어에 문외한이지만..
자기가 좋아하는 언어가 무엇인지를 아는것이 가장 중요하지 않나요?

위에 어떤분이.. RMS의 집중력을 언급하셨는데.. 미치면 그리될거라 생각합니다..
미치는게 중요하죠.. 애인도/아내도 버리고.. 한곳에 미쳐야 해요.. 남자는!

그럼 못될게 뭐 있을까 생각되네요.. 안미쳐서.. 못미쳐서.. 평범하게 사는게 아닐런지요..

요즘 저의 화두는.. Gnus 에 미치는것입니다.. 이상 잡설 끝.. -_ -
^고맙습니다 감사합니다_^))//

Zero
Posts: 132
Joined: 2009/10/27 Tue 9:33 pm

Re: 프로그래밍의 고수가 되는 방법.. 진지하게 질문드립니다.

Post by Zero » 2010/02/17 Wed 5:44 am

알고리즘은 공부 하셨나요 ?
알고리즘 까지만 공부하셔도 hello world 수준은 아니라고 보는데요 ㅎㅎ;

수학공식이 많이 필요하긴 하지만 , ,그냥 들이대서 코드이해하고 풀어보고 , 바꿔보고 하면 실력은 자연히 늘어난다고 생각해요 ,

학원이라 . . 솔직히 학원이 큰도움이 될거같진 않네요 . .자기가 에러를 직접 찾아보고 왜 이렇게되는건지 생각도 많이해봐야하는건데 학원강의 들으면서 생각할 시간이 많을것 같진 않아요 ; ;

또 , 카페나 , 프로그래머 온라인 모임같은곳에 많은분들이 코드를 공개해놓으셨던데 , 그런것도 도움이 많이 되더군요 ..

헤더파일까지 직접 만들고 어렵게 꽈서 짜신분들도 종종 있지만 .. _-;;

하고싶은 말은 ..

그냥 삽질이.. 가장 기억에 오래남고 좋다고 생각합니다 . .

Post Reply