[Recordocs] 20190712
3 min readJul 12, 2019
- 블로그에 내가 쓰는 기술들, 공부했던 것들을 잘 정리해서 튜토리얼 같은 느낌으로 포스팅하고 싶은 생각은 늘 있었다. 그리고 늘 어려웠다. 그래서 늘 미루게 되었었다. 그간 React 를 하거나 es6 를 정리하거나 Hooks 가 나왔을 때는 정말 이거다 싶었었는데 늘 정리해서 포스팅 하지 못했었다.
그러던 중에 지금 GraphQL 을 한참 쓰고 있는데 만족하고 있으니 GraphQL 을 조금 더 깊이 공부하며 포스팅을 해야겠다는 생각이 들었고 포스팅을 시작했다. 그런데 막상 포스팅을 시작하니 거의 공식 문서를 옮겨오는 것 같은 느낌이라 쉽지가 않다. 내 이해가 아직 문서 이외의 것들을 유용하게 전달할 만큼이 되지 못해서.. 등의 이유가 있을 것이라고 생각한다. 그래서 조금 방향을 바꾸어 그간 내가 쓰며 필요했던 기본적인 정의라거나, 팁들, 사용하기 좋았던 practice 들을 정리해 두며 포스팅을 조금씩 완성시켜 가려한다. 그래도 그것만으로도 그간 해왔던 것들이 정리되기도 하고, 그게 또 다시 배움이 되는 것 같아 좋다. - 알고리즘을 공부하지 않았었다. 그간 개발을 해오며 알고리즘을 잘 알지 않아도 구현할 수 있는 기능을 구현하는데에 (지금 내 단계에서) 크게 문제가 없다고 느꼈던 것도 하나의 이유였다. 그것보다는 구현을 하는 방법을 배우는데 더 집중해왔다. 물론 그것도 중요하다고 생각한다. 그러다 여러가지 정보들을 접하고, 다양한 기술과 그 기술들이 시작되고, 발전되는 과정을 접하면서 조금 더 깊이 있는 지식과 이해에 대한 갈증이 생겼다. 그러다가 딱히 알고리즘을 조금씩 공부해보기 시작했고, 그 즈음 “수학이 필요한 순간” 이라는 책을 읽기 시작했다. 공부를 하는데에 논리적인 이해가 조금 지탱이 지탱이 되어야 더 즐겁게 공부를 한다는 것을 알고 있었고 마침 읽고 싶었던 책이 그에 도움이 될 것 같아 같이 시작했다. 그리고 역시 도움이 되었다. 알고리즘은 아주 기본적인 시작단계였지만 그래도 어려웠는데, 책에서의 내용은 더 어려웠다. 그래서 오히려 공부하려는 의지와 재미가 더 생겼다.
알고리즘은 문제를 해결하기 위한 절차이지만 내게 있어서는 생각을 조금 다르게 진행하는 일이기도 했다. 나는 아주 인문적으로 생각을 전개하는 사람이라 이러한 생각의 진행 방식은 굉장히 낯설지만 그래서 또 재미있었다. 그리고 (아주 시작이지만) 그간 작성해 왔던 코드들을 내가 짰음에도 인지하지 못했던 방식으로 새롭게 이해해 볼 수 있어서 재밌었다. 그리고 그런 과정에서 이래서 알고리즘이 필요하구나 라고 어렴풋이나마 느껴 볼 수 있었다.
물론 어렵다. 가끔 내가 생각한데로 코드를 작성하고 문제가 해결되면 굉장히 기쁘지만 그 다음은 또 역시 어렵다. 그렇지만 재미를 잃지 않고 천천히 이해해가며 문제 해결 능력을 키워갈 수 있다면 좋겠다. - GraphQL 의 문서가 예쁘다. 자세히 보다보니 예쁜데다 친절해서 꽤 잘 만들어진 문서가 아닌가 싶다. 그리고 한글 번역도 좋다. 원문과 번역의 어감이 다르니 둘 다 같이 읽으면 이해에 더 도움이 된다. 그렇지만 역시 한글로 읽는게 편하다!