파이썬의 특징
Programming/Python 2012. 11. 21. 03:13 |# 대화 기능의 인터프리터 언어
-> 파이썬은 객체지향 기능을 강력히 지원하는 대화형 인터프리터 언어다. 컴파일하고, 실행해 보고, 에러를 고치는 기존의 절차에서 벗어나 작성한 다음 바로 테스트하는 간단한 언어다. 따라서 테스트 과정이 크게 단축된다.
자바와 같이 바이트 코드를 생성하지만 명시적으로 컴파일할 필요도 없다. 그저 프로그램을 작성하고 수행하면 된다. 그러면 필요한 바이트 코드가 자동으로 생성된다.
# 동적인 데이터 타입 결정 지원
-> 파이썬은 동적으로 데이터 타입을 결정하므로 데이터 타입에 관계없는 일반화된 코드를 작성할 수 있다.
ex) def add(a, b):
return a+b
이렇게 작성하면 정수, 문자열, 리스트등 자료가 입력되었을 때, 그 자료에 맞는 +메쏘드 (C++의 operator+와 같은 것을 말하는 듯) 를 자동으로 호출한다.
또한 복잡한 형 선언이나 크기 선언을 해 줄 필요도 없다.
# 플랫폼 독립적 언어
-> 대부분의 운영체제에서 동작한다. 바이트 코드를 생성하므로 소스 코드 없이도 다른 컴퓨터에서 즉시 수행된다.
# 개발 기간 단축에 초첨을 둔 언어
-> 파이썬은 실행의 효율성보다는 개발 기간 단축에 초점을 둔 언어다. 실행 속도로 말하자면 어셈블리 언어를 제외하고는 C에 견줄 만한 프로그래밍 언어는 없다.
그러나, 실행속도가 조금 느리더라도 개발 기간을 단축할 수 있는 언어를 택할 것이다. 수행 속도 10분을 줄이기 위해 29일을 손해 볼 수는 없는 법.
# 간단하고 쉬운 문법
-> 파이썬은 begin ... end나 { }를 사용하지 않는다.
들여쓰기(Indentation)로 블럭을 구분한다. 프로그래머들에게 강제적으로 블록에 대한 줄을 일관되게 맞추어 프로그램을 작성하게 함으로써 프로그램의 가독성과 이해도를 높이고 있다.
# 고수준의 내장 객체 자료형 제공
-> 파이썬은 일반적으로 사용되는 리스트(List), 사전(Dictionary), 문자열(String), 튜플(Tuple) 등의 자료 구조를 제공한다.
# 메모리 자동 관리
-> 파이썬은 쓰레기 수집(Garbage Collection) 기능을 사용하여 필요할 때 메모리를 자동 할당하고 사용이 끝났을 때 자동으로 해제한다. 또한 필요에 따라 메모리를 늘리기도 하고 줄이기도 한다.
# 쉬운 유지 보수
-> 파이썬의 깔끔한 코드는 이해하기 쉬워서 코드의 유지 보수가 용이하다.
# 많은 수의 라이브러리 제공
-> 파이썬은 이미 만들어진 많은 수의 라이브러리를 제공한다. 정규식 매칭부터 네트워킹까지 원하는 웬만한 기능은 이 라이브러리에서 찾을 수 있다.
또한 서드파티에서 제공하는 수많은 외부 모듈이 있다.
# 짧아지는 코드
-> 파이썬은 일급 함수(First Class Function : 1. 함수 객체를 변수에 저장 가능 2. 함수에서 리턴값으로 사용 가능 3. 함수에 인수로 전달 가능한 함수) 를 지원하며, 다중 상속과 지연 바인딩 기능을 지원하는 객체지향 언어이다.
# 높은 확장성
-> 파이썬을 일명 접착제 언어(Glue Language)라고도 한다. 다른 언어나 라이브러리에 쉽게 접근해 그들을 사용할 수 있기 때문이다. 가장 보편적인 언어인 C와는 아주 잘 결합된다.
# 확장(Extending) 및 내장(Embedding) 가능
-> C 등 다른 언어에서 파이썬을 호출할 수 있고, 그 응용 프로그램에 내장시켜 사용할 수 있다.파이썬에서 C 모듈을 호출하는 것도 물론 가능하다.
'Programming > Python' 카테고리의 다른 글
파이썬의 keyword (0) | 2012.11.21 |
---|---|
파이썬 환경 변수 설정 (0) | 2012.11.21 |
리눅스에서 스크립트 실행하기 (0) | 2012.11.21 |
파이썬의 요소들 (0) | 2012.11.21 |
Python (0) | 2012.11.21 |