타입클래스를 이용한 애드혹 다형성 구현하기 (Ad-hoc Polymorphism in Scala)
Polymorphism의 어원 = Poly(Many, 많은) + Morph(Shape, 형태)
OOP 언어에서 빠지지 않고 나오는 개념인 이 다형성은 보통 서브타이핑을 이용한 추상화 개념을 떠올리곤 한다. 비슷한 형식을 갖고 있는 클래스들을 인터페이스로 추상화하여 특성에 맞게 구현체들을 구현하여 런타임 시 구현체를 결정하도록 사용하곤 한다.
하지만 다형성에는 서브타입 다형성 말고도 또 다른 다형성들이 있다. 바로 파라미터 다형성(Paramet...
icednut.hashnode.dev4 min read