파이썬(Python)은 1990년에 개발된 인터프리터 언어입니다.
암스테르담의 귀도 반 로섬(Guido Van Rossum)이라는 사람이 개발했다고 알려져 있고 이름은 좋아하는 코미디 프로그램에서 따왔다고 하네요. 굉장히 유쾌한 개발자인거 같습니다.
위에서 나온 '인터프리터'라는 단어는 생소하실 수 있을꺼 같은데, 인터프리터의 의미는 코드를 한 번에 한 줄씩 실행하는 프로그램을 말하는 것으로 컴파일러와는 대조적이며 고급 프로그래밍 언어는 대부분 인터프리터 언어로 되어 있습니다. 파이썬 언어를 제외하고도 인터프리터 언어의 종류로는 자바스크립트, SQL, Ruby, 스크래치 등 다양한 언어들이 있습니다.
인터프리터 언어가 점차적으로 많이지는 이유는 프로그래밍 언어의 설계가 쉬워지기 때문인데 이런 인터프리터 언어의 장점이나 반대로 단점이 될 수 있는 부분들은 다음에 자세하게 알아 볼 수 있도록 하겠습니다.
파이썬 개발 언어의 특징을 간단하게 살펴보겠습니다.
첫번째는 파이썬은 '상대적으로 배우기 쉬운 언어'입니다.
파이썬 언어는 '코드 간결하게' 구성되어 있습니다. 그리고 간결하게 구성된 코드는 객체지향 기반의 언어로 되어 있는 '쉬운 문법'으로 이루어져 있어 많은 사람들이 파이썬이라는 언어는 '공부하기에 굉장히 쉽고 빠르게 익힐 수 있다.'라고 말을 하고 있습니다.
사실 공부를 조금 해보고 느낀점이지만 파이썬이 정말 쉽고 간단하고 빠르게 배울 수 있다라고 하지만 제 개인적인 느낌으로는 파이썬은 다른 개발 언어에 비해 '상대적으로' 쉽다라는 것을 알고 시작하는 것이 좋을 것 같습니다.
개발을 간단하게라도 해보신 분들이 처음 접한다면 기존에 알고 있던 언어에서 간단하게 문법만 조금 변경되고 신경쓰는 부분이 조금 줄어들어 상대적으로 쉽다라고 느껴질 수는 있습니다.
하지만 처음 개발언어를 접하는 사람들에게는 마냥 쉽다고만은 느껴지지 않을 것 같다라고는 말씀드릴 수 없을 것 같습니다.
두번째는 '호환성이 좋다'라는 장점도 있습니다.
파이썬을 사용하다보면 다른 언어로 된 코드와 통합하는 경우가 가끔 생깁니다.
이런 상황에서 파이썬은 C 언어나 C++ 언어, JAVA 등 다른 프로그래밍 언어와도 쉽게 통합할 수 있는 환경을 가지고 있습니다. 이 부분에 대해서는 나중에 언어를 통합해서 사용하는 부분에서 한 번 자세하게 설명을 드릴 수 있지 않을까 싶습니다. (사실 저도 대학교때 C언어를 메인으로 파이썬을 서브 개발언어로 통합 과정을 해본 경험이 있지 지금은 저도 한 번 다시 해봐야 될 것 같습니다.)
그리고 세번째는 '오픈소스 기반의 개발언어로 라이브러리가 풍부'합니다.
오픈소스 기반의 개발 언어는 기본적으로 무료로 사용할 수 있다는 장점이 깔려있습니다. 거기에 다양한 라이브러리 역시 오픈소스로 많이 개방되어 있습니다.
사실 공부를 할 때는 라이브러리를 사용하는 것을 즐기지 않지만 시간이 급하거나 아니면 조금 더 화려하고 풍부한 효과를 가지는 서비스나 모듈을 만들때 라이브러리를 활용하는 것은 엄청난 장점들이 있습니다.
1차적으로는 개발 시간을 획기적으로 단축시킬 수 있고 기존 라이브러리를 변경하고 나에게 맞는 코드로 수정하면서 나만의 라이브러리도 만들 수 있습니다.
마지막으로는 '다양한 플랫폼을 지원'하고 있는 파이썬 언어는 윈도우, 리눅스 등 많은 플랫폼 환경에서 사용할 수 있도록 개발되어 있습니다.
파이썬 개발 언어는 현재에도 다양하게 사용되고 있습니다.
많은 분야에서 활용이 가능하지만 그 중에서 최근 가장 많이 사용되고 있고 우리가 익히 알고 한 번쯤은 들어본 분야라고 하면 단연 '웹 프로그래밍' 분야와 '빅데이터' 분야, 마지막으로는 '사물인터넷(IoT)' 분야일 것입니다.
'웹 프로그래밍'은 간단하게 게시판이나 방명록 같은 간단한 서비스부터 우리가 인터넷 브라우저로 사용하고 있는 실제 운영되고 있는 서비스까지 다양하게 개발되고 있습니다. 실제로 파이썬으로 개발된 웹사이트는 수도 없이 많다고 하고 생각보다 웹 프로그래밍에 굉장히 적합한 언어로 평가받고 있습니다.
'빅데이터' 분야에서의 파이썬 언어는 사실 언어 자체가 데이터 분석이나 처리에 적합한 언어는 아닙니다. 실제로 C 언어나 다른 언어를 사용하는 것이 데이터 분석이나 연산처리는 더 빠르고 좋은 성능을 보이는 것이 사실입니다.
파이썬 언어에 대한 장점이라기보다는 데이터 분석이나 복잡한 수치에 대한 연산 모듈을 제공하고 데이터 분석에 대해서 효율적이고 쉽게 처리할 수 있는 모듈이 제공된다는 점에서 초보자가 데이터 처리 분야를 쉽게 접할 수 있다는 장점을 가지게 하면서 많은 사람들이 이용하게 된 분야 중에 하나입니다.
마지막으로 '사물인터넷(IoT)' 분야에서의 파이썬은 아마 가장 익숙하게 활용되는 것이 '라즈베리파이'일 것입니다.
라즈베리파이는 잠깐 소개한적이 있었던것 같은데 리눅스 기반의 굉장히 저렴한 미니 컴퓨터라고 생각하시면 될 것 같습니다. 이 라즈베리파이를 활용하면 CCTV나 스마트 미러 등 다양한 프로젝트를 진행할 수 있게 도와주는 모듈입니다.
꼭 라즈베리파이를 파이썬으로 제어할 필요는 없지만 다른 언어에 비해 파이썬은 이 모듈을 제어하는데 굉장히 쉽게 도전할 수 있는 언어로 사용되고 있습니다.
그 외 다양한 GUI 기반의 프로그램 제작, 데이터 베이스 관리 등 다양한 분야에서 활용되고 그 분야가 점차적으로 늘어가고 있는 상황입니다.
앞으로 다양한 분야에서 활용되는 부분에 대한 기대로 인해 더 많은 개발자들에게 관심을 받고 있지 않나 싶습니다.
제가 파이썬을 선택한 이유 중에 가장 큰 부분은 이전에 말씀드린 부분과 같이 '배우기 쉽다'라는 점 때문이었습니다.
하지만 공부를 시작해보니 생각보다 그렇게 마냥 쉽지만은 않아서 다른걸 공부해볼까라는 고민을 잠깐했지만(이렇게 의지와 결심이 약합니다.) 파이썬이 현재 활용되고 있는 분야들을 찾아보고 실제 만들어진 프로그램이나 웹 서비스를 보고 나니 공부를 해야겠다라는 결심히 다시 좀 단단해졌습니다.
이전에 제 블로그의 다양한 부분을 보시면 알겠지만 욕심이 많아서인지 다양한 분야에 대한 공부를 계속해서 했었던것 같습니다.
파이썬 개발언어는 기존에 제가 했었던 사물인터넷(IoT) 모듈 만들기, 웹사이트 개발하기와 같이 개인 프로젝트부터 시작해서 현재 몸담고 있는 블록체인 분야에서의 활용까지 파이썬이 다양하게 활용되고 있습니다.
뭔가 모두 조금씩 다른 분야고 하나하나 새로운 것을 배울때마다 또 다른 새로운 것을 배워야된다는 부담감이 조금 있어 무엇을 시작하기에도 깊이 고민부터가 되었는데 파이썬 개발언어는 기본을 공부하고 나서 다양한 분야로의 활용 방법만 찾게된다면 하나의 언어로 다양한 분야에서 적용을 할 수 있지 않을까라는 생각을 가지게 되었습니다.
그리고 다양한 커뮤니티나 오픈소스 라이브러리에 대한 지원으로 앞으로 새롭게 생겨나는 다양한 분야에서도 그 활용성이 떨어지지 않을꺼 같다라는 생각에 이번에는 조금 진득하게 한 번 공부를 해보자 라는 결심으로 선택하게 되었습니다.
파이썬 시작하기 - Hello World! (1) | 2021.02.01 |
---|---|
파이썬 시작하기 - Visual Studio Code 한글 설정 방법 (0) | 2021.01.29 |
파이썬 시작하기 - 파이썬 설치하기 (1) | 2021.01.28 |
파이썬 시작하기 - 개발환경 Visual Studio Code 설치하기 (0) | 2021.01.27 |
파이썬 시작하기 (2) | 2021.01.25 |