파이썬(Python) - 왜 파이썬인가?

포도·2021년 7월 16일
0
post-thumbnail

파이썬을 배운지 2달 남짓되어 간다. 내가 파이썬을 선택한 이유는 사람들이 이 언어가 가장 user friendly 하고, 읽기 쉽고 쓰기 쉽다고 얘기 했기 때문이다. 왜 그럴까?

파이썬이 다른 언어들과 다른점이 무엇일까?

파이썬에서는 모든것이 객체다 (object). 파이썬은 객체지향 프로그래밍언어이다. 객체란 변수(variable)에 할당할 수 있고 함수(function)에서 인자(argument)로 사용된다

a = 10

a 라는 새로운 변수에 10을 저장해 줬다. a, 10 모두 객체다. 그리고 둘 다 function에 사용될 수 있다.

왜 객체지향 언어가 좋은걸까?

객체지향 언어는 추상화(abstration), 캡슐화(encapsulation)의 기능을 한다. 추상화는 복잡한 모듈, 시스템으로 부터 핵심적인 개념이나 기능을 간추려 내는것을 말한다. 캡슐화는 객체의 속성(attribute)과 행위(method)를 묶어서 어떻게 작동되는지를 보여주지 않는다.

[출처: 위키피디아](https://ko.wikipedia.org/wiki/%EC%B6%94%EC%83%81%ED%99%94_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99) (https://ko.wikipedia.org/wiki/%EC%BA%A1%EC%8A%90%ED%99%94)

무슨얘기지? 풀어서 생각해보자.

파이썬을 조금 써본 사람이라면 첫줄에 치는 코드는 라이브러리(library)나 모듈(module) 불러오기다(import). 일단 필요한것들을 다 불러와서 작업을 시작한다. 우리가 쓰는 라이브러리, 모듈들의 작동방식을 관련 코드를 완벽하게 이해하고 있는가?

No. 모듈들은 캡슐화 되어있다. 우리는 작동방식만 익히고 바로 사용한다. 모든 모듈의 코드가 실제로 어떻게 구현되고 있는지까지 보는 사람은 많지 않을것이다. 파이썬에는 수백개가 넘는 모듈들이 있다. 이런 기능이 있으면 좋을 것 같은데 생각하면 대부분 라이브러리에 있을 것이다. 매우 편리하다.

파이썬을 조금 배운 사람이면 클래스(class)도 배웠을 것이다. 클래스도 추상화와 캡슐화의 좋은 예다. 클래스를 한가지 만들어 놓으면 그 클래스를 상속받아 필요한 것을 추가하거나 고치고 삭제해서 자신만의 클래스를 만들어 볼 수도 있다. 하지만 내가 밑바닥부터 시작할 필요는 없다. 다른 사람이 만들어 놓은 클래스를 기반으로 하면 되니깐. 이부분은 다른 글에서 다루고 있다 ('클래스(class) 세번째 이야기. 상속(inheritance))

이렇듯 파이썬은 이미 복잡한 코딩으로 짜여져 있는 모듈들을 쉽게 가져와서 쓸수 있다는 점에서 매력있는 언어인것 같다.

profile
문과로 한평생 살다가 현재 펜실베니아 주립대 (University of Pennsylvania) 에서 Computer and Information Technology 공부하고 있습니다.

0개의 댓글