저는 스칼라 신참이지만 자바 배경을 가지고 있습니다. 스칼라 코드를 작성할 때스칼라. 너무 많은 작은 함수, 너무 많은 클래스?
은 같은 스타일 옵션 매개 변수를 처리하는 데 유용합니다 :
val text = Option("Text")
val length = text.map(s => s.size)
있지만, 각 s => s.size
내가 아는 한 새로운 Function1[A, B]
을 제공합니다. 그리고 예 8에서 그러한 전환을하면 8 개의 클래스가 추가로 생깁니다. 폼을 바인딩 할 때 이러한 스 니펫을 매우 많이 사용합니다. 따라서 질문은 다음과 같습니다.
덜 사용하고 if 표기법으로 대체하거나 JVM에 중요하지 않은 클래스 플러드입니까? 스칼라 컴파일러는 어떤 종류의 마술을합니까?
업데이트하십시오 어쩌면 더 구체적인 예는 다음과 같습니다
case class Form(name: Option[String], surname: Option[String])
val bindedForm = Form(Option("John"), Option("Smith"))
val person = new Person
bindedForm.name.foreach(a => person.setName(a))
bindedForm.surname.foreach(a => person.setSurname(a))
는 두 개의 서로 다른 Function1[String, String]
클래스를 생성합니다? 그러한 전환이 수백 번이라면 어떻게 될까요?
우리는 J2ME 응용 프로그램을 만들었을 때 클래스의 양에주의를 기울였습니다. 오늘이 점에 대해 신경 쓰지 마십시오. –