본문으로 건너뛰기

퇴근 후 공부, 데이터통신에서 C 언어로

· 약 2분
Seung hyo, Lee
Front End Engineer @ Assistfit

입사하고 1년이 넘었다. 회사에서는 매일 Next.js 코드를 만지는데, 그 아래에서 무슨 일이 일어나는지 설명하라고 하면 막히는 부분이 많았다. 그래서 여름부터 기초 과목을 하나씩 듣고 이 블로그 docs에 정리하고 있다.

7~8월, 데이터통신​

6월에 학습 노트용으로 Docusaurus를 새로 세팅했고, 첫 과목은 정보통신과 데이터통신이었다. 데이터통신 시스템의 구성, 네트워크 분류, 프로토콜, OSI 7계층, 아날로그와 디지털, PCM과 라인 코딩까지 정리했다.

OSI 7계층은 계층마다 PDU 이름이 어떻게 바뀌는지 그림과 함께 정리했다. 업무에서 보는 HTTP 헤더나 프록시 IP가 어느 층 이야기인지 조금은 감이 생겼다.

9월, C 언어​

강의는 Dev C++로 진행되는데 맥에서는 돌아가지 않았다. VS Code에 확장을 깔아 쓰는 방법도 있었지만 회사 일에 쓰는 설정과 섞이는 게 싫었다. 그래서 Xcode에서 Command Line Tool 프로젝트를 만들어 C 실습을 하고 있다. 프로젝트 생성 한 번으로 바로 printf가 돌아갔다.

이번 주에는 서식 문자, 변수와 메모리, sizeof를 정리했다.

int a = 10, b = 20;

int t = a;
a = b;
b = t;
printf("%d %d\n", a, b); // 20 10

JS에서는 구조 분해 한 줄이면 끝나는 swap이다. C 노트에는 변수를 선언하면 메모리에 공간이 잡히고, sizeof로 보면 int가 4바이트라는 것까지 같이 적었다. 변수 하나의 크기를 의식하며 코드를 본 건 처음이다.

docs에는 프로그래밍-언어-활용 폴더도 미리 만들어 두었다. 회사 코드와 상관없는 과목이라도 일단 꾸준히 커밋으로 남기는 게 목표다.