brunch

You can make anything
by writing

C.S.Lewis

by 아무나 Feb 12. 2019

C언어를 배워보자 - 1. Hello world

평범한 인문대 졸업 직장인의 프로그래밍 고군분투기

*코드카데미에서 배워보았습니다 https://www.codecademy.com/ (무료였습니다)

*위의 과정을 선택한 것은 코드를 직접 쳐볼 수 있어 좋아 보인다는 개인적인 이유 때문이었습니다

*스폰이나 광고는 있을 리가 없습니다

*틀린 코드가 있거나 잘못된 부분이 있을지도 모릅니다 용서하세요!(코딩 1일 차입니다 칭찬과 가르침을!)



왜 코드를 공부하고자 하였을까?


컴퓨터 없이는 살 수 없는 세상이다. 

내 방에는 PC, 노트북, 아이패드, 아이폰 등의 다양한 전자기기가 널려있고, 그 전자기기를 돌아가면서 사용하다 보면 하루가 다 간다. (아침에 일어나자마자 누워서 핸드폰 보다가... 아이패드로 영상보다가... 불현듯 해야 할 작업이 있으면 노트북을 켰다가... 헤비하고 무거운 게임을 돌려야 하면 PC를 켜는 순서로)


현재 다행히 취직에 성공하여 평범한 사무직에 종사하고 있지만 이후 나이가 들었을 때도 이렇게 사무직으로 먹고살 수 있을지 미래가 불투명하다.


그래서 뭘 하고 살아야 오래오래 전문직으로 먹고살 수 있을까 찾아보다가 결국 이 세상은 날이 가면 갈수록 컴퓨터 판이되겠구나 싶어서 일단은 가벼운 마음으로 코딩을 공부해보기로 했다. 초등학생들도 코딩을 공부하는 세상인데, 이러다 나이 들면 코드를 모르면 한글 모르는 사람이 될 것 같기도 해서 말이다.




어떤 언어부터 시작해야 할까?



검색에 검색을 거듭한 결과 많은 사람들이 비전공자가 처음 코드를 시작할 때 파이썬(Python)을 추천하였다. 그래서 코드카데미의 파이썬 과정을 찾아보았는데 무료 버전의 레슨이 Python 2 과정부터 시작하는 것이 아닌가? (Python1 어디 갔어?!)

그래서... 까짓 거 뭐 2부터 하지 뭐 (무식하면 이렇게 용감합니다.) 했는데.. 옆에 C++ 언어 과정이 있었다.

코드에 대해서 아는 것은 없지만 어디서 주워듣기로...


프로그래머의 기본 소양은 뭐다! C다!

컴퓨터 공학과에 들어가면 뭘 배운다! C다!


이런 말도 이상한 구호가 머릿속에서 울려 퍼지는 바람에 나도 모르게 C++과정을 신청했다.


일단 무료니까! 

언제든 바꿔도 되니까!

뭐 일단 그냥 적성에 맞는지 한 번 해보는 거니까! 


도전!!



그리하여 C과정의 [1강. C의 역사와 Hello World]를 시작하게 된 것이다.




*참고*

코드카데미에는 유료버전(고급과정이나 패스웨이 제공, 더 많은 예시를 풀어볼 수 있음)과 무료 버전이 있다.

일단 나는 돈 내고 헬스장 안 가는 끈기 없는 부류의 사람 중에 하나이므로 바로 유료부터 지르지 않고 일단 규칙적인 공부로 무료 레슨을 몇 과정 성공적으로 마치면 유료를 결재하기로 마음먹었다.








1강. C++의 역사와 Hello World


왜 프로그래머들은 C를 배우나?


1979년도에 만들어진 C는 어디에나 이식 가능한, 다시 말해 훌륭한 낮은 단계(Low-level)의 언어로 활용도가 높다! 다시 말하자면...

= 빠르고, 유연하고, 잘 지원되고, 생각한 것을 그대로 구현 가능하다! (혹자는 마지막 이유 때문에 구현되어서는 안 될 것이 구현되기도 한다고... 장점인지 다시 생각해보자)



모든 코드의 시작은 "Hello world"부터!


예전에도 코드를 공부해보겠다고 갉작거렸던 시기들이 몇 번 있었다. 그렇게 코드 공부를 위해 책이든 강의든 첫 장을 펼치면 나오는 것은 항상 Hello world 였다. 왜 하필 Hello world 일까? 

프로시 작러인 나에게 왠지 Hello world는 너무나도 친숙한 문구였다.


익숙하지만 기억해두고자 코드를 복습 겸 작성한 코드를 가져와보았다.


#include <iostream>  //이오스트림이라는 라이브러리로 시작한다는 뜻일 것이다

int main()                     //메인 기능을 실행하고

{                                      //중괄호로 기능을 시작하고

  std::cout << "Hello World!\n";        // 세상을 향해 인사하고

 (std:: 이건 뭐지?)

 (여기서 cout는 "Character OUTput stream"의 약자이다. - 문자 내보내기)

 (<<는 이제 오른쪽에 실행시켜야 할 것이 나온다는 뜻이다)

 (; 땀은 끝났다는 뜻이다)

}                                      //중괄호로 기능을 끝낸다



이걸 실행시키면 아래와 같이 빠밤!


안녕 세상!(왈도체)


태초의 코드가 실현된다! 

일명 코드서 1장 1절 Hello world.



1강의 마무리


음? 벌써 끝이다.

코드카데미는 사람들의 집중력이 짧다는 사실을 잘 알고 아주 짧게 강의를 구성해 놓았다. 고마워!


강의 마지막에는 태초의 코드 hello world를 구현해본 사람들의 감성을 자극하는 "미래의 나에게 코드로 편지를 써보기" 코너가 있었다. 사실 아무거나 이를테면 "똥" 같은 걸 넣고 실행하면 레슨 통과지만 나는 문과 출신 아닌가! 나를 위한 편지라니 수줍게... 뭐 이런 걸 다...


편지라면 10장도 더 쓸 수 있어! 하지만 코드라면...




PS. 나는 늘 저 위의 letter.cpp의 확장자 .CPP가 무엇을 뜻하는지 궁금했었다.

그런데 알고 보니 내가 배우고 있는 코드 씨뿔뿔의 약자였다. (욕 아님)

당연한 것이었지만 충격적이었고, 무릎을 탁 치게 만드는 '이럴 수가'가 아닐 수 없다.





작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari