- 14
- NoYeah
- 조회 수 1313
프로그램이라고는 25년전 c++로 include <studio.h> (맞나?) 정도만 배웠는데
또 새롭게 뭔가 공부하고 싶어서 코딩을 배워보려고 합니다.
기초 지식이 전무한 상태에서 PHP의 경우 독학으로 공부하게엔 조금 어려움이 있길래, 좀 더 쉬운 언어를 습득하고 난 후 점차 난이도를 올려보고자 합니다.
대부분의 프로그래밍 언어는 클틀에서는 대동소이 한것같아서 얼마전 @도토리묵님 이 추천한 GO 를 배우려고 공부를 시작하였습니다.
사실 다른 언어를 한번도 공부한 적이 없어서 GO 언어가 편한지 잘 모르겠습니다. ㅎㅎ
(변수 지정등등 편해보이는 것들이 있지만 체감을 해보질 못해서...ㅋㅋ)
다들 파이썬 파이썬 하고 많이들 사용하기도 하며, 무엇보다 스포어에서 궁금한 부분을 질문하면 좋은 대답을 얻을 수 있을 것 같아 파이썬을 배워 볼지, Go 를 배워볼지 고민중입니다.
완전 초보자이기 때문에 쉬운 언어를 배우고 싶지만 들어보니 GO 가 조금 더 쉽지만 파이썬도 그에 못지 않게 쉽다는 말을 들었습니다.
일단 인터넷을 통해 기초를 다지고 (파이썬의 경우 생활코딩, GO의 경우 golang.site 통해) 본격적으로 책을 통해 공부를 해볼 생각입니다.
처음 배우는 입장에서 두개 모두 배우는 것은 무리일것 같고, 어느 언어를 먼저 배우는게 더 재미있을지 추천 바랍니다!!
작성자
댓글 14
아무래도 도서 자체도 go보다는 python이 훨씬 많다는 점도 그렇습니다.
(댓글 쓰려고 로그인했는데)
https://wikidocs.net/book/1
여기 들어가시면 볼 수 있는 점프 투 파이썬이 아주 명작입니다.
생활코딩 강의를 기반으로 이 책을 부교재삼아 쓰시면 될 것 같습니다.
(저도 구글로 배우는 파이썬 책을 메인으로, 점프투 파이썬을 부교재로 사용중입니다. 특히 정규식 부분이 전 맘에 들더라고요.)
오오~ 저도 이 책 추천드립니다~!
책을 구입할 필요없이 홈페이지를 교재로 삼으면 충분하더군요 ^^
전 고빠돌이라서 고를 배우라고 밖에는 말씀을 못드리겠습니다만, 기능면에서는 파이썬이 더 좋기는 하죠.
그런데 고는 초보자에게도 정말 쉽고 장점은 구글이 개발중이라는거죠.
+ 속도면에서도 느려터진 파이썬보다 상당히 우위를 점하고 있습니다.
솔직히 속도 이슈를 비교하기는 어렵다고 생각합니다..
애초에 go는 컴파일 언어이고 python의 경우 인터프리터 언어니까요.
그리고 pypy를 사용하면 어느 정도 속도 이슈는 커버가 가능합니다. 또한 numpy와 같은 모듈들이 c나 c++로 포팅이 되어 있어서 모듈만 잘 사용하더라도 속도적인 이슈 문제는 어느 정도 해결할 수 있습니다.
제가 사용해보지는 못했지만 Cython도 C언어 코드를 접착할 수 있어서 굉장히 빠르다고 하더군요 ^^
(humit 님께서는 Cython에 대해서도 잘 아실 것 같아서 말씀드립니다여쭤봅니다)
그럼 즐거운 주말 되세요!!
Cython은 써보지 않았네요 ㅎ...
저는 Go 추천합니다.
관련 글 하나 쓰고 있었는데 빨리 올려봐야겠군요.
스포어에 전공자와 현업 개발자분들도 계시는데 감히 제 생각을 말씀드리기 조심스럽지만, 저는 다른 분들과 생각이 조금 다릅니다.
어떤 언어를 전업 개발자 수준으로 학습하는 것과, 대략적으로 문법을 이해하고 구글링 후 복붙해서 사용하는 것은 결코 같지 않다고 생각합니다.
저는 개인적인 사정으로 골프를 여러 곳에서 배우다가 그만두는 것을 반복했습니다 ㅠㅠ
과거에 JLPGA에서 뛰었던 프로는 유소년 운동선수들이 배우는 것처럼 장기간의 정석적인 가르침을 했던 반면에,
다른 곳에서는 급하게 필드에 나가야 한다고 부탁을 했더니 3주만에 속성으로 가르쳐주기도 했습니다.
이처럼 목적에 따라 학습의 방법과 강도는 전혀 다를 수 있고, 이는 단순히 양적인 차이가 아니라 본질적인 차이라고 생각합니다.
오늘날 많은 사람들이 파이썬을 학습하는 이유 중에 하나는
물론 파이썬이 상대적으로 학습하기에 수월한 점도 있지만,
개발자가 아닌데 파이썬을 공부하여 꾸준히 사용하시는 분들을 보면
파싱, 통계, 업무 자동화 등 특정 목적을 위해 파이썬 공부를 시작하신 분들이 많습니다.
그런데 마스터 님께서 이런 목적이 아니시라면 굳이 파이썬을 학습하실 필요는 없다고 생각합니다.
이처럼 마스터 님께서 목표로 하시는 정도가 전업 개발자 수준으로 학습하는 것이 아니고, 다루실 분야가 웹 개발 위주라면
PHP에 대해서만 공부를 하셔도 충분할 것 같습니다.
1) 독학으로 (책을 통해) PHP를 배우는 것은 어렵다고 말씀하셨지만, 현재는 PHP에 대한 좋은 무료 인강이 많이 나와있습니다.
2) 동의하지 않는 분도 계시겠지만 개발자 수준으로 공부하는 것이 아니라면 PHP가 다른 언어에 비해 굉장히 난해하다고 보기는 어려울 것 같습니다.
3) 어정쩡하게 하나의 언어를 배우고 다른 언어로 갈아타면 시너지 효과보다는 리버스 시너지 효과가 더 큽니다.
(하나에 집중하지 못해서 진도가 많이 나가지 못하고, 오히려 두 언어 사이에 헷갈리는 부분이 발생합니다)
물론 유튜브의 왼손코딩 같은 인강을 한 차례 듣고 실습을 하는 정도로는 'hello world!'에서 한발짝 더 나간 수준에 그칠 것이고
이후 공백기간이 있으면 다시 'hello world!' 수준으로 퇴보하게 될 것입니다 ㅠㅠ
하지만 마스터 님께서는 스포어나 XE타운에서 꾸준히 활동하시기 때문에 퇴보하실 걱정은 안 하셔도 될 것 같습니다 ^^
이 글은 좋은 충고가 되겠네요.
코딩의 지식이 전무한 상태이기 때문에 php 를 야매로 수정할 땐 각 의미를 파악해야하는게 먼저 였습니다.
불과 1-2년전까지만해도 == 과 != 과 && 나 || 의 차이를 전혀 모르는 상태이기도 했으니깐요.
하나라도 제대로 코딩을 배운다면 프로그래밍을 하는 알고리즘의 큰 틀은 비슷할것이라고 생각됩니다.
그래서 하나의 언어를 제대로 배운뒤 차근차근 영역을 확장해야겠다 생각한겁니다.
그래도 현업으로 뛰기 위해 배우는 것이 아닌 단순 취미가 되기 때문에 용두사미가 될 가능성은 크긴하지만 진입 장벽이 낮은 프로그래밍이라면 자신감이 붙어가지 않을까합니다.
다행히 대학교까지 전공 특성상 공업 수학, 이산 수학까지 배운것을 다행으로 생각하고 있습니다. 이것저것 살펴보니 수학적 집합론이 잘 잡혀있으면 좋을 것 같더라구요.
제가 알고리즘에 대해 정식으로 공부한 것은 아니지만
말씀하신대로 알고리즘이란 큰 틀을 놓고보면 언어에 따라 큰 차이가 있다고 생각하지는 않습니다.
COS Pro 같은 코딩 시험도 C, Java, Python, C++ 이 4개 언어로 치뤄지지만 알고리즘만 놓고 보면 큰 차이는 아니죠.
적절한 비유인지는 모르겠지만 외국어 중에 포르투갈어를 잘 하면 스페인어를 배우지 않고도 80% 이상 이해할 수 있지만,
포르투갈어를 잘 한다고 반드시 중국어를 잘 할 수 있는 것은 아니죠.
하지만 포르투갈어를 어느 수준 이상으로 공부하면 적어도 외국어를 공부하는 방법론을 체득하여 다른 언어도 쉽게 배울 수 있을 것입니다 ^^
제가 Go 언어에 대해서는 잘 모르지만 while문이 없고, for문으로 이를 대체하는 것으로 알고 있습니다.
반면 파이썬에서는 while문과 for문이 모두 있지만, 파이썬의 for문은 PHP의 foreach문에 가깝죠.
PHP에는 전통적 의미의 for문과 while문이 모두 있구요.
이런 차이가 크냐 작으냐, 또는 하나의 언어를 익히면 다른 언어에도 상대적으로 쉽게 적응하는지 여부는 개인차가 있을 것 같습니다.
PHP도 파이썬과 마찬가지로 인터프리터 언어이고
파이썬 못지 않게 구글링을 통해 많은 자료를 얻을 수 있습니다.
Stackoverflow에서 검색하면 제가 부딪힌 문제나 고민의 대부분을 이미 누군가는 겪어봤다는 것을 확인할 수 있구요.
그리고 제가 여러 언어를 다뤄본 것은 아니지만
PHP가 일부 문법에서 Perl의 영향을 받았고, <?php ~ ?>로 스크립트 영역을 선언하는 것 이외에 고유한 특징이 강한 언어는 아닙니다.
(물론 PHP가 잘 설계된 언어가 아니라는 것은 통설적 평가입니다 ㅠㅠ)
반대로 파이썬의 들여쓰기 등 엄격한 문법이 언어 중에서 뉴트럴하다고 보기도 어려울 것 같습니다.
저는 그런 점에서 파이썬을 거치지 않아도 개발자가 아닌 목표수준의 PHP 학습에는 큰 장벽이 있다고 생각하지 않습니다.
어느 학문이나 논리의 영역을 벗어날 수는 없지만 논리학(말씀하신 집합론을 포함하는 더 큰 범주입니다)이 코딩에 도움이 되더군요.
결론적으로 마스터 님께서는 논리적이신 분이고, 이미 HTML과 CSS를 잘 다루시기 때문에 PHP도 금방 익히실 것 같아요 ^^
사실 공부에 있어서 사전에 무엇을 알고 무엇을 습득하고 있는 상태이냐보다 얼마나 더 절실하게 공부하느냐가 중요한것 같습니다.
확실히 논리학이 코딩뿐 아니라 사람의 삶에서 중요한 부분을 차지하는 것 같습니다.
학창시절 존재의 이유를 모르던 철학, 인문학, 논리학 등이 나이를 먹고 나니 인간의 됨됨이를 결정하는 가장 중요한 요소가 아닌가 싶습니다.
인간의 삶을 결정하기 때문에 인간이 하는 모든 일의 근본이 되는 학문이되고 코딩도 마찬가지 인것 같습니다.
이니스프리님 덕에 좀 더 큰 틀에서 무엇을 공부하느냐 보다 얼마나 열심히 공부를 할 것인가를 먼저 고민해보는 계기가 되었습니다.
감사합니다.
우연히 저도 요새 논리학 서적을 읽고 있는데요~
특히 현대논리학 파트(ex. 양화)를 읽으면 머리에 쥐고 나더군요 ㅠㅠ
(그렇다고 다른 파트가 이해하기 쉽다는 의미는 절대 아닙니다 ㅜㅜ)
철학과 논리학 등을 포함한 인문과학의 중요성에 대한 마스터 님의 말씀에 크게 공감합니다.
예전에 굉장히 친했던 친구가 미학을 전공했는데
특히 미학과 관련된 글을 읽으면 제가 얼마나 무식하고 생각없이 여태껏 인생을 살았는지 반성을 하게 되더군요.
절실함은 공부뿐 아니라 인생의 모든 순간에 중요한 것 같습니다.
스포츠나 국가 간의 전쟁도 그렇지만, 결국 끝까지 포기하지 않고 최선을 다하는 것이 우리가 할 수 있는 전부인 경우가 많다고 생각합니다.
이 문단을 작성하는 지금 이 순간에 제 스스로 굉장히 반성하게 되네요 ㅠㅠ
저야말로 마스터 님께 늘 많이 배우고 항상 감사드리고 있습니다 ^^
파이썬이 쉽고 많이쓰이지 않나용??