
특성(Trait) 예전부터 글에 자주 등장했던 특성(trait)이란 단어를 알아볼 시간이 왔다. 특성(트레잇)이란 타입들이 특정 타입이 갖고 있는 동작(기능)을 다른 타입들과 함께 공유할 수 있도록 공통적으로 갖는 동작에 대하여 추상화한 것을 말한다. 제네릭 타입이 어떤 행동을 하는 타입이 될 수 있도록 특정하는 것을 trait bounds라고 한다. traits은 인터페이스(interface)와 비슷하지만, 몇몇 차이점이 존재한다. Defining a trait 타입의 행동(behavior)은 그 타입이 호출할 수 있는 메소드들로 이루어져 있다. 이에 만약 같은 메소드를 가진다면 다른 타입이라도 같은 행동을 공유한다. 트레잇을 정의한다는 것은 어떤 목적을 달성하기 위해 필요한 행동(behavior)들을..