대부분 파이썬(python)은 소스코드 그대로를 실행해서 사용하는 것이 일반적이다.

그렇다면 가장 중요하게 생각해야 할 점은 이썬을 굳이 컴파일 해야 하는 이유는 무엇인가? 일 것이다.

C언어의 경우는 소스코드를 해당 시스템의 바이너리로 변환해주는 컴파일 과정을 반드시 거쳐야만 실행이 가능한 구조를 가지고 있다.

하지만 파이썬의 경우에는 시스템에 파이썬 라이브러리가 깔려 있다면 자체 인터프리터 프로세스 기능을 활용하여 소스코드 그 자체로써의 실행이 가능해 진다.

물론 이 과정에서 시스템은 이미 해당 바이너리에 일치하는 파이썬 라이브러리 모듈을 가지고 있기 때문에 바이너리가 틀려도 얼마든지 실행될수 있다는 장점을 가지고 있다.

하지만 프로그래밍을 한 번 이상 해 본 사람은 뭔가 애매모호한 파이썬의 결점에 대해서 생각해 볼 수 밖에 없어 진다.

바로 해당 시스템에 소스코딩에 사용된 임포트(IMPORT) 라이브러리와나 기존의 베이스 기반은 파이썬 모듈이 없다면...

이것은 매우 중요한 문제이다.

예를 들어 기초 파일시스템을 설계 할때나 즉 파이썬이 설치 되지 않은 상태에서는 해당 소스코드 파일이 실행이 불가능 하기 때문이다.

즉 그 자체로서는 소프트웨어가 될수 없는 반드시 부모 프로세스인 파이썬이 있어야만 실행이 되는 비운의 운명인 것이다.

일부 의견들 중에는 파이썬을 컴파일 하는 이유가 '암호화'의 목적이 있다고 하는 경우가 있는데 그것은 매우 비전문적인 의견 이라고도 볼 수가 있다.

컴파일의 목적은 암호화가 목적이 아니라 독자적인 아키텍쳐로써의 실행을 가능케 하기 위한 바이너리화를 그 목적으로 두고 있으며 컴파일된 파일은 아스키 문자와 16진수로의 리딩이 가능하다. 뿐만 아니라 C언어나 파이썬은 디컴파일러를 수행할수 있는 소프트웨어가 존재한다.

또 파이썬의 컴파일의 장점을 또 한가지 예를 든다면 예를 들어 똑같은 GTK+(Gimp tool kit for gui)를 수행하는 각각의 컴파일 된 C언어와 파이썬 파일을 보았을때 용량에서 부터 큰 차이를 가진다.

즉 파이썬이 C언어 보다 컴파일된 크기가 훨씬 가볍다.


그렇다면 다음 장에서 부터 직접 적으로 파이썬을 컴파일 해보도록 하자.




도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


+ Recent posts