-
JS(자바스크립트)배우다가 C언어로 넘어간 이유.etc 2020. 4. 22. 18:11
6개월 남짓 웹개발 풀스택을 목표로 공부했다.
html, css를 거의 숙달했고 자바스크립트도 꽤 배웠다고 생각했지만 스스로 컴퓨터를 제대로 공부하고 있다는 생각이 들지 않았다.아마도 그 이유는 컴퓨터에 대한 기초지식이 없는 상태에서 당장 무언가를 만들기 위한 공부만을 했기 때문인 것 같다.
C언어 공부를 한 두달 정도 하다가 다시 친구 포트폴리오 사이트를 만드느라 웹개발을 했더니, 확실히 그 전보다 이해하고 만드는 느낌이 들었다.
만약에 전공자가 아니거나 컴퓨터에 대한 기초지식 없다고 느껴지면 C언어 같은 좀 더 컴퓨터에 가깝다고 하는 언어로 시작을 하거나 잠시라도 배워보는 것이 좋을 것 같다.
C언어가 어렵다고는 하지만, 나 같은 경우는 오히려 컴퓨터가 무엇인지, 어떻게 돌아가는지 등을 알 수 있어서 속이 시원했다. 그리고 고등학교 입학 이후 수학을 전혀 하지 않았지만 아직까지는 C언어 배우는 데 무리가 없다.
수학적인 사고가 필요한 것은 사실이라, 틈틈이 수학 공부도 하고 있다. 논리적으로 생각하는 게 재미가 없거나 적성에 안맞는 것만 아니라면 괜찮을 듯.
처음에 프로그래밍언어를 배우고자 생각을 했을 때, 직업 상담사분이 내가 미대를 나왔으니 프로그래머보다는 웹퍼블리셔를 하라고 했고 계속 나를 설득했었다. 그런데 일의 적성이라는 것은 배워보고 체험해봐야아는것이지 전공이 미술이라고 해서 프론트엔드, 백엔드 개발자가 되는 것보다 웹퍼블리셔가 되는게 더 맞을거라는 보장은 없다.
그때 아무래도 나는 수학도 못하고 백엔드가 더 어려울테니 일단 프론트엔드를 먼저 배울까했고 그럼에도 백엔드를 추후에 더 배우고 싶은 마음에 프론트와 백엔드 모두 활용할 수 있다는 자바스크립트를 선택하게 된것.
그런데 배워보니 C언어가 더 재밌다. 사실 처음에 자바스크립트 배울 때 보다 더 재밌는데, 이유는 C언어가 컴퓨터에 더 가까운 언어이기 때문에 뭉뚱그리는 것이 없고 컴퓨터 구조에 대해서도 자연스럽게 알게 되기 때문이다. 나는 아무래도 컴퓨터 지식이 없는 상태에서 javascript 먼저 배우게되면서(그것도 독학으로) 많이 답답함이 쌓였던 것 같다.
그걸 C언어 공부하면서 푸는 중인것같다.
그래도 javascript 공부했던 경험이 또 C언어 공부하는데 도움이 됐다. 이래서 개발자들이 새로운 언어 배우면 또 원래 다루던 언어들을 더 잘 이해하게 된다고 말하는 것 같다. 그런 것을 보면 컴퓨터 언어를 '언어'라고 부르는 이유를 알 수 있다.
나는 취미로 일본어를 배웠는데 그때 한국어 어휘가 늘었다. 그런데 너무 일본어만 공부하다보니 나중에 영어수업시간에 일본어로 대답을 한 적이 있다. 그런 오류도 컴퓨터 언어랑 비슷한 것 같다. 파이썬을 엄청 잘하고 C언어는 오래전에 배운 친구가 있는데, 내가 C언어에서 모르는 게 있어서 물어보면 혼자서 계속 헷갈려한다.
어쨌든... 나도 나중에 뭘 중점적으로 하게 될 지는 모르지만.. 너무 서둘러서 난 프론트엔드가 더 쉬울 것 같아 프론트엔드 할거야 라고 정하지 말고, 뭐가 됐든 공부를 조금이라도 해보는 게 좋을 듯하다.
나는 수학이나 컴퓨터에 자신이 없어서 C언어도 당연히 나한테 어려울 줄 알았는데, 수학적이고 논리적인 사고를 좋아해서 오히려 C언어가 더 잘 맞았다.
만약에 백엔드를 배우고 싶지만 잘할 수 있을까 자신이 없어서 고민하는 분이 있다면 일단 C언어 먼저 배워보시라고 권하고 싶다.
추천강의: “문제로 배우는 c언어”
추천사이트: "코딩도장[c언어]"
"모두의 코드[씹어먹는 c언어]"
추천도서: "열혈 c 프로그래밍"+(추가 2021.07.15) 제가 가장 추천하는 것은 문제로 배우는 c언어이고, 이후로 더 필요하시면 코딩도장, 모두의 코드 같은 사이트를 한번 쭉 보시고 따라서 코딩해보시기를 권장드립니다. 꼼꼼하게 자세히 배우고 싶으시면 열혈 c 프로그래밍 책도 추천합니다.
+(추가 2022.01.19) 가장 하면 안되는 공부법은 'JS를 제대로 공부하지 않은 채로 클론코딩 하기'인 것 같습니다. JS와 멀어지는 지름길입니다. 제가 처음에 JS를 그렇게 공부 했었는데.. 그 때 써본 프레임워크, 라이브러리가 많지만 하나도 기억에 남지 않았습니다. 그리고 이제야 다시 JS를 제대로 공부하고 있는데 컴퓨터와 조금 더 친해지고 보니 JS도 재미있습니다. 이 글에서는 뭉뚱그린다고 표현했는데, 그렇다기 보다는 깊이 들여다보아야 논리가 보이는 언어인 것 같습니다. 오히려 얕게 파면 작동 방식의 논리가 이해가 가지 않아 더 어렵게 느껴지는 듯 합니다. C언어가 거짓말 못하는 우직한 친구 느낌이라면 JS는 숨기고 있는 게 많은(?) 친구입니다. 여하튼 많은 컴퓨터 공학과에서 C언어를 1학년때 가르치는 것은 이유가 있는 것 같습니다. 저는 여전히 처음 배우는 언어로 C언어를 추천드립니다. C언어든 파이썬이든 JS든 컴퓨터를 잘 모르고 배우면 어려운 것은 똑같다고 생각합니다.
+ 뭐든지 쉽게 알려준다고 하는 유튜브 영상들은 얕기 때문에 별로 도움이 안되는 경우가 많습니다..
+ 풀스택이 되려고 했었다니😱 백엔드에 관심이 많은 프론트엔드..도 어렵지 않을까'.etc' 카테고리의 다른 글
코로나 시대의 개발자 : 집에서 공부하기 (0) 2020.08.28 42seoul와 리눅스의 pstree에 대한 글 (0) 2020.06.12 2진법, 8진법, 16진법, 10진법 (0) 2020.02.23 크리미널 마인드 - 페넬로피 가르시아 (0) 2020.02.20 개발자 손운동! 코딩하다가 중간중간 손 운동을 하자 (0) 2020.02.20