본문으로 바로가기

파일의 IT 블로그

  1. Home
  2. 프로그래밍 강좌/C
  3. [C언어 강좌] #20 강의를 마치며 ~ (완)

[C언어 강좌] #20 강의를 마치며 ~ (완)

· 댓글개 · KRFile

안녕하세요 파일입니다. 본 글은 2019년 호기롭게 시작한 C 프로그래밍 강좌의 후기 편입니다.

글을 너무 게을리 쓴 탓에 2년이 넘는 시간 동안 연재를 했습니다만 이 강의도 일종의 프로젝트였기에 완수한 성취도가 매우 높습니다 ㅎㅎ.

 

이 부분은 제 개인적인 이야기들이니 강의를 다 보신 분들은 궁금하지 않으면 안 보셔도 됩니다.

 

~BGM

https://www.youtube.com/watch?v=jwJfXVwRYW0 

 

 

이 강의를 쓰게 된 이유

이 강의를 쓰게 된 이유는 박정민님의 저서인 '열혈강의 C언어 본색' 때문이라고 해도 과언이 아닐까 싶습니다.

 

컴퓨터를 가지고 노는게 너무 재밌었던 저는 초등학교 6학년 때 나만의 프로그램을 만들고 싶어 프로그래밍 카페를 수소문했고, 프로그래밍의 기초가 C언어라는 말을 듣게 되어 맨땅에 박치기로 이 책을 우선 샀습니다.

 

제가 신동이고 멘사에 들어갈 정도로 IQ도 높았다면 초등학교 6학년 때 C언어를 진작에 떼고 TV에 출현했겠지만 아쉽게도 그렇지 못했습니다.

 

제가 공부를 본격적으로 시작한건 고등학교 때라서, 당연히 초등학생 때는 C언어에서 말하는 '정수'라는 개념을 전혀 알 수가 없었죠... 조건문도 공부하고 변수도 공부하다가 정수라는 개념을 만나고 중도 포기했던 거 같습니다.

*물론 프로그래밍에서의 정수와 수학에서의 정수는 정의가 조금 다르긴 합니다.

 

중학교 1학년 수학 그룹 과외에 들어가서 수학 개념을 체득하고 정수, 소수라는 단원에서 제가 원했던 내용들을 배우면서 이제 C언어 책에서 하는 말을 어느 정도 알아듣게 되었습니다. 그럼 그때부터 C를 다시 배우기 시작했냐? 하면 아닙니다 ㅎㅎㅎ 

 

저는 도스창에서 딱딱하게 프로그래밍하는 게 싫었거든요. GUI 창이 있는 프로그램을 만들고 싶었습니다. 그래서 비주얼 베이식으로 프로그래밍을 제대로 시작했다고 볼 수 있겠네요. VB6.0을 우선 배우고 그다음엔 조금 더 모던한 VB.NET을 배웠습니다.

 

 

이게 제일 처음에 만든 프로그램인데 지금보니 좀 쪽팔리긴 하네요 ㅋㅋㅋㅋ

(저 시절에도 블로그는 해서 기록이 남아있습니다.)

 

마인크래프트 한글 입력이 안됬을적에 클립보드로 복사-붙여 넣기 하는 건 먹혀서

 

만든 프로그램에 채팅을 입력하고 엔터를 누르면 클립보드에 자동 복사가 돼서 알트탭으로 전환하며

한글 채팅을 할 수 있던 프로그램입니다. (컴파일 한 흔적으로 왼쪽 아래에 Release 창도 띄어져 있네요)

 

사진을 보니 참 추억돋네요. 윈도우 XP에 해상도는 HD 모니터를 쓰고 있었던 거 같고 심지어 저 시절에 카카오톡 PC 클라이언트가 있었군요....

 

중학교 시절엔 원하는거 마음대로 하면서 VB.NET을 쓰다가 C#도 공부해보고 리버싱, 게임 핵 모의 제작 등 해보고 싶었던 건 다 해봤던 거 같습니다. 물론 깊이는 없었으나 컴퓨팅 세계를 얇고, 넓게 공부했다고 생각합니다.

