String
이 (가) java에서 최종인 이유는 모두 argument에 대해 잘 알고 있습니다.javaslang CharSeq이 왜 마지막입니까?
그러나 javaslang의 CharSeq도 최종판인지 궁금합니다.
javaslang의 FP 영감과 하스켈이 type synonyms을 허용한다는 사실을 감안할 때 CharSeq
이 final이 아닌 final이 될 수있는 좋은 기회라고 생각했을 것입니다.
최종본이 아닌 CharSeq
은 빈 시체로 그것을 확장하여 좋은 동의어 유형을 만들 수있게합니다. 이렇게하면 추가 유형 안전이 필요한 경우에 대한 패턴의 상용구가 표시되지 않습니다.
이것이 왜 설계가 아닌지에 대한 좋은 이유가 있습니다. 그래서 여기에서 묻습니다.
업데이트 1612 년 12 월 : githubaslang 팀의 개선 요청을 #1764으로 제기했습니다.
감사합니다. 동일한 이유가 모두 적용됩니까? 'CharSeq'는'String'이 아니기 때문에, JVM/클래스 로딩/보안/성능의 이유는 분명히 적용되지 않을까요? –
'String'에 관한 마법은 없습니다 - 조작하는 private'char []'필드가있는 Java 클래스 일뿐입니다. 다른 클래스에 동일한 JVM/클래스 로딩/보안/성능 이유가 적용되지 않는 이유는 무엇입니까? – slim
따라서 동일한 논증이 모든 수업에 적용됩니까? 즉, 'String'최종 인수는 단순히 'extends'가 항상 성능에 대해 '나쁘다'고 말하는 것입니다. 그렇다면 javaslang'CharSeq'이 JVM/클래스 로딩/보안/성능상의 이유로 인해 만기가되는 이유입니다 FP 설계 고려 사항? –