Python 광선검 을 배우고 싶습니다.

vagabond20의 이미지

Embedded Art 라는 페북에 네가지 프로그래밍언어를 전투에 쓰이던 무기인 '검' 과 몽둥이에 비유해서 이렇게 올렸더군요.

제목은 "Choose Your Weapon..."

(1) C++ 중세 유럽기사들이 사용하던 묵직한 검
(2) Java 동양도 (또는 일본 사무라이 칼)
(3) Python 스타워즈에 나오는 광선검
(4) C (못이 박히고 피가 좀 묻은) 야구방망이/몽둥이

그리고 그 아래 리플을 보니 파이썬이 의외로(?) 많더군요.
물론 좀 연륜있어보이는 몇몇 사람들은 C 가 최고라고 합니다. 그리고 싫던 좋던 저 역시 주된 사용언어는 C 입니다. Java 가 두번째로 많이 사용하는 언어이고, C++ 도 던져주는 프로젝트를 무사히 마칠 수 있는 정도로는 안다고 생각합니다.

하지만, 저 광선검, Python 은 책만 사다놓고 건들 생각, 필요를 못느꼈었지요.
그런데 이처럼 바깥세상에 눈을 돌리니 Python 이 이미 주요한 프로그래밍언어로까지 올라가고 있다는 사실을 이제야 알게되네요. 50 을 훌쩍 넘긴 나이에 Java 도 하고 C++ 도 다룰줄 안다고 젊은 소프트웨어 엔지니어 못지않다고 '자만' 한게 부끄러운 순간이었습니다.

제 질문은 말입니다.
가장 빠르고 효율적으로 Python 을 익히고 싶은데, 어떤 방법이 가장 효율적일까요?
참고로, 저는 이 언어에 대해서는 전혀, 생짜 무식입니다.

36311의 이미지

(1) 저는 잘 아는게 하나도 없어서 그런지 비유들이 사실 잘 이해가 안가네요;;
애초에 비유한 대상들 차이가 뭔지부터도 직관적으로 이해가 안가요;;;

(2) 일반적인 개발자라면 Python 기본은 매우 빠른 시간에 습득 가능하다고 봅니다.
몇몇 오브젝트 특성과 조건문 루프문 이런거 보면 끝... 아닐까요?

(3) Python의 강점은 Portability에 있다고 생각합니다. 거의 모든 환경에 가장 빠르게 적용할 수 있는 것이 Python의 가장 강한 장점이라고 생각합니다. 애초에 컨셉도 Plain C로 만들어서 어디서든 컴파일 할 수 있는 스크립트 언어였죠. 그 한계 때문에 포기한 것들이 많다고 봅니다. 즉 언어 자체의 특성 때문에 배워야 한다기보다 널리 쓰이지 않는 기계에서 돌아갈 가능성이 가장 높은 언어이기 때문에 배워야 하는 언어라고 생각합니다;

Embedded Art라는 곳이 정확히 뭐하는 곳인지는 모르겠지만 역시 Embedded 환경에 Python을 가장 쉽게 가져갈수 있기 때문에 선호하는 것이겠죠.

* 포럼 주제와 무관한 신변잡기를 반복해서 올리지 맙시다.
* 질문 게시판 만이라도 익명 글쓰기를 막아야 한다고 생각합니다.

vagabond20의 이미지

사실 다른 사람들도 위의 비유에 대해 이해를 못하겠다는 반응을 보였고, 저 역시 완전히 이해 못하겠더군요. 상당히 주관적인 비유일것이라는, 그리고 이 포스팅을 한 사람이 아마 파이썬을 선호하는 사람일것이라는 추측같은것밖에 할 수 없었습니다.

제가 그 포스팅을 보고 '놀란것'은 파이썬의 위치가 어느새 저 경지에까지 올라왔나 하는것이었고, 전혀 모르던 Perl 을 하라니까 하다보니 전문가 아닌 전문가가 된것처럼 파이썬도 하면 되는지 의구심이 들었던것 뿐입니다. 36311 님 답글을 보니 그럴거라는 확신같은게 들기는 합니다. 몇몇 오브젝트 특성, 조건문 루프문, 이런게 사실 거의 전부지요. 하여간 답글 감사합니다.

겁내지 말고, 처박아 둔 파이썬 책 들고, 그냥 실무에 써 돌려보기로 작정해 봅니다.

여의도자바

36311의 이미지

한 10년 전쯤인가요? Perl vs. Python 구도로 이야기하던 때도 있었죠.

지금 생각해보니 서로 경쟁하는 언어가 아니라 용도가 완전히 다른 도구였던 거 같습니다.

당시만 해도 범용으로 쓸 수 있는 스크립트 언어가 몇 개 안 되다 보니 그런 비교를 하게 되었던 거 같습니다.

* 포럼 주제와 무관한 신변잡기를 반복해서 올리지 맙시다.
* 질문 게시판 만이라도 익명 글쓰기를 막아야 한다고 생각합니다.

bushi의 이미지

python 도 잘 모르고, 스타워즈의 광(선)검도 잘 모르는 사람이 쓴 글이거나 뭔가 비꼬기 위해 반어법으로 표현한 것 같습니다.

스타워즈의 광(선)검은 초보 사용자 스스로의 목을 베기 십상이고,
force 사용자가 아니라면 총맞아 죽을 뿐이기 때문에 신선들이나 사용하는 weapon 인데요.

제가 보기에... 스타워즈의 광(선)검에 비유할 만한 것은 shell script 가 독보적인 것 같습니다.
띄어쓰기 하나만 실수해도 rm -rf . /* 같은 지구멸망급 대재앙은 우습죠.

라스코니의 이미지

Python 은 잘 모르지만 아는 사람 입을 빌리자면 특정 분야에서 굉장히 편리하고 개발하기 쉽답니다. 특히 이미지 처리 분야에서 많은 부분 이미 라이브러리화 되어 있기 때문에 강력하다고 하네요.

Python이 광선검이라는 것은 너무 강력크 하기 때문에 붙인 것이 아닌가 싶네요. 광선검은 뭐든지 단번에 절단하는 용도외에는 용도가 없죠. 오로지 그 용도만 사용가능하죠. 초보나 실력자나 쉽게 쓸수 있으나 단지 그것 뿐인....

C 언어가 야구 방망이/몽둥이라는 것은 쓰는 사람에 따라서 단순히 위협용에서부터 궁극 해결무기도 될수 있는... 즉 내공 0 갑자부터 10 갑자까지 쓰는 사람의 능력에 따라서 달라지는 언어죠.

vagabond20의 이미지

소통이라는게 이렇게 중요하고도 재미있는거네요.
고국을 떠나온지 어언 20년이 넘으면서 표현방법이나 사용하는 단어, 생각 이딴게 20년전 시점으로 고정되어있었는데, 해 주시는 답글들 보면서 동포애 혹은 같은분야 종사자로서 동지의식을 느낍니다. 그리고 많이 배우게 되고요.
*
신변잡기 반복이 아니되게 여기서 줄입니다. 고맙습니다. ^^

여의도자바