이때 학습해둔 컴퓨터 개념들이 지금까지도 도움을 주고 있기 때문에 영향력이 적다고 볼 순 없겠네요.

 

어쨌든 본론으로 돌아와서, 이 강의를 쓰게 된 이유가 저 책 한권 때문이라고 했는데 저 책을 보고 C언어 강의를 작성하게 된 건 고등학교 2학년 때쯤 이었던 거 같습니다.

 

물론 C언어야 학기중에도 배우고 스스로 공부한 것도 많아서 많이 체화가 된 상태였습니다만.. 저 책이 갑자기 눈에 띄었고 초6 때부터 시작한 학습의 종지부를 찍고 싶다는 생각이 들더라고요.

 

그래서 책을 쭉 읽으면서 잘 모르는 내용은 다른 레퍼런스를 참고해서 추가 학습하고

이미 아는 내용도 복습하자는 취지에서 기록 겸 강의의 형태로 시작을 하였습니다.

 

결론만 말하자면, 결과는 성공적이었습니다! 특히 책을 읽으면서 워낙 예전 책이다 보니 지금 컴파일러와 안 맞는 내용도 조금 있었고 바뀐 내용도 조금 있어서 그 부분에 있어서 자세히 학습할 수 있었고

 

비트 연산을 할 때 뺄셈을 단순히 '2의 보수'로 처리한다. 2의 보수는 비트를 뒤집고 1 더하는 것이다. 정도의 설명밖에 없어서 이 부분에 있어서도 자세하게 학습한 뒤 글로 설명을 적어놨었습니다.

 

'제가 좋아하는 왜?라는 부분을 가장 자극했었습니다.'

 

https://pgh268400.tistory.com/20?category=1072473 

 

[C언어 강좌] #5-2 [2진수 변환, 1의보수, 2의보수 원리 설명]

안녕하세요 파일입니다. 연산자를 설명하기 전에 생각해보니 2진법 변환 과정을 모르면 전혀 이해가 안 되실 거 같아서 한번 설명을 하겠습니다. 오늘 내용은 조금 난이도가 있습니다. 약간 수

pgh268400.tistory.com

 

강의를 작성하면서 아마 가장 만족하게 글을 썼던 것도 위 글이었던 거 같고.. 쓸 때 머리가 제일 아픈 글이기도 했습니다.

(제가 연식이 좀 새 거라서 교육 과정에 진법 변환이 빠져 있었거든요 ㅎㅎ.. 아마 지금 교육 과정도 마찬가지일 거라고 봅니다.)

 

글로 무언가 적으면서 설명하니 기존에 책만 읽고 소스코드만 따라 치던 것과는 차원이 안되게 뇌에 각인이 되더라고요.

 

 


 

제 강의는 댓글이 그렇게 많이 달리진 않은 편이었습니다만.. 특히 스트롱 치즈님이 좋은 댓글도 많이 남겨주시고 질문도 많이 해주셔서 기억에 남네요 ㅎㅎㅎ

 

중간에 제가 강의를 너무 안 써서 지금은 안보이시지만 잘 지내실지 모르겠네요...

 

아 그리고 말씀을 안드렸는데, 제 강의 작성을 위해 도움을 주신 박정민님께 무한한 찬사를 드립니다!

 

 

2019.10.28 ~ 2022.1.28 (2년 3개월) 동안 진행했던 강제 장기 강의 프로젝트.

급하게 쓴 글도 많아서 오류도 많지만 그래도 댓글에서 많은 분들이 피드백을 주셔서 수정은 진행하고 있습니다.

 

이제 C++ 강의도 계획해보고 있긴 한데 워낙 레퍼런스가 방대해서 이건 완결을 못 낼까 봐 시작도 잘 못하고 있네요.

어쨌든 제 C언어 강의는 여기가 끝입니다! 모두 행복하세요.

 

 

SNS 공유하기
💬 댓글 개
이모티콘창 닫기
울음
안녕
감사해요
당황
피폐

이모티콘을 클릭하면 댓글창에 입력됩니다.