스칼라 대 자바
<시간/> 스칼라
- 함수 지향 프로그래밍과 객체 지향 프로그래밍의 조합입니다.
- 사용자 친화적이지 않습니다. 즉, 읽을 수 없습니다.
- 소스 코드에서 바이트 코드로의 변환이 더 느립니다.
- 지연 평가를 지원합니다.
- 스칼라의 변수는 기본적으로 변경할 수 없습니다.
- 스칼라에는 '정적'이라는 키워드가 없습니다.
- Scala의 모든 작업은 함수/메서드 호출의 도움으로 수행됩니다.
- 스칼라는 모든 것을 객체처럼 취급하기 때문에 객체 지향에 더 가깝습니다.
- 스칼라로 작성된 함수는 단순 변수처럼 취급됩니다.
- Scala는 연산자 오버로딩을 지원합니다.
자바
- Java는 범용 객체 지향 프로그래밍 언어로 간주됩니다.
- 코드를 읽을 수 있기 때문에 훨씬 사용자 친화적입니다.
- 소스 코드에서 바이트 코드로의 변환이 비교적 빠릅니다.
- Java는 지연 평가를 지원하지 않습니다.
- Java의 변수는 기본적으로 변경 가능합니다.
- '정적' 키워드는 자바에서 전체 코드에서 변수의 단일 복사본을 공유하는 데 사용됩니다.
- Java의 연산자는 다르게 취급되며 메서드 호출을 사용할 필요가 없습니다.
- Java는 원시 데이터 형식이 있기 때문에 덜 객체 지향적입니다.
- 자바의 함수는 객체로 취급됩니다.
- 자바는 연산자 오버로딩을 지원하지 않습니다.