C언가 다시 떠오른다고 한다[1]. 물론 1위는 아니지만, 여전히 2위이고 성장세가 3위인 Python을 앞선다는설래발이다. 이유는 사물인터넷(IoT)과 최신 스마트 기기에 적합하기 때문이라고 이야기 한다.

 

알려진데로[3], C언어는 저수준 디바이스 드라이버, 커널 등에 대한 작업에 필요하다. 최근의 Android와 같은 곳에 사용되는 Linux는 이 C를 기반으로 한다. 오래되기도한 이 언어는 많은 시스템에서 사용이 가능하고, 포인터를 통한 메모리 접근이 간편하다. 하지만, 이러한 특징들이 단점으로 다가오고, 오래되었기 때문에 최신 언어들이 가지는 연구 성과들이 포함되지 않아 약점이 있다. 앞의 기사[1]에서 이야기 하는 부분은 위의 장점들을 살리는 특징 때문이라고 볼수도 있다.

 

하지만, 여전히 단점은 있다. 그렇기 때문에 MS는 다른 언어[3]를 개발하여 공개한다고 하고, Google은 Go라는 언어를 릴리즈한 것이 아닌가하는생각이 든다.

 

개인적인 생각으로는 초보자라면 한가지 언어를 결정하고 배우고 활용한다. 처음 추천하는 언어는 Java이다. Object Oriented Programming의 개념을 배울 수 있는 언어이며, 서버쪽이나 안드로이드쪽에서 활용이 가능하다. 이후에 다른 언어를 배우기도 좋다. 예전에 비전공자로 다른 업무를 하면서 프로그래밍을 배우겠다면 Python을 추천한 적도 있다.

 

그리고, 다른 환경에서 필요한 언어가 있다면 추가적으로 배우는 것이 좋겠다. 우선 현재 자신이 필요한 환경에 필요하면 배우면 된다. 이 때, C를 배우는 것도 좋다.

 

나는 C언어를 주로 썼다. 가장 오랫동안 썼고, 마치 내 Native Langauge와 같은 언어이다. 그래서, 알고리즘 연습을 하거나 간단한 프로그램을 구현하는 경우는 이를 기반으로 한다. 현재 업무가 안드로이드 개발이므로 Java도 많이 보게 된다. 그리고, 최근에는 업무 자동화 등으로 Python을 배워서 활용하고 있다. Android의 빌드 시스템이 Go언어 기반으로 바뀌어서 관심을 가지고 있다. 그리고는, 최근에는 Node.js로 팀원이 작업한 내용이 있어 Javascript도 최근에는 관심을 가지고 조금씩 살펴 보고있다. 

 

이렇 듯, 주력 언어가 하나 있고 필요에 따로 다른 언어를 익히고 있고 있다. 

 

참고 문헌

[1] C언어, 2019 올해의 프로그래밍 언어...상승세 파이썬 제쳐, 

http://m.zdnet.co.kr/news_view.asp?article_id=20200110021453&re=zdk#imadnews

[2] C 언어를 배워야 할 것 같아요?!, https://technical-leader.tistory.com/43 

[3] MS, C언어 대체할 신규 프로그래밍 언어 연구, http://www.zdnet.co.kr/view/?no=20200119172404

 

+ Recent posts