본문으로 바로가기

[파이썬 기초] 파이썬(Python)의 특징

category Python 2017. 10. 10. 21:49

파이썬3 바이블 책을 구입하여 파이썬 기초문법을 다시 공부하면서 블로그에 학습 내용을 정리하고자 한다. 

아주 기초적인 수준부터 차근 차근 정리해 나갈 예정이며, 필요에 따라 학습 내용 중 중요한 내용만을 요약하여 포스팅 글을 기록할 예정이다. 



* 파이썬 프로그래밍 언어의 특징


1. 대화식 인터프리터 언어

  - 파이썬은 객체지향을 지원하는 대화식 인터프리터 언어이다. 컴파일 과정이 필요하지 않으며 코드 작성 후, 바로 실행이 가능한 형태의 언어이다. 

  - Java와 같이 바이트 코드를 생성하기는 하지만 직접 컴파일을 수행하는 과정이 필요하지 않다. 

  - 인터프리터 모드와 에디트 모드를 지원한다. 


2. 동적 자료형 지원

  - C, Java 처럼 데이터의 자료형(Type)을 직접 선언하지 않아도 되는 동적 자료형 기능을 지원한다. 

  - 즉, 변수 이름 선언 후 할당되는 데이터에 따라 동적으로 자료형을 인식한다.


3. 플랫폼에 독립적

  - 운영체제의 종류에 종속되지 않고, 다양한 플랫폼에서 실행될 수 있는 언어이다. 

  - 이를 플랫폼 독립적이라 표현한다. 


4. 개발 기간 단축에 초점을 맞춘 언어

  - 실행의 효율성 보다는 개발 기간 단축에 초점을 둔 언어이다.

  - 실행 성능 최적화 보다는 단기간에 프로토타입을 개발한 뒤, 차차 성능을 개선해 나가는 방식의 언어이다. 


5. 간단하고 쉬운 문법 

  - C, Java 등의 컴파일 언어 보다 간결하고 배우기 쉬운 문법을 갖고 있다. 

  - 변수 Scope의 경우 들여쓰기(Indentation)로 구분한다는 점이 기존의 다른 언어들과 차이가 있다. 


6. 고수준의 자료형 제공 

  - list, dictionary, tuple, set 등 다양한 자료구조를 기본적으로 지원한다. 

  - 이러한 자료구조를 통해 데이터를 유연성 있게 저장하고, 처리할 수 있다. 


7. 자동 메모리 관리 

  - Java와 같이 Garbage Collection 기능을 제공하여 메모리를 자동으로 할당하고 메모리 사용이 끝나면 자동으로 해제한다. 

  - 필요에 따라 메모리의 크기는 동적으로 변화될 수 있다.


8. 팀 단위 작업에 유용 

  - 모듈 단위의 코드 작성이 쉬워 팀 단위로 모듈을 구현하는데 효과적이다.


9. 쉬운 유지 보수 

  - 코드에 대한 이해가 쉬워 유지보수 또한 용이하다. 

  - 개인적인 생각이지만 주석(Comment)이 잘 작성되어 있어야 어떤 언어든 유지 보수가 용이하다.  


10. 다양한 라이브러리 제공

  - 파이썬은 수많은 라이브러리를 제공한다. 

  - 수학, 네트워크, 웹, 인공지능 등 다양한 분야의 검증된 라이브러리를 통해 효율적인 프로그래밍이 가능하다. 


11. 코드의 간소화 

  - 컴파일 언어에 비해 상대적으로 코드가 간결하고, 짧다. 

  - 코드가 짧다고 무조건 좋은 것은 아니겠지만 확실히 생산성 관점에서 보면 우수하다.


12. 높은 확장성

  - 파이썬은 Glue Language라고도 한다. 즉, 다른 언어나 라이브러리에 쉽게 접근하여 사용이 가능하다. 

  - 예를 들어 대부분의 코드는 파이썬으로 작성한뒤 고속으로 처리되어야 하는 부분은 C, C++ 등으로 작성된 라이브러리를 활용하여 속도 이슈를 해결할 수 있다. 


- 출처: 파이썬3 바이블, 이강성 - 





덧) 어떤 분에게는 도움이 되셨길 바라며 배우는 과정이기에 잘못 작성된 정보가 있다면 덧글로 남겨주세요. :-) 

'Python' 카테고리의 다른 글

Python 예약어 확인 방법  (0) 2017.10.11
Python PEP8  (0) 2017.10.11