다들 Python에 열광하는 이유, 그리고 당신은 그러지 말아야 할 이유

Python 이라는 언어를 들어보셨나요?
python은 요즘 굉장히 인기 있는 프로그래밍 언어입니다. 계속해서 상승세를 타고 있는 언어죠. 이렇게 인기가 많은 이유가 뭘까요?

장점

  1. 초보자들에게 친절한 언어 python을 조금만 사용해도 알 수 있습니다. '정말 쉽다!'
    코드가 사람이 읽기 쉽고, 공부하는 과정에서 찾는 커뮤니티들 역시 친절합니다. 모르는 게 있으면 조금만 찾아도 금방 해결법을 발견할 수 있죠.

C의 경우

    #include <stdio.h>
    int main() {
        printf("Hello world");
        return 0;
    }

python의 경우

    print("Hello world")

Hello world를 출력하는 코드입니다. 한눈에 봐도 python이 훨씬 머리아플일이 없죠.

  1. 데이터 타입을 정할 필요가 없는 언어 데이터 타입은 정수형/소수형/True or Falsse/문자열 등등의 타입을 말합니다.
    예를 들어 우리가 정수형 변수 를 선언하면, 그 변수에는 정수만 담을 수 있고, 문자열형 변수 를 선언하면 그 변수는 문자열만 담을 수 있는 거죠. 다른 언어들은 대부분 그런 데이터 타입을 설정해 주어야 하지만, python은 데이터 타입을 알아서 분류해줍니다.

  2. 다양한 패키지 python은 패키지가 정말정말 많습니다. 여기서 패키지는 다른 사람들이 작성한 소스코드를 말합니다. 여러 수학 공식을 풀 수 있는 패키지부터 AI를 위한 패키지, 빅데이터 분석을 위한 패키지 등 대부분의 기능들이 패키지로 있습니다. 굳이 코드를 작성하지 않아도 패키지를 다운받고 불러오면 원하는 기능을 완성할 수 있습니다.

이밖에도 절차지향/객체지향 프로그래밍이 모두 가능하다던가 등의 장점이 많습니다.

그렇다면 왜 우리 unibook은 python에 너무 열광하지 말라고 하는 건지 이야기해보겠습니다.

단점

우선 python은 속도가 굉장히 느린 언어 입니다. 위에서 python은 데이터 타입을 알아서 정해준다고 말했는데, 그 일이 속도를 느려지게 만들죠. 물론 그렇다고 해서 속터지게 느려진다거나 하는 일은 웬만하면 없을테지만, 데이터 타입을 지정하느냐 마느냐의 문제로 속도 성능을 포기하기에는 많이 아까운 문제입니다.

그 외에도 여러분들이 앞으로 C나 java와 같은 다른 언어들로 프로그래밍을 하면서 해당 언어가 가진 수많은 기능을 사용할 것입니다. 하지만 python의 경우 입문자들에게 쉬운 언어인 만큼 세밀한 부분을 건드리기에는 너무 자동화 되거나 생략된 문법들이 많다는 것을 느낄 수 있습니다.

물론 여러분이 python을 사용하면서 직관적인 코드와 다양한 패키지와 같은 장점에 맞는 프로그래밍을 할 수도 있습니다. 하지만 처음 막 프로그래밍을 시작했을 때, 단순히 시작이 쉽다는 이유만으로 python에 너무 큰 기대를 걸거나 하지 않았으면 하는 생각입니다.

모든 언어들은 개발상황에 따라 장단점이 있고, python 역시 그런 언어들 중 하나일 뿐이라는 사실을 기억합시다.