*순서
내가 자주 받는 질문 중에 하나는, 어떤 언어부터 배우면 좋을까에 관한 것이다.
어떤 이는 비주얼베이직이 좋다고 하고 또 어떤 이는 C 언어가 좋다고 한다.
또 어떤 이는 처음부터 객체 지향 개념이 들어가 있는 자바나 C#부터 시작하는 것이 좋다고 한다.
나의 생각에는 이 모든 말들이 일리가 있다고 생각한다.
어떤 언어이든지 하나를 택하여 꾸준히 공부하기만 하면 되기 때문이다.
얼마나 꾸준히 공부하느냐가 문제이지, 언어를 선택하는 것 가체가 문제는 아니라고 생각한다.
그럼에도 불구하고 나에게 굳이 한 가지 언어를 택하여 달라고 요구한다면, 나는 자바나 C#을 권하고 싶다.
지금부터 하는 말은 어디까지나 처음 프로그래밍을 배우는 사람에게만 해당되는 말이다.
처음 배우는 언어를 C로 택하였을 경우에 대개는 C 언어의 포인터(pointer)에서부터 막히기 시작하게 된다.
대개의 사람들은 이 포인터의 장벽을 넘지 못하고 C 언어를 포기하게 되는 경우가 많다.
C++은 어떨까?
C++은 괜찮은 언어이고, 강력한 언어이기는 하지만 C보다 더 배우기가 어렵다.
구체적으로 이것이 어렵다고 이야기하기에는 너무 방대할 정도로, C++에는 어려운 개념들이 많고 복잡하다.
비주얼 베이직은 어떨까?
비주얼 베이직은 현재 두 가지 버전이 유통되고 있다.
비주얼 베이직과 비주얼 베이직 닷넷(VB.net)이 그것이다.
비주얼 베이직에 객체 지향 개념을 추가하고 인터넷 시대에 걸맞는 기능을 추가한 것이
비주얼 베이직 닷넷이다.
비주얼 베이직은 매우 배우기 쉽다.
그래서 많은 응용 프로그래머들이 비주얼베이직 닷넷을 처음 배우는 언어로 택하고는 하였다.
그러나 프로그램을 조금이라도 작성해 본 경험이 있는 사람이라면 비주얼 베이직의 한계를 곧 알게 된다.
1년 동안 열심히 배워서 3년 안에 한계를 느끼게 되고, 결국 다른 언어를 배워야겠다는 생각을 하게
만드는 것이다.
비주얼베이직이 업무용 프로그램 작성에는 아주 뛰어나다.
그러나 네트워크나 시스템을 다루어야 한다면 적절치 못한다.
현재 널리 사용화되어 있는 언어 중에서 비주얼베이직, C, C++을 제외하면 자바와 C#이 남는다.
이 둘은 비주얼 베이직의 장점과 C나 C++의 장점을 모두 가지고 있다.
비주얼 베이직처럼 배우기 쉬우면서, C나 C++처럼 강력하다.
네트워크나 시스템 프로그램에도 강한 면모를 보여준다.
그러므로 일단 자바나 C#으로 공부하고,
나중에 자신의 진로에 따라서 추가적으로 한 두 가지 언어를 더 배우는 것이 좋을 듯하다.
만약 SI업체에서 업무용 프로그램을 주로 제작할 생각이라면
비주얼베이직을 포함한 업무 처리용 언어를 배우면 될 것이다.
만약 게임 개발쪽으로 나갈 생각이라면 C 언어나 C++언어를 더 익히면 될 것이다.
지금까지 한 이야기는 나의 개인적인 생각에 불구하지만, 꽤 괜찮은 진로일 것으로 생각한다.
내가 오랜 시간 듣고 경험한 이야기이기 때문이다.
내가 소경은 아니기 때문이다.
19) 포인터(pointer):컴퓨터의 메모리의 특정 부분을 지정할 수 있는 특별한 변수.
이 변수에 메모리의 특정 부분의 주소를 넣어, 그 부분에 있는 자료를 꺼내올 수 있다.
20) SI(System Integration)업체:시스템 통합 업체. 프로그램을 개발해 주는 업체.
단순히 프로그램을 개발할 뿐만 아니라,
프로그램을 중심으로 통합된 새 시스템을 업무에 전략적으로 활용하는 방안을 세워 주기도 한다.
2010년 08월 13일 12시 46분 13초