A ) 코드 리뷰 할 때 멘토님 만의 팁이 있을까요 ?
Q ) 코드 리뷰는 상대방이 코드를 작성한 의도, 코드 스타일 등이 모두 다르기에 쉽지 않다.
이는 상대의 코드 맥락을 알 수 없기 때문.
코드를 읽을 때 어떤 것을 중점적으로 볼지 하나 정하고
한 번은 그것 위주로, 또 한 번은 다른 것 정해서 그것 위주로 보고.
Q ) 코드에 주석이 있는건 별로일까?
A ) 확실히 주석을 사용하면 코드를 볼 때 큰 도움이 된다.
그런데, 그럴거면 문서에 기록하면 되는 것 아닌가 ?
또한, 주석에 의존하면, 변수명이 이해하기 어렵게 작성될 수 있음.
때문에 주석을 전략적으로 ( todo, fix, … ) 활용해보되, 있을 필요가 없다면 굳이 주석을 남길 필요는 없다.
Q ) 추상화는 어떻게 하는 걸까요?
A ) 본인만의 철학에 맞게 코드가 작성된다고 생각합니다.
멘토님은 ‘ 남이 사용할 때 좋은 코드를 작성하려 노력 ’ 하신다고.
겉보기에 화려하거나 드러나진 않더라도 말입니다.
또한 추상화는 경험이라고 말씀 하셨습니다.
어떤 것을 하기 전에 무엇을 고민 후, 그 고민에 답을 내렸을 때,
그 답은 좋을 수도 있고 나쁠 수도 있습니다.
아무튼, 본인이 작성한 코드를 남에게 설명할 수 있다면, 그것은 추상화가 된 코드 입니다.
약간 추상화랑 인문학이랑 비슷한 느낌..?
본인의 생각을 정리해서 역질문 할 수 있다는 점에서 그렇게 느끼셨다고.
개발이 인문학 철학과도 유사하다고 말씀해 주셨습니다.
참고 ) 1Q84 라는 책이 굉장히 유명하다고..
Q ) 저희의 개발 방향성..?
A ) 리팩토링의 경우, 우리가 하는 작업 정도면.. 1주면 충분하다.
일단 필수 기능들을 먼저 구현 하고, 리팩토링은 나중에 하는 것을 추천.
핵심 / 추가 요구사항 중, ‘핵심’은 완성되지 않는다면 이 프로젝트를 사용할 수 없는 것이고
’추가’ 는 단지 있으면 좋은 기능이니, 일단 핵심 요구사항 다 해결하자.
추가 기능은 협의를 통해서 처리하자.