web-dev-qa-db-ja.com

Javaを試す前に知っておく必要がありますScala

Scalaの学習に興味があります。私は多くのことを読んでいますが、同時実行性に優れたアクターモデルがあり、XMLをより適切に処理し、ファーストクラス関数の問題を解決するため、多くの人がそれを高く評価しています。

私の質問は、Javaを理解して、Scalaでの動作を理解するために必要ですか?最初にJavaを試してから、 Scalaを試すか、Scalaをまったく使用せずにJava backround?

15
gizgok

Scalaは独自の言語であり、それ自体は既存の言語の知識を必要としません。必要に応じて、Scalaを第一言語として学習できます。 Learning Scala彼らのウェブサイトのページ には、初心者プログラマーからプログラミング言語研究者、関数型プログラミングの専門家まで、さまざまなレベルの経験のチュートリアルへのエントリーポイント。

ドキュメントのほとんどは、残念ながらプログラミングの方法を知っている人に焦点を当てていますが、私は実際にScalaチュートリアルのいくつかを実行しました。それほど悪くはありません。特定の基本を理解していることが期待されますただし、概念。

17
Thomas Owens

Javaは2つの異なることを意味します。

  1. Java言語-これには、構文、ルール、機能、および全体的なセマンティクスを含む言語が含まれます
  2. Javaプラットフォーム-これには、ランタイム(JVM)、標準ライブラリ全体、およびいくつかの一般的なフレームワーク/ライブラリが含まれます。他にもJava "があることに注意してくださいランタイム」は、GWTを介したクロスコンパイル後にJavaScriptとして実行される、またはJavaであり、別のランタイムでも実行される)

Java言語とScalaは両方とも同じプラットフォームで実行されます。AFAIKScalaはJavaコードは非常に簡単なので、any学習への真の興味がある場合Java理解/活用するScala、それからこれがどのように機能するか、そしてJavaコードをScalaアプリ内からコードを使用する方法です。言語としてJavaは、C#が今までに教えてくれなかったことを教えてくれる可能性は低いです(私はあなたのプロファイルから、C#の経験があると思いました)。

この質問の.NET分析は次のようになります。

F#を試す前にC#/ VB.NETを知っている必要がありますか?

どちらの場合も、答えはかなりしっかりしています"No。"

16
back2dos