좋은 학습태도는 계속해서 나를 점검해나가면서 새로운 방법을 시도하며 직접 뭔가를 하는 것이다. 그리고 그걸 남들과 공유해야 한다는 것이다. 사실 이런 것들은 너무 상투적인 말들이지만, 우선순위를 약간은 제시해주는 것 같았다. 이런 지표가 있으면 혼자 헤메고 있을때 마일스톤처럼 잠깐잠깐 쳐다보기 좋은 것 같다. 힘도 나고.
시모어 페퍼트의 마인드 스톰
이런 얘기들을 빠르게 발전하는 방법으로 들을 수 있는데, 나에게는 빠르게 보단 오래가는 법처럼 들렸다. 자동차가 생각났는데, 잘 관리하든 대충 관리하든 일정 키로수는 충분히 채울 수 있다. 문제는 그 이후 부터 발생하는데, 어느정도 시간과 거리가 적산된 후에는 관리를 잘한 차가 당연히 유리하다. 물론 어느정도 타다가 팔고 다른 차를 사는 방법도 있다. 다만, 이것을 직업으로 생각해본다면 그리고 직업을 오래 유지하고 싶다면 충분히 좇을만한 가치가 있지 않나 싶다.
객체지향의 기초적인 내용에 대해 들었다. 이런 기본개념을 듣고 얘기해보는 것이 오랜만이라 생각이 바로바로 떠오르지 않았다. 예를 들어, 클래스와 오브젝트 그리고 인스턴스의 차이가 무엇인지 같은 것이다. 객체지향의 책임을 논하면서 정작 저런 대답도 제대로 하지 못한다면 무슨 의미가 있나 싶다. 엔진오일 갈듯이 가끔 체크하며 더 좋은 방향으로 바꿔줘야 할 것 같다.
미션을 다 구현하긴 했는데, 사실 고쳐야 할듯한 부분들이 군데군데 있다. 하지만 이번에는 여기서 마무리를 할까한다. 지나간건 빠르게 놓아버리는 것도 한 가지 방법이라 생각한다. 대신 다음 과제부터는 지금정도의 속도를 유지하면서 새로운 것을 적용하기보다는 더 많이 리펙토링 해보는 것에 초점을 둬볼까 한다. 그러면 자연스럽게 새로운 것을 학습하고 적용할 수 있는 부분이 생기지 않을까 싶다. 그래도 세부 구현보다 전체적인 인터페이스 구현에 초점을 더 맞추는 것 같아 만족스럽다. 이런식으로 하다보면 설계능력도 자연스레 올라가지 않을까 싶다.
아쉬운 점
suffix array 구현에 생각보다 시간이 많이 걸린다. 많이 피곤하고 조금은 실망스럽기도 하다. 이해를 잘못하고 있었던 것 같은데, 어쨋든 감은 잡고 있으니 천천히 해보려고 한다. 사실 실버의 실력으로 플레티넘을 바로 이해하려고 하니 당연히 욕심을 부리는 것과 비슷한 결과가 나지 않았나 싶다. 그렇다고 해도 이렇게 잘 잡아두면 다음에 다시 찾아봤을때 금방금방 꺼내올 수 있을테니 그걸로 위안을 삼으려고 한다.