파이썬(Python) 기초 강좌를 시작하며 (Python 언어란?) : 기초부터 고급까지

금일부터 제가 예전에 잠깐 공부했었던 Python 언어에 대해 배워보도록 하겠습니다.
저도 기억을 되새길 겸 강의를 하면서 정리도 할 겸 좀더 심도있게 공부해볼 수 있는 좋은 기회가 될 것 같습니다.
제목은 기초 강좌이지만 제가 가볼 수 있는 최대치까지 강좌를 진행할 것이기 때문에, 초반에는 기초이겠지만 후반부에는 고급 수준까지 이어질 것으로 예상합니다.

Python 은 요즘 상당히 대세로 자리잡고 있는 것 같습니다. 스크립트 형식의 언어라서 배우기가 굉장히 쉬울 뿐만 아니라 C 나 C++ 로 구현할 수 있는 거의 모든 것들을 Python 으로도 구현할 수 있습니다. 제가 Python 언어라고 표현하였는데, C 언어나 Java 언어 등의 언어처럼 강력한 기능과 성능, 확장성을 두루 갖추었기 때문입니다.

Python 이 등장한 것은 꽤 오래전의 일입니다.
1991 년에 "귀도 반 로섬"이라는 한 개발자가 (1)플랫폼 독립적이고, (2)쉘처럼 인터프리터식이며, (3)객체지향적이고, (4)동적타이핑 대화형(실행시간에 자료형 검사) 언어를 개발하고 그 이름은 Python 이라고 지었는데, 그 이름은 귀도가 좋아하는 코미디 제목(Monty Python's Flying Circur)에서 따온 것이라고 하네요. ㅎㅎ
항상 생각하지만 개발자들은 참 재미있고 독특하고 의외로 철학적이며 고집있는 사람이 많은 것 같습니다. Code 를 봐도 그 사람의 인생관이나 철학을 엿볼 수 있을 정도죠. ^^

Python 은 배우기가 굉장히 쉽습니다.
프로그래밍에 대한 기초 지식을 가진 사람이라면, 몇가지 문법 사항들을 빠른 시간 안에 섭렵하고 곧바로 코딩에 들어갈 수 있을 정도입니다.
제가 Python 동영상 강의 몇 시간을 인터넷으로 듣고는 곧 바로 Socket 프로그래밍을 통해 간단한 Tool 을 만들어냈을 정도니까요.
물론 좀더 심층적인 기능 등은 매뉴얼이나 웹 Sample 을 찾아보면 됩니다.

쉘스크립트와 객체지향 프로그래밍에 대한 개념, C 에 대한 기본지식 정도를 이미 가지고 있다면 Python 은 정말 너무너무 쉽게 접근할 수 있는 언어입니다.
뭐 없어도 큰 상관은 없습니다.
만약 언어에 대한 기본지식이 없는 사람이라면 맨처음 Python 으로 공부를 시작해도 좋을 것입니다. C 나 C++ 처럼 끝없이 Low Level 로 파고들어야 하는 어려운 언어를 배우기 이전에 프로그래밍에 대한 기초지식을 Python 을 통해 배우는 것도 나쁘지는 않을 것 같습니다.

Google 이나 국내 유명 Portal 등에서는 이미 Python 언어를 이용한 다양한 프로젝트들이 진행되었습니다. 우리가 사용하고 있는 꽤 많은 웹서비스는 이미 Python 으로 구현된 것도 많다고 합니다.

Python 의 경우는 소규모 프로젝트를 단시간에 수행해야할 경우에 아주 적합한 언어라고 할 수 있습니다. 작성이 쉽고 인터프리터 방식이라서 작성하는 프로그램에 대해 바로바로 결과를 확인할 수 있기 때문입니다. (컴파일도 필요없죠.)

또한, 대규모의 프로젝트를 진행하기 전에 prototype 을 미리 작성해보는 도구로서도 손색이 없을 것 같습니다. 계획하고 있는 대형 프로젝트의 성공 가능성 여부를 미리 타진해보기 위해 Python 으로 단기간에 이에 대한 prototype 을 작성하여 분석해보는 것이 가능하기 때문입니다.

이처럼 Python 은 간결하면서도 확장성있는, 그리고 적당한 성능도 갖춘 아주 효율적인 언어입니다. 제가 적당한이라고 표현한 이유는 아마도 제가 일하는 분야가 Low Latency 를 중요시하기 때문일 것입니다. Python 이 아무리 뛰어난 언어라고는 하지만, micro 또는 nano 단위의 응답을 요구하는 시스템에서는 사용하기 어렵기 때문입니다.
하지만, 때에 따라서는 Python 에서 C 모듈도 이용가능하기 때문에 성능을 요구하는 부분과 그렇지 않은 부분을 나누어 개발하는 것도 한 방법일 것입니다.

자... 이렇게 아주 많은 장점을 지닌 Python...
다음 시간부터 우리 함께 신나게 배워보도록 하죠~ ^^

You may also like...

0 0 votes
Article Rating
Subscribe
Notify of
guest
6 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
ndlessrain

파이썬 공부중인 학생입니다.
실례가 되지 않는다면 제 공부 목적으로 퍼가도될까요?
문제가된다면 삭제하겠습니다 ㅠㅠ
http://leejungsoo.kr.pe

구름과비21

네… 상관은 없습니다.
다만 출처를 밝혀주시면 됩니다.
그런데, 공부 목적인데 왜 꼭 글을 통째로 copy 해서 자신의 사이트에 복사해 두어야할까요 ?
님 사이트를 방문해보니 모두 여기저기서 복사해둔 게시물로 꽉 차 있는 것 같은데…
그게 무슨 공부가 되는지 저로서는 잘…
혹시라도 자신의 사이트 방문횟수를 늘리려는 목적이라면 지워주시는게 예의일 것 같구요.
순수 공부 목적이라면 얼마든지 사용하셔도 좋습니다. ^^
재밌는 공부 되시길…
근데, 혹시 일베 회원 아니시죠 ?

ndlessrain

순수 공부목적이구요 ㅋㅋ 일베회원아닙니당..ㅠㅠ
중간에 포스팅이 끈기신거 같아 저도 추가적으로 좀 더 적어보려고 합니다.

ndlessrain

순수 공부목적이구요 ㅋㅋ 일베회원아닙니당..ㅠㅠ
중간에 포스팅이 끈기신거 같아 저도 추가적으로 좀 더 적어보려고 합니다.

ndlessrain

파이썬 공부중인 학생입니다.
실례가 되지 않는다면 제 공부 목적으로 퍼가도될까요?
문제가된다면 삭제하겠습니다 ㅠㅠ
http://leejungsoo.kr.pe

구름과ጆ

네… 상관은 없습니다.
다만 출처를 밝혀주시면 됩니다.
그런데, 공부 목적인데 왜 꼭 글을 통째로 copy 해서 자신의 사이트에 복사해 두어야할까요 ?
님 사이트를 방문해보니 모두 여기저기서 복사해둔 게시물로 꽉 차 있는 것 같은데…
그게 무슨 공부가 되는지 저로서는 잘…
혹시라도 자신의 사이트 방문횟수를 늘리려는 목적이라면 지워주시는게 예의일 것 같구요.
순수 공부 목적이라면 얼마든지 사용하셔도 좋습니다. ^^
재밌는 공부 되시길…
근데, 혹시 일베 회원 아니시죠 ?

6
0
Would love your thoughts, please comment.x
()
x