더북(TheBook)
public class PostId: DbId {
    public PostId(int id): base(id) { }
}
public class TopicId: DbId {

→ 같은 타입에 새로운 변화를 주기 위해 상속을 사용한다.

    public TopicId(int id) : base(id) { }
}
public class UserId: DbId {    → 같은 타입에 새로운 변화를 주기 위해 상속을 사용한다.
    public UserId(int id): base(id) { }
}

DbId 타입에서 용도별로 파생된 타입(예를 들어 PostId, UserId, TopicId)을 함께 사용한다면 설계의 구성 요소마다 다양한 용도에 따라 코드상에서 타입 간의 차이를 더 쉽게 구분할 수 있다. 또한, 함수에 잘못된 타입의 식별자를 전달하는 것을 방지할 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.