어떤 프로그래밍 언어를 선택해 배워야 할까?

Daniel Seo·2021년 8월 13일
0

개발을 처음 시작하는 사람에게, 어떤 프로그래밍 언어를 배워야 하는지는 매우 어려운 고민이다. 전공자라면 대학 커리큘럼에서, C나 Python등 정해준 언어를 통해 시작하지만, 시간과 그 기회비용이 중요한 사람들에게는 아무 언어나 맹목적으로 선택해서 배우는 것은 성에 차지 않는다.

우리가 실생활에 사용하는 언어와 프로그래밍 언어는 매우 유사한 성격을 가지고 있다. 그 뿌리가 같다는 것을 이해하면 어떤 프로그래밍 언어를 선택해야 할지에 대해서 한층 와닿는 Insight를 얻을 수 있을 것이다.

언어 (Language)

언어란, 말 그대로 언어이고 소통하기 위한 수단이다. 예를 들어 우리가 일반적으로 많이 사용하는 '안녕하세요' 라는 문장은,

  • 미국 : Hello
  • 일본어 : こんにちは
  • 프랑스어 : Bonjour.

위와 같이, 다양한 형태로 표현되지만 전하고자 하는 뜻은 같다. 세상의 언어도 국가와 민족별로 다양한 형태가 있다. 영어, 중국어, 한국어, 프랑스어 등 Major한 언어들이 있는 반면, 남미나 소수민족들이 사용하는 언어처럼 Minor한 언어들이 있다. 이들은 각각 사용하는 사람들의 취향도 다르고 표현할 수 있는 범위도 다르다.

프로그래밍 언어 (Programming Language)

프로그래밍 언어도, 우리가 사용하는 언어의 성격과 매우 유사하다.

C, Java, Python, C++... 등 많은 언어들을 접했을텐데 프로그래밍 언어도 각각의 역사와 사용자의 취향, 특정 소프트웨어를 개발하기 위한 특징등이 각각 다르다.

그렇다면 어떤 프로그래밍 언어를 배워야 할까?

다음과 같은 상황을 가정해보자. 내가 갓난아기로 태어날 때 영어, 중국어, 한국어, 일본어 등 다양한 언어중 내가 선택해서 배울 수 있다고 가정하면 어떤 언어를 배울 것인가? 일본 문화가 좋아 일본 사람들과 소통하고 일본 드라마를 재밌게 보고 싶다면 일본어를 선택할 수도 있다. 또는 세계에서 가장 많이 사용하는 영어를 익혀서 세계의 여러 나라사람들과 소통할 수도 있다. 또는 4개국어를 익혀서 언어의 마술사가 되고 싶을 수도 있다.

다시 프로그래밍 언어로 돌아와보자. C, Java, Python, C++ 등은 우리가 주변에서 많이 접할 수 있는 메이저한 언어이고, Pearl, Go, Kotlin 등 이러한 언어는 많은 개발경험을 가지고 있지 않은 사람이라면 모르는 Minor한 언어라고 할 수 있다. 세상에 존재하는 많은 앱, 웹 같은 소프트웨어들은 각각 1개의 언어부터 여러개의 프로그래밍 언어로 만들어진 프로그램들로 이루어져 있다. 각각 언어마다 개발자들의 취향과 그 특성이 다르지만, 우리가 사용하는 언어들도 '문법'이라는 공통의 골격이 존재하는 것처럼 프로그래밍 언어또한 기본적인 문법의 뿌리는 거의 동일하다고 할 수 있다.

즉, 각 프로그래밍 언어들에 대해서 깊이 공부하고 싶다면 그 역사와, 특성을 깊이 공부해보고 선택하면되고, '아 난 모르겠어, 개발을 빨리 시작하고싶어' 라고 하는 사람이라면 메이저한 대중적인 언어중 하나를 선택해서 시작하면 된다. (많은 사람들이 선택해서 배우고 있기 때문에 접할 수 있는 리소스가 많다.)

profile
배움을 나누는 개발자입니다

0개의 댓글