Day1
유닉스에서 여러가지의 파일을 하나의 파일로 만들어주는 "tar"를 간단하게 직접 구현해보기 위해서, 필요한 background 들을 공부했다.
-
Read and write a file (Binary vs Text)
파일을 Binary로 읽는 것과 Text로 읽는 것의 차이를 알기 위해서 직접 두가지 프로그램을 만들고 비교해보았다.
text를 읽을 때는 fscanf 함수 등에서 문자를 임의로 처리하기 때문에, fread를 사용해 binary로 읽을 때와는 차이가 있었다.
동시에, 파일을 읽는 로직을 직접 짜보면서, os수업 때 배운 내용들을 다시 생각해 보았다. -
에러 처리
코드를 짤때, 작은 것 부터 탄탄하게 만들어 가야 한다는 것을 느꼈다.
그동안 원하는 기능을 구현하는데만 먼저 우선순위를 두고 에러가 나올 수 있는 상황들은 뒤로 미뤄두었는데, 시간이 지날 수록 처리하기 까다로워 졌던 것이 생각이 났다. -
코드를 통한 커뮤니케이션
내 코드를 다른 사람이 이해할 수 있게 만들지 않으면, 스스로도 관리하기가 쉽지않다고 한다. 기능적으로 뛰어난 것 보다 논리적으로 명확하고 직관적인 코드를 쓴는 것이 중요하다는 것을 배웠다. 그동안 코드를 컴퓨터와 나만 소통하는 수단으로 생각했던 것 같다. 코드를 통해서 사람들과 소통한다는 생각을 하니, 조금 흥미가 올랐고 차근 차근 연습하고 싶다는 생각을 했다.