Python

Python 그게 뭔데, 어떻게 하는 건데?

다애루 2021. 4. 14. 19:04

 

 

 

 

파이썬은 프로그래밍을 처음 접하는 사람도 쉽게 배울 수 있는 인터프리터 언어로서,

빠르게 프로그램을 개발할 수 있다는 장점이 있다.

 

효율적인 자료 구조들과 객체 지향 프로그래밍에 대해 간단하고도 효과적인 접근법을 제공한다.

또한 파이썬의 표준 라이브러리는 매우 광범위하며, 다양한 기능을 제공한다.

라이브러리에는 일상적인 프로그래밍에서 발생하는 많은 문제에 대한 

표준적인 해결책을 제공하는 모듈(파이썬으로 작성)뿐만 아니라,  

파일 I/O와 같은 시스템 기능에 액세스하는 내장 모듈들이 포함된다.

 

+ 'Python' 이라는 이름은 <Monty Python's Flying Circus'> 라는 BBC 프로그램에서 유래한 것이다.

    (파충류와 연관 없음!)

 

 


 

Python의 공식 소개는 다음과 같다.

 

파이썬은 배우기 쉽고 강력한 프로그래밍 언어입니다.
파이썬은 효율적인 고수준 자료구조를 갖추고 있고 단순하지만 효과적인 객체지향 프로그래밍을 지원합니다.
파이썬의 우아한 문법과 동적 타입 체계는 인터프리터라는 특성과 더불어
파이썬을 대부분의 플랫폼 상의 여러 영역에서 스크립팅과 신속한 응용 프로그램 개발에 최적화된 언어로 만들어줍니다.

 

 

파이썬은 컴퓨터 프로그래밍 교육을 위해 많이 사용하지만,

기업의 실무를 위해서도 많이 사용하는 언어이다.

 

그 대표적인 예가 바로 구글(Google)이다.

구글에서 만든 소프트웨어의 50% 이상이 파이썬으로 작성되었다고 한다.

 

이외에도 네이버, 야후, 나사 인스타그램(Instagram), 드롭박스(Dropbox) 등의

회사에서 많이 사용되고 있는 개발 언어이다.

서비스를 예로 들자면 Youtube, Gmail, Google Maps 등의 백엔드 단에 사용되고 있다.

 

 

 


 

 

   파이썬의 특징   

 

 

1. 단순함

 

"어떤 문제를 해결하는 명확하고 유일한 해법이 존재한다"는

개발 철학을 가지고 있어, 매우 단순하고 간결한 문법 구조를 가지고 있다.

따라서 문법이 간결하고 가독성이 높다.

 

 

 

2. 배우기 쉽다.

 

위에서 말했다시피 코드가 간결하고

관련 커뮤니티나 도서가 많아 처음 접하는 사람도 쉽게 배울 수 있다.

 

 

 

3. 이식성

 

오픈소스라는 특성 때문에 여러 플랫폼에 이식되어 왔다. 

컴퓨터 이외에 아이폰, 아이패드, 안드로이드용 게임을 만들기 위한

Kivy 같은 플랫폼에서도 사용 가능하다.

 

 

 

4. 인터프리터 언어

 

인터프리터는 대화형 언어로서 사람들과 대화하듯이 사용할 수 있다.

기능에 대해 간단히 만들거나 간편한 계산이 가능하다.

따라서 인터프리터 언어인 파이썬은

컴파일과 링크 단계가 필요 없어 개발 시간을 단축할 수 있다.

 

 

 

5. 객체지향

 

파이썬은 절차지향 프로그래밍과 객체지향 프로그래밍을 지원한다.

객체지향 언어에서는 프로그램이 데이터와 기능을 결합한

'객체(object)'를 중심으로 만들어진다.

파이썬은 특히 C++나 자바 같은 규모가 큰 언어와 비교했을 때

강하면서 단순한 방법으로 OOP를 수행한다.

 

 

 

6. 폭넓은 라이브러리


 파이썬에는 "배터리 포함(Battery Included)" 이라는 철학이 있다.

정규 표현식, 문서 생성, 데이터베이스, 웹 브라우저, GUI 등을 비롯해

다른 시스템에 특화된 기능들을 구현하는 데 활용할 수 있다.

이러한 것들은 파이썬이 설치된 곳이라면 모두 이용할 수 있도록

풍부한 표준 라이브러리를 제공해주는데 

개발자는 효율적인 코딩과 개발이 가능하다.

해당 내용은 파이썬 공식 홈페이지에서 확인 가능하며,

무료로 이용하고 배포할 수 있다.

 

 

 

 


 

 

 

 

 

Youtube에 있는 <라인 개발자가 신입에게 추천하는 프로그래밍 언어 TOP4> 라는 영상을 보면,

라인 개발자 100명을 대상으로 질문을 한 결과  'Python'을 추천하는 이유로 다음과 같은 응답을 했다.

 

"알고리즘을 파이썬을 이용하면 더 알고리즘에 집중을 할 수 있는 느낌"
"머신러닝이랑 연동해서 사용"

"하나의 프로그램을 가지고 이드로 필요한 것들을 빨리 만들어야할 때 사용한다."
"복잡한 개발이 아닌 경우 가벼운 웹서비스, 자동화를 만들 때
REST 프레임워크 , Django 등을 쉽게 이용할 수 있어 프로토타이핑할 때 많이 사용한다."
"프로그래밍 언어의 만능 소스"
"커뮤니티나 책과 같은 참고할 만한 자료들이 많아 생각을 코드로 옮기기에 쉽다."

 

 

 


 

필자는 프로그래밍 입문을 Java로 했기에 

파이썬을 배웠을 때 입문했을 때보다 더 편했던 건 사실이다.

하지만 Java를 처음 배웠을 때를 생각하면 너무 어려워 포기하고 싶었을 때가 있었는데

입문을 Python으로 했다면 포기할 맘이 들지 않았을 것 같다.

(어떤 언어를 먼저 배울지 결정할 때 '난이도'적인 측면을 생각하면

각각 장난점이 있으니 본인의 성향에 따라 결정하는 것이 좋을 것 같다!)