회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
AWS 이용 중이라면 최대 700만 원 지원받으세요
세상에는 여러 개발언어가 있고, 그중에는 ‘파이썬(python)’이라는 개발 언어도 있습니다. 이번 시간에는 파이썬이란 언어가 무엇이고, 어떤 특징이 있는지 알아보도록 하겠습니다.
회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
회원가입을 하면
성장에 도움이 되는 콘텐츠를
스크랩할 수 있어요!
확인
세상에는 여러 개발언어가 있고, 그중에는 ‘파이썬(python)’이라는 개발 언어도 있습니다. 이번 시간에는 파이썬이란 언어가 무엇이고, 어떤 특징이 있는지 알아보도록 하겠습니다.
파이썬은 개발 언어입니다. 그렇다면 개발언어에는 어떤 것들이 있을까요? 개발 언어의 종류는 크게 세 가지 분야로 나눌 수 있습니다.
대표적인 언어로는 C 언어가 있습니다. C 언어는 기계가 갖고 있는 기능들을 불러내고, 원하는 동작을 시키기 위해 기계의 세세한 지점까지 다루는 개발 언어입니다. 주로 컴퓨터 OS를 개발하거나 로봇과 드론 등을 개발하는 데에 사용됩니다.
대표적인 언어로는 자바스크립트가 있습니다. 웹사이트의 기능을 연결하거나, 웹을 앱 형태로 묶어 배포하는 등 사용자와 밀접한 UI 단위를 다루게 됩니다. 추가로 UI 프레임워크를 사용하여, 여러 OS에 최적화된 앱 서비스를 만들 수도 있습니다.
대표적인 언어로는 자바, SQL이 있습니다. 웹사이트나, 앱 서비스는 항상 수많은 데이터를 주고받습니다. 이 데이터들을 정리하고, 빠르게 오고 갈 수 있게 돕는 것이 서버/데이터베이스의 역할입니다.
그렇다면 파이썬은 이 세 가지 중에 어떤 쪽에 속하는 언어일까요? 사실 파이썬은 조금 위치가 애매합니다. 웹 개발 쪽이지만. 웹 크롤링 (Web Crawling)처럼, 무언가를 반복시키고 자동화시키는 데에 특화된 언어이기 때문입니다.
파이썬은 여러 가지 장점을 가진 언어입니다. 그중에 가장 강력한 것은, 응용 분야가 넓다는 것입니다. 데이터베이스 속에서 원하는 그룹을 찾아내기 위해 마케터 분들이 공부를 하기도 하고. 엑셀이나, PPT처럼 단순 업무를 자동화하려고 배우기도 합니다.
파이썬은 웹 개발을 위한 언어로 태어났지만, 다양한 연동 프로그램이 나오면서 컴퓨터용 매크로를 만들거나, 단순업무 자동화 등 여러 가지 내용을 손쉽게 처리할 수 있게 되었습니다.
실제로 파이썬을 통해 자동화를 할 수 있는 여러 가지 내용이 있는데 대표적으로 네 가지 사례가 있습니다.
파이썬은 계속해서 사용 범위가 넓어지고 있습니다. 매년 새로운 자동화 도구들이 나오고 있고 이런 도구들을 파이썬 언어 기반으로 사용할 수 있습니다. 업계 전문가들은 앞으로도 이런 자동화 도구들이 계속 등장할 것이고, 사용은 더 쉬워질 것으로 전망하고 있습니다.
파이썬은 구글, 페이스북, 아마존, 넷플릭스 등, 세계적인 유명 기업들이 사용하고 있는 개발 언어입니다. 심지어 2021년 기준, 가장 인기 있는 개발언어 3위에 오르기도 했죠. 대체 이런 끝없는 인기의 이유는 무엇일까요?
그건 파이썬이 AI와 데이터 분석에 사용될 수 있는 언어이기 때문입니다. 파이썬은 웹 트롤링 같은 단순한 업무뿐 아니라 다양한 데이터들의 연관관계를 찾아내거나, AI를 개발하기 위한 데이터 마이닝 등 다양한 방식으로 응용될 수 있는 언어이기도 합니다.
다음 내용은 개발 프로그램으로 유명한 Jetbrains에서 발표한 파이썬 관련 통계자료입니다.
1. 웹 개발 / 49%
2. 데이터 분석 및 머신 러닝 (43%)
3. 크롤러, 스크랩, parsing (38%)
4. 자동화, 시스템관리 (30%)
많은 개발자들이 파이썬을 웹 개발, 데이터 분석 용도로 함께 사용하고 있으며, 이외에도 자동화 관련 용도로 사용하고 있다는 걸 알 수 있습니다. 다만 여전히 자바 (Java)가 더 중요하고, 파이썬을 함께 배우는 경우가 많다고 합니다.
개발자들에게 물어보면 파이썬은 다른 개발 언어에 비해 배우기 쉽다는 이야기를 하곤 합니다. 그러나 완전 생초보의 관점에서 바라보면 파이썬은 그렇게 만만한 언어는 아닙니다. 단지 다른 개발언어가 이보다 더 복잡한 과정을 거쳐야 하니 상대적으로 쉬운 언어라고 할 수 있다는 거죠.
예를 들어 은행 서비스가 있다고 해봅시다. 하루마다 금액을 입금하거나, 송금한 기록이 있고 현재 잔액을 확인하는 구조라고 했을 때, 이걸 프로그래밍으로 구현하려면 어떤 과정을 거쳐야 할까요? 파이썬은 여기에 대해 아주 간단한 해결책을 제공합니다.
물론 실제로 서비스를 만들어야 한다면, 좀 더 복잡한 단계를 거쳐야겠죠. 이번에는 좀 더 복잡한 서비스를 한 번 예로 들어볼까요?
단순 입출금 서비스에 비해, 코인거래는 좀 더 복잡한 구조입니다. 돈을 입금하고, 그걸 다시 구입한 날짜의 코인 가격에 맞게 계산을 해줘야 하죠. 이런 내용을 파이썬으로 구현해야 한다면 어떻게 해야 할까요?
위의 내용은 필자가 파이썬을 배운 지 이틀 만에 작성했던 내용입니다. 들어간 수식은 더하기, 빼기, 곱하기뿐이고 그 과정도 매우 단순합니다. 실제 서비스를 만들 때는 좀 더 복잡한 내용이 들어가겠죠. 그러나 머릿속에서 생각한 것을 손쉽게 구현하고, 실제 결과를 낼 수 있다는 것이 파이썬의 장점입니다.
개발언어는 결국 숫자와 문자, 명령어로 이뤄진 텍스트들의 뭉치입니다. 그리고 파이썬은 다른 개발 언어들보다 훨씬 단순한 구조로 만들어진 개발 언어죠. 그래서 만들려 하는 서비스의 정보구조만 정확히 정리할 수 있다면, 코딩하는 과정은 별로 어렵지 않습니다.
파이썬과 비슷한 자바 (Java)의 경우, 숫자 하나를 정리하는 데에도 네 가지가 넘는 타입이 있고 이걸 하나하나 정해줘야 합니다. 다른 명령어를 쓰는 과정도 마찬가지로 더 복잡합니다. 머릿속에서 생각한 걸 실제로 코드로 나타내는 과정이 복잡하니 배우기가 어려워지는 것이죠. 물론 코딩을 해본 적 없는 사람이라면 둘 다 어려운 건 마찬가지긴 합니다. 그저 상대적으로 파이썬이 더 쉬울 뿐이라는 것이죠.
지금까지 정리한 파이썬의 특징은 다음과 같습니다.
동시에 파이썬은 이런 문제를 갖고 있습니다.
다만, 단점에 속하는 부분은 전문적인 개발자분들에게 해당하는 부분이 많아서, 일반인 기준으로는 크게 문제는 되지 않을 듯합니다.
파이썬에 대해 좀 더 자세한 내용을 알고 싶다면, 다음 참고자료 등을 확인해보시면 좋습니다.
<출처 및 참고자료>
https://www.jetbrains.com/ko-kr/lp/devecosystem-2020/python/