Refined Newtype과 Refined를 이용한 Strongly Typed Function 작성하기 따라서 lookup 함수는 약타입 함수라고 할 수 있으며 의도하지 않은 String 타입의 값이 들어올 수도 있다. 스마트 컨스트럭터에서 잘못된 값을 거를 수는 있지만 결과물은 case class 이기 때문에 copy 라는 메소드를 통해 필드가 잘못된 값으로 오염될 수 있다. 또한 case class 구현한 값 클래스에는 이슈가 하나 있다. 이 패턴 매칭 코드를 컴파일 해보면 다음과 같이 M... scalaNewtypeRefinedNewtype
Newtype과 Refined를 이용한 Strongly Typed Function 작성하기 따라서 lookup 함수는 약타입 함수라고 할 수 있으며 의도하지 않은 String 타입의 값이 들어올 수도 있다. 스마트 컨스트럭터에서 잘못된 값을 거를 수는 있지만 결과물은 case class 이기 때문에 copy 라는 메소드를 통해 필드가 잘못된 값으로 오염될 수 있다. 또한 case class 구현한 값 클래스에는 이슈가 하나 있다. 이 패턴 매칭 코드를 컴파일 해보면 다음과 같이 M... scalaNewtypeRefinedNewtype