메서드를 정의하면서 기존 타입을 수정할 필요가 없었다는 점을 기억하라. 우리는 암시 기능을
사용해서 우리가 원하는 동작을 제공하는 다른 타입으로 어떤 객체를 감쌀 수 있었다. 또한 소
스 코드에서 본 것처럼, 이런 변경은 타입을 수정하는 것으로만 보인다.
스칼라에서도
JVM
언어로 상속하고 있는, 널리 쓰이는
Object
.
toString
을 생각해보자. 자바
의 기본
toString
은
JVM
힙
heap
상의 객체 주소와 타입 이름만 표시하기 때문에 거의 쓸모가 없
다. 스칼라가 케이스 클래스에 사용한 표현 방식이 더 유용하며 사람들이 알아보기도 쉽다. 또한
JSON
이나
XML
과 같이 기계가 처리할 수 있는 형식을 사용하는 것이 아주 유용할 때도 있다.
암시적 변환을 사용하면 모든 타입에
toJSON
이나
toXML
을 추가하는 것도 가능하다.
toString
이 이미 존재하지 않았다면, 그 메서드를 추가해주는 암시적 변환을 사용할 수도 있었을 것이다.
하스켈의 타입 클래스는 인터페이스와 동등한 것을 정의한다. 그리고 특정 타입에서만 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month, and much more.
O’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
I wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
I’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
I'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.