스칼라를 시도하기 전에 Java를 알아야합니까?


15

Scala를 배우고 싶습니다. 나는 그것에 대해 많은 것을 읽었지만 많은 사람들이 동시성을 위해 더 나은 액터 모델을 가지고 있기 때문에 많은 사람들이 그것을 평가합니다 .XML을 훨씬 더 나은 방식으로 처리하고 일급 함수의 문제를 해결합니다.

내 질문은 스칼라에서 작동하는 방식을 이해하고 이해하기 위해 Java를 알아야합니까? 먼저 Java를 찌른 다음 Scala를 사용하는 것이 더 좋습니까? 아니면 Java backround없이 Scala를 시작할 수 있습니까?


5
톱이 어떻게 작동하는지 이해하기 위해서는 얼굴이 필요합니까? : D
back2dos

lol, 나는이 대답을 찬성 할 것이다.
gizgok

답변:


17

스칼라는 자체 언어이며 기존 언어에 대한 지식이 필요하지 않습니다. 원한다면 스칼라 어를 모국어로 배울 수 있습니다. 웹 사이트Learning Scala 페이지 에는 초보 프로그래머부터 프로그래밍 언어 연구자, 기능 프로그래밍 전문가에 이르기까지 다양한 수준의 경험에 대한 자습서의 시작점이 있습니다.

불행히도 대부분의 문서는 프로그래밍 방법을 알고있는 사람들을 대상으로하지만 실제로는 Scala 자습서를 통해 작업했습니다. 그렇게 나쁘진 않아. 그래도 특정 기본 개념을 이해해야합니다.


4
토마스는 완전히 맞습니다. 스칼라의 매력 중 일부는 Java의 큰 표준 라이브러리 전체를 재사용 할 수 있다는 것입니다. 그것은 귀하의 경우에 중요하거나 중요하지 않을 수 있지만, 그렇다면 Java에 대한 이전 경험은 분명히 매우 도움이 될 것입니다. 표준 라이브러리에 대해 많은 것을 배우지 못했기 때문입니다.
Kilian Foth

@ 킬리안 나는 그것에 대해 생각했다. 나는 여전히 스칼라를 배우고 있지만 실제로 의미있는 일을하지는 못했지만 스칼라에서 Java 라이브러리를 사용할 수 있도록 Java를 아는 것이 얼마나 중요한지 잘 모르겠습니다. Scala에서 사전 컴파일 된 JAR을 호출하기 위해 Java 구문 / 스타일에 빠지는 것과는 다릅니다.
Thomas Owens

1
현대의 거의 모든 플랫폼에서 언어 구문을 배우는 것보다 표준 라이브러리를 배우는 것이 훨씬 오래 걸립니다. 스칼라를 배우려는 경우 Java 라이브러리를 아는 것이 좋습니다.
제레미

16

자바는 두 가지를 의미한다 :

  1. Java 언어-언어, 구문, 규칙, 기능 및 전체 의미가 포함됩니다.
  2. Java 플랫폼-여기에는 런타임 (JVM), 전체 표준 라이브러리 및 다수의 널리 사용되는 프레임 워크 / 라이브러리가 포함됩니다. GWT를 통한 크로스 컴파일 후 JavaScript로 실행되거나 다른 런타임에서도 실행되는 Android의 Java와 같은 다른 Java "런타임"도 있습니다.

Java 언어와 Scala는 모두 동일한 플랫폼에서 실행됩니다. AFAIK Scala는 Java 코드를 매우 쉽게 호출 할 수 있으므로 Scala를 이해 / 재평가하기 위해 Java를 배우는 데 실제로 관심 이 있다면 이것이 어떻게 작동하는지 그리고 Scala 앱 내에서 Java 코드를 가장 잘 사용할 수있는 방법을 이해하는 것입니다. 언어로서 Java는 C #이 지금까지 가르쳐주지 않은 것을 가르쳐 줄 것 같지 않습니다 (귀하의 프로필에서 C # 경험이 있다고 가정합니다).

이 질문의 .NET 분석은 다음과 같습니다.

F #을 시도하기 전에 C # / VB.NET을 알아야합니까?

두 경우 모두 대답은 꽤 "아니오"입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.