파이썬은 가장 많이 활용되고 있는 프로그래밍 언어 중 하나입니다. 처음 프로그래밍 언어를 공부한다고 하면 단연 추천되는 언어인데요, 파이썬이 무엇인지 알아보도록 하겠습니다.
파이썬이 뭐길래
프로그래밍 언어 순위
위 링크에 들어가면 TIOBE Index라는 페이지가 열립니다. 해당 페이지에서는 특정 요건을 기준으로 산정한 프로그래밍 언어의 순위를 알려주고 있어요. 여러 검색엔진을 토대로 한다고 하는데, 다음과 같이 안내되고 있습니다.
'Popular search engines such as Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu are used to calculate to ratings'
매달 새롭게 지수를 계산하여 순위표를 갱신하는데, 파이썬은 대부분 3위 이내에 안정적으로 자리잡고 있습니다. 2018년 이후로 지수가 가파르게 상승하며 현재는 전세계적으로 가장 영향력있는 언어 중 하나로 자리매김한 언어입니다. 많은 개발자와 기업이 이 언어를 활용하고 있어요. 물론, 이 인기순위가 프로그래밍 언어의 수준이나 활용도를 평가하는 절대적인 기준이 되지는 못해요. 프로그래밍 언어는 그 용도와 목적에 맞게 선택하는 것이니까요. 그렇지만 어쨌든, 파이썬은 그 간결함과 직관성 덕분에 초보자도 쉽게 접근할 수 있는 언어로 각광받으며, 프로그래밍 언어 교육 분야에서도 확고한 위치를 차지하고 있습니다. 뿐만 아니라, 데이터 분석, 인공지능, 웹 개발 등 다양한 전문 분야에서도 강력한 기능과 풍부한 라이브러리를 제공하며 널리 활용되고 있습니다. 이러한 점들을 고려하면 파이썬이 현재와 같은 인기를 누리고 있는 것은 단순한 우연이 아니라, 시대적 요구와 기술 발전에 부응한 결과라고 볼 수 있습니다.
파이썬이 뭐길래
Life is short, You need Python.
'인생은 짧다, 당신은 파이썬이 필요하다.'파이썬 개발자들에게 격언처럼 전해지는 말이라고 합니다. 파이썬은 "실행 가능한 의사코드"라고 불릴 정도로 매우 간편하게 읽히는 언어입니다.
프로그래밍 언어에도 문법이 있고 이 문법 요소를 배우는 것은 쉬운 일이 아닙니다. 우리가 외국어를 배울 때도 도 문법을 배우는 과정이 우리를 고통스럽게 하듯이, 프로그래밍 언어를 배울 때도 마찬가지인 것이죠. 게다가 토씨 하나만 틀려도 프로그램을 실행해 주지 않으니, 엄격한 문법이 간소화되면 좋겠다는 생각을 프로그래밍 하는 사람들은 누구나 하게 됩니다.
파이썬이 바로 그런 언어입니다. 파이썬의 문법은 굉장히 간소화되어 있고, 직관적이기 때문에 보이는대로 읽히고 읽히는대로 실행되는 느낌입니다. 문법적인 요소가 없는 것은 아니지만, 다른 언어와 비교하면 훨씬 배우기 쉬운 언어인 것을 체감할 수 있습니다. 누구나 처음 프로그래밍 언어를 배울 때 튜토리얼의 절차로 "Hello, World!"라는 문구를 상징적으로 출력해봅니다. C언어와 파이썬으로 작성한 코드를 살펴볼게요.
*C언어로 작성한 Hello, World!
#include <stdio.h>
int main(){
printf("Hello, World!");
}
*파이썬으로 작성한 Hello, World!
print("Hello, World!")
대학에 다닐 때 난생 처음 선배에게 프로그래밍 언어를 배웠는데 C언어였습니다. 지금처럼 어릴 때부터 학교에서 프로그래밍을 접하던 시대가 아니어서 낯설고 생소하기만 했던 기억이 생생합니다. 선배는 무작정 #include <stdio.h>를 익숙해질 때 까지 쓰라고 했었어요. "이게 뭔데요? 무슨 의미인데요?"라고 아무리 물어도 "나중에 알게 돼, 지금은 말해줘도 몰라. 일단 따라서 써."라고만 했었어요. 언뜻 보니 몇 가지 영어 단어로 프로그래밍을 하는 것 같은데 여러 기호나 들여쓰기 등의 문법적 요소가 어려웠던 기억이 납니다. 이런 문법적 요소에 익숙해지는 것은 쉬운 일이 아니었어요.
각각의 언어로 작성된 두 코드를 비교해 볼게요. 일단, 몇 글자 되지도 않는 "Hello, World!"를 출력하는 일에도 많은 코드가 필요해요. C언어로 작성된 코드는 stdio.h라는 기본 입출력을 가능하게 하는 헤더파일부터 불러와야 합니다. printf라는 기본 출력문을 작성하기 위해 필요한 것이죠. 내가 사용할 명령어를 포함한 헤더 파일을 불러와야 하고, 함수가 실제로 실행될 main이라는 함수도 선언해줘야 해요. 그 안에 여러 가지 명령어들을 작성하면 그제서야 Hello, World 한 줄을 출력할 수 있게 됩니다. 더군다나, 기본 출력 print에 f는 왜 붙는지 아주 오랜 시간 의문을 가졌지만, 명령어란 어휘이기 때문에 이유가 없을 때도 많아요. 그리고 C언어는 세미콜론(;)을 사용해서 '내가 작성한 코드는 여기까지'라고 매번 마침표를 찍어주어야 하기 때문에 이런 규칙들을 지키지 않으면 실행되지 않습니다.
이런 언어를 배우다가 파이썬을 접하게 되면 신세계를 경험하게 됩니다. 저는 필드에서 실무를 해본 적은 없지만 아마 많은 개발자들이 그랬을 것 같아요. "이게 된다고?"
C언어는 "Hello, World!" 한 줄을 출력하기 위해 공백을 제외하고 네 줄의 코드를 작성해야 하는 반면, 파이썬은 한 줄이면 충분합니다. 심지어 명령어의 부자연스러운 f도 없어요. 그냥 print면 print인 것입니다. 물론 이런 단순 비교로 인해 C언어가 못났다고 이야기할 수는 없습니다. 언어의 기능적 우월성을 말하는 것이 아니라, 학습자의 입장에서, 또는 사용자의 입장에서 파이썬의 구조가 간단하고 직관적이기 때문에 배우기 쉽고 사용하기 쉽다는 의미입니다. 사실 그것만으로도 파이썬은 프로그래밍 언어를 작성하는 효율성을 크게 증대할 수 있기 때문에 매력이 높은 언어입니다.
마치며
현대에 와서 누군가 처음 프로그래밍 언어를 배우겠다고 한다면 열에 아홉은 파이썬을 추천합니다. 물론, 관심이 있는 분야가 무엇이냐에 따라 파이썬이 정답이 아닌 경우도 많습니다. 그렇지만 프로그래밍 언어라는 것이 하나의 언어에 익숙해지면 다른 언어를 배우는 것은 처음처럼 어렵지 않기 때문에 처음의 언어를 쉽고 간결하게 배우는 것도 도움이 됩니다. 프로그래밍 언어가 가진 어휘나 문법은 조금씩 다를 수 있어도 문제를 해결하는 알고리즘은 크게 다르지 않거든요. 그래서 처음 배우신다면 파이썬을 배우고 그다음에 관심 있는 분야의 언어를 배우는 것을 추천합니다. 파이썬에 도전해 보세요.