날짜 없이 시간을 다루는 시계를 구현해요.
이 시계에 분을 더하거나 뺄 수 있어야 해요.
같은 시간을 나타내는 두 시계는 서로 같아야 해요.
시계가 서로 같아야 한다는 지침의 요구 사항을 충족하려면, Clock 타입의 값이 == 연산자와 함께 동작해야 해요.
즉, New 함수가 값이 아니라 포인터를 반환하면 시계는 아마 ==와 함께 동작하지 않을 거예요.
표준 라이브러리의 time.Time 타입을 반드시 Clock 타입의 기반으로 삼아야 하는 것은 아니지만, 그곳의 생성자들(Date와 Now)이 포인터가 아니라 값을 반환하는 방식을 살펴보면 도움이 될 거예요. 대부분의 time.Time 메서드가 포인터 리시버가 아니라 값 리시버를 사용한다는 점도 눈여겨봐요.
값 리시버와 포인터 리시버를 언제 사용해야 하는지에 대한 유용한 지침은 Go 위키: 리시버 타입을 참고해요.
Exercism에 가입하고 Go 트랙을 개념 34개연습 문제 165개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.