31 May 2020

학교에서 알려주지 않는 17가지 실무 개발 기술

파일을 읽었는데 갑자기 인코딩이 깨져서 당황스러울 때가 있었을거다. 분명히 읽혔던 파일인데 다른 장비에서 읽거나 백업해서 읽었더니 한글이 다 깨져보인다든지 코드의 주석이 다 깨져보인다든지 하는 경험을 해본 적이 있을거다.

그래서 여러가지 방법으로 찾아보다가 그게 인코딩 문제라는 것을 깨닫게 된다. 또 세부적인 인코딩의 차이점이 무엇인지 인코딩을 설정해서 파일을 읽어오긴 했는데 다른 사람에게 전송했더니 인코딩이 깨진다는 얘길 듣기도 했을거다.

책의 제목대로 학교에서 알려주지 않는 실무 개발기술에 대해 잘 정리가 되어 있다.

이 책의 코드는 파이썬으로 되어 있지만 어떤 언어를 사용하든 공통적으로 마주칠 수 있는 문제라 다른 언어를 사용하고 있더라도 무리 없이 읽을 수 있는 책이다.

코드도 깃헙에 공개가 되어 있다.

https://github.com/sorrowhill/17techs

코드나 파일은 거의 UTF-8을 사용하지만 다른 경로로 받은 파일은 인코딩 때문에 열리지 않는 경우가 종종 있다. 또 DB에 저장된 인코딩과 코드에서 불러오는 인코딩이 다 달라서 이런 설정을 맞춰야지 어렵게 인코딩 문제를 해결한적도 있는데 인코딩에 대한 기본지식이 없다면 인코딩을 맞추는데 애를 먹을 수 있을거다.

이 책은 내가 업무에서 만났던 어려웠던 점들을 잘 집어 설명하고 있다. 다국어 처리 같은 경우에도 해당 업무를 해보고 이해할 수 있었다. 업무에서 마주쳐서 직접 구글링을 하며 어려움을 겪었던 기억이 떠올랐다. 이런 꿀팁들이 이 책에는 잘 정리가 되어 있다.

타임스탬프로 시간을 처리하는 문제라든지 왜 시간을 불러왔는데 1970년 1월 1일 인지 그리고 원하는 패턴을 찾기 위해 정규표현식을 활용한다든지 여러 파일의 포맷이라든지 JSON, XML, YAML 의 차이점은 무엇이고 장단점은 무엇인지 이 책에서 친절하게 정리해서 설명해 주고 있다.

대부분 현업에서 꼭 필요한 내용인데 학교에서 가르쳐주지 않아 현업에서 삽질과 구글링으로 많은 시간을 보내게 되는 문제들을 너무 잘 정리해 놓았다.

출간 전부터 읽어보고 싶었는데 기회가 되어 처음부터 끝까지 너무 재미있게 읽었다. 이제 막 개발을 시작한 사람이라면 고민하지 않고 사용했던 실무 팁을 익힐 수 있고 또 경험이 많은 개발자는 친절한 언어로 정리할 수 있는 책일거 같다.