scalaプログラミング(sbtプラグインを使用)にIntellij-ideaを使用しています。
scalaクラス、scalaスクリプト、scalaワークシートの違いは何ですか。それぞれを使用する場合それら?
簡単な例で説明できれば、これはとてもいいことです。
ありがとう
scalaコードを実行するさまざまな方法があります:
最初にクラスでプログラムを作成します。これはJavaの場合と同じです。静的のようにインスタンス化せずにうまく機能するため、オブジェクトを使用します。SBTでコンパイルして実行するだけで、scala通訳REPL
このオブジェクトはREPLで使用できます
scala> object Hello {
| def main(args:Array[String]) {
| println("Hello, Scala !!")
| }
| }
defined object Hello
scala> Hello.main(Array("onlyforwork"))
Hello, Scala !!
アクティベーター/ SBTを使用してコンパイルして実行する
> compile
[info] Compiling 1 Scala source to /home/anquegi/Dev/StackOverFlow/scalaStack/target/scala-2.11/classes...
[success] Total time: 2 s, completed 13/04/2015 11:29:42
> run
[warn] Multiple main classes detected. Run 'show discoveredMainClasses' to see the list
Multiple main classes detected, select one to run:
[1] org.example.Hello
[2] org.example.ScheduledTaskScala
[3] question1.Ques
[4] scriptworksheet.Hello
Enter number: 4
[info] Running scriptworksheet.Hello
Hello, Scala !!
[success] Total time: 19 s, completed 13/04/2015 11:30:04
2つ目は、scalaコードをスクリプトまたはファイルHello.scalaとして追加すると、scalaコードを.scala拡張子の付いたファイルに保存できることです。 (基本的に任意のファイル拡張子を使用しますが、.scala拡張子を優先します)実行するには、ファイル名に拡張子をパラメーターとしてscala interpreter
/**
* Created by anquegi on 13/04/15.
*/
println("Hello, Scala !!")
このファイルが実行されるscalaインタープリターを呼び出すと、オブジェクトやクラスをインスタンス化する必要はなく、シェルスクリプトのように実行するだけで、Intellijから直接実行することもできますが、私はコンソールを使用しますscalaがシステムにインストールされている
[anquegi@localhost scalaStack]$ scala src/main/scala/scriptworksheet/HelloScript.scala
Hello, Scala !!
そして最後に、ワークシートが最も強力です。REPLのようなものをテストするのは簡単なので、仕事での生産性を高めるためにこれをお勧めします。scala式を評価し、結果
以下は、scalaワークシートに関する公式のgithubリポジトリwikiからの抜粋です
ワークシートは保存時に評価されるScalaファイルであり、各式の結果はプログラムの右側の列に表示されます。ワークシートはREPLステロイドに関するセッション、およびファーストクラスのエディターサポートをお楽しみください:完了、ハイパーリンク、入力時のインタラクティブエラー、自動フォーマットなど。
// We can define objects or classes and the worksheet
//will print the sesult of every expression
object Hello {
def main(args:Array[String]) {
println("Hello, Scala !!")
}
}
println("Hello Scala")
val a = 4 + 5
結果
defined module Hello
Hello Scala
res0: Unit = ()
a: Int = 9
次に、Intellijでワークシートとスクリプトのコンソールをクラス分けして作業していることを示すキャプチャ
Scala Interpreter(REPL)と同じですが、IntelliJ内で実行されます。いくつかの式を簡単かつ迅速に評価できます。チェック IntelliJ confluence 詳細については、ページをご覧ください。
Bashでスクリプトを作成したくない場合は、Scalaを使用して作成できます。ただシーケンスScalaステートメント。
例:
import Java.nio.file.{Paths, Files}
val ScalaSource = "*.scala"
val Path = "path/to/necessary/folder"
val stream = Files.newDirectoryStream(Paths.get(Path), ScalaSource)
val paths = stream.iterator
while (paths.hasNext) {
println(paths.next.getFileName)
}
それを実行する:
$ scala scala_script_name.scala
始めるには、これを手に取ってください ガイド 。
Scalaクラスに似ています [〜#〜] pojo [〜#〜] およびScalaオブジェクトそれはa = Javaシングルトンクラス。