파이썬
파이썬(Python)은 1990년 네덜란드 암스텔담의 귀도 반 로썸(Guido van Rossum)이 개발한 객체 지향 스크립트 프로그래밍 언어이다. 별도의 컴파일 과정이 필요 없어 개발기간이 단축되고, 리눅스나 윈도우 등 특정 플랫폼에 의존적이지 않고 독립적이다. 주로 장고(Django) 프레임워크 기반으로 개발한다.
개요
파이썬은 1991년에 귀도 반로썸(Guido van Rossum)이 발표한 인터프리터 방식의 언어이다. 다양한 플랫폼에서 쓸 수 있고, 라이브러리(모듈)가 풍부하여, 대학을 비롯한 여러 교육 기관, 연구 기관 및 산업계에서 이용이 증가하고 있다. 실제 파이썬은 많은 상용 응용 프로그램에서 스크립트 언어로 채용되고 있다. 도움말 문서도 정리가 잘 되어 있으며, 유니코드 문자열을 지원해서 다양한 언어의 문자 처리에도 능하다. 파이썬은 기본적으로 해석기(인터프리터) 위에서 실행될 것을 염두에 두고 설계되었다. 파이썬을 주로 사용하는 대표적인 프로젝트는 인스타그램, 유튜브, 레딧, 비트토렌트나 드롭박스 등이 있으며, 프레임워크인 장고와 플라스크가 있다. 게임 쪽에선 월드 오브 탱크의 상당 부분이 파이썬으로 구현되어 있고, EVE 온라인이 Stack less Python을 기반으로 개발되었다. 프로그램 외적으로는 구글이 자체 언어인 Go로 넘어가기 전에 파이썬을 주력으로 사용하고 있었으며, 카카오가 파이썬 기반으로 유명하다. 파이썬은 다른 언어에서 사용하는 문장 부호 대신 더 적은 수의 구문 구조를 가지고 있다.
- Python is Interpreted: 이것은 인터프리터에 의해 실행 시에 처리되고 실행하기 전에 프로그램을 컴파일할 필요가 없다. 이는 PERL과 PHP와 유사하다.
- Python is Interactive: 이것은 실제로 직접 프로그램을 작성하는 파이썬 프롬프트를 통해 인터프리터와 상호 작용을 할 수 있다.
- Python is Object-Oriented: 이것은 객체지향 스타일 또는 개체 내에서 코드를 캡슐화하는 프로그래밍 기술을 지원한다.
- Python is Beginner's Language: 파이썬은 초보 프로그래머를 위한 훌륭한 언어이며 게임, 웹, 간단한 텍스트 처리에서 다양한 애플리케이션의 개발까지 지원한다.
배경
역사
파이썬은 1991년, 네덜란드 수학자 귀도 반로썸(Guido van Rossum)에 의해 개발되었다. 원래 파이썬이라는 이름은 그리스 신화에 나오는 뱀을 뜻한다. 귀도 반로썸(Guido van Rossum)이 파이썬이라는 이름을 붙인 것은 신화에 나오는 뱀 때문이 아니고, 자신이 좋아하는 코미디 프로그램" Monty Python's Flying Circus(몬티 파이썬의 날아다니는 서커스)"에서 따온 것이다. 프로그래밍 언어 중에서도 무척 오래된 포트란(Fortran)이 1954년에, 지금도 폭넓게 사용하는 C언어가 1972년에 공개됐다는 것을 생각하면 1991년에 나온 파이썬은 비교적 최신 언어라고 할 수 있다. 프로그래밍 언어에는 파이썬 뿐만 아니라 C, 자바, 자바스크립트 등 여러 가지가 있다. 하지만 그중에서 파이썬이 가장 널리 사용되고 있는 것으로 알려져 있다.
특징
파이썬의 주요기능은 다음을 포함한다.
- Easy-to-learn: 파이썬은 상대적으로 몇 가지 키워드, 구조가 간단하고, 명확하게 정의된 구문이 있다. 이는 비교적 짧은 시간에 언어를 선택할 수 있다.
- Easy-to-read: 파이썬 코드는 훨씬 더 명확하게 정의되어 있고 눈에 잘 들어온다.
- Easy-to-maintain: 파이썬의 성공은 소스 코드가 상당히 유지 관리가 쉽다는 데 있다.
- A broad standard library: 파이썬의 가장 큰 장점 중 하나는 UNIX, Windows 및 Macintosh의 플랫폼 위에서 매우 휴대하기 쉽고 크로스 플랫폼 호환이 되는 라이브러리가 대부분 존재한다.
- Interactive Mode: 코드의 테스트와 디버깅 그리고 결과를 터미널에서 바로 확인할 수 있는 상호 작용을 하는 대화형 모드를 지원한다.
- Portable: 파이썬은 다양한 하드웨어 플랫폼에서 실행되며, 모든 플랫폼에서 동일한 인터페이스를 가지고 있다.
- Extendable: 파이썬 인터프리터에 낮은 수준의 모듈을 추가할 수 있다. 이 모듈들은 자신의 도구에 추가하거나 수정해서 좀 더 효율적인 프로그래머가 되게 할 수 있다.
- Databases: 파이썬은 모든 주요 상용 데이터베이스에 대한 인터페이스를 제공한다.
- GUI Programming: 파이썬은 많은 시스템 호출, 라이브러리와 같은 윈도우 MFC, 매킨토시 및 유닉스의 X 윈도우 시스템과 윈도우 시스템을 만들어 이식할 수 GUI 응용 프로그램을 지원한다.
- Scalable: 파이썬은 더 나은 구조와 셸 스크립트보다 큰 프로그램에 대한 지원을 제공한다.
위의 언급한 기능 외에도 다음의 좋은 기능이 있다. 기능 및 구조적 프로그래밍 방법뿐만 아니라 OOP를 지원한다. 이는 스크립트 언어로 사용할 수 있고 또는 큰 응용 프로그램을 구축하기 위한 바이트 코드로 컴파일 할 수 있다. 매우 높은 수준의 동적 데이터 유형과 동적 유형 검사를 지원한다. 자동 가비지 컬렉션(GC)을 지원한다. 그것은 쉽게 C, C++, COM, ActiveX, CORBA 및 Java와 통합될 수 있다.
종류
활용
평가
각주
참고자료
- 〈파이썬〉 , 《위키백과》
- 〈파이썬〉 , 《나무위키》
- 〈[1]〉 , 《네이버 블로그》
- D.O의〈파이썬(Python)의 역사와 특징에 대하여〉, 《티스토리》 2017.07.23
- WikiDocs 〈파이썬이란?〉 , 《wikidocs》 2014.04.08
같이 보기