새로운 언어를 배울땐 어떻게 해야 할까요?

hmu5092의 이미지

파이썬을 공부하는데, C랑 그닥 다른게 없어 보이네요.
물론 자세히 보니 다른점이 많긴 하지만, "C에서는 이렇게 하면 되던데"라고 하면 대부분 다 에러없이 넘어가더군요.
그러다 보니, 딱히 새로운 언어를 배운다기 보다는 다 알고있는걸 또 하는 느낌만 들어서 계속 흥미를 잃어 버립니다.

새로운 언어를 배울때 어떤식으로 공부하시나요?

oppor의 이미지

완전히 새로운걸 하시면 됩니다.

lisp 추천드립니다. 헤헤.

emptynote의 이미지

하나의 언어 빠르면 2-3주면 문법 끝이지만 깊이는 10년이상 걸리는듯합니다.

저 같은 경우 자바 오래했지만 copy & paste 로만 작업하다 보니,

자바 동적 클래스에 대해서 지금에서야 눈이 떠지네요.

자바 쓰레드는 아주 오래 전에 접했지만,

여전히 쓰레드 세이프를 증명하는것은 자신이 없기에 무섭습니다.

제 생각에는 자신이 아는것을 명확하게 하기위해서는

개인 프로젝트를 목표로 정해서 실제 구현하시는것도 한 방법인듯합니다.

참고로 저두 c 언어 문법은 대충 알지만 수상작을 본 순간 나는 C언어를 모른다고 마법을 걸었습니다.

사이트 주소 : http://nanochess.110mb.com/tanks.html

netaz23의 이미지

저는 C언어 입문한 지 10년 넘었지만, 아직까지도 C언어를 잘 한다고 말을 못합니다.
학부과정 컴파일러 과목을 통해 ANSI C의 문법 중 일부를 제외한 C언어 컴파일러를 구현하였으나,
도저히 이해할 수 없는 것들이 많았습니다. 즉 C언어에 담긴 철학은 상당히 심오하더라구요.

결론은 C언어를 상당히 깊이 공부하시되, 다른 언어를 조금씩 친해지는 방법이 좋겠다고 생각합니다.
가장 우직하고 현명한 방법은 프로그래밍 언어론 교과서를 보시면 좋겠습니다. :)

정상인의 이미지

C언어가 아니라 C++을 쓰셨거나 C를 쓰시면서도 어떻게 객체지향 개념을 구현하셔서 쓰시던 고수분이시라면 괜찮겠지만 파이썬같이 OOP언어를 공부하실 때 C언어에 얽매여 계시면 오히려 안 좋은 영향이 옵니다.
실제로 C언어를 쓰시던 분들이 OOP언어를 배울 때 처음부터 배우시는 분 보다 오히려 언어를 재대로 익히지 못하시는 경향이 있습니다. 객체지향에 대해 이해하려고 하지 않고 기존에 짜던 대로 함수 위주나 순차적인 코딩을 하기 때문입니다.그래서 저는 엠베디드나 전자공학같이 처음부터 C언어같은 언어를 써야 할 필요가 높은 분야가 아니면 OOP언어를 첫 언어로 잡는 걸 권하고 있습니다.
물론 오래 하시다보면 결국 고쳐지지만, C언어에서 쓰던 방법이 비슷하게 된다고 안주하시면 그 발전이 심각하게 느려지게 됩니다.
제가 아는 교수님도 파이썬을 교육하실 때 비슷한 경험을 하셨다고 합니다. C언어를 어중간하게 접한 학생보단 차라리 프로그래밍을 모르고 온 학생들이 더 좋은 성적을 받는 경우가 많았다고 합니다.

february28의 이미지

배우실때 차라리 서투르드러도 번역된 문서를 보시는게 나을듯..
단,tcpl같은 옛날책은 빼고요...국산도 아주 정성들여 설명하는 책도 있긴하지만..
구지 체계화되어있는 좋은 설명문들이 있는데,구지 그런거 없는거는 볼필요가 없겠죠..
또한, 학자형이 아니면, 몸빵으로 익히는게 직빵입니다.
표준언어 지침?으로서 s...,e...,e...,같은 구성요소를 알면 배우기가 더 쉽죠...(이런건 국산책이아닌 외국책에 보면 어디나 나와있죠...)

--------------------------------------------------------------------------------
open source, open teaching, 천기누설이 꿈~ 은 개뿔...
--------------------------------------------------------------------------------

이응준의 이미지

파이썬으로 원하는 기능을 문제없이 작성하는 수준에 도달하셨다면,
이제는 좋은(읽기 쉬운, 빠른, 버그가 적은) 코드의 작성에 도전해 보시는 것이 어떨까요?

더 좋은 코드를 작성하겠다는 목적 의식을 갖고,
Language Reference를 처음부터 천천히 읽어보시기 바랍니다.

sykelos의 이미지

그냥 심심풀이로 python을 사용하신다면 C언어의 경험을 바탕으로 사용하셔도 좋습니다.

그러나 파이썬의 대가가 되려면 C언어의 습성을 버려야 할것입니다.

파이썬은 파이썬만의 고유한 철학이 있고 그 철학은 C언어와 분명히 다릅니다.

C언어에 기댄채 파이썬 경험을 쌓으면 분명 그렇지 않은 경우와 다른 결과를 얻게 될겁니다. 물론 본인은 의식하지 못하겠지만요.

winner의 이미지

프로그래밍 언어의 달인
http://agile.egloos.com/5664879

그런데 이것조차도 말은 쉬운데 해낼 수 있는 사람은 많지 않다는 것은 좀 함정이예요.
공부의 왕도는 없다는 말이 다시 한번 떠오릅니다.