Un des langages de programmation.
Il a à la fois des propriétés "orientées objet" et "programmation fonctionnelle" (style à deux épées qui peut faire les deux).
Future
qui peut effectuer un calcul asynchrone en standardJe pense qu'il est facile d'utiliser «Homebrew».
Toute la construction de l'environnement peut être gérée avec ce type (je sens).
# scala (Corps,Cependant, comme condition préalable, un environnement dans lequel Java peut s'exécuter est requis.-Voir ci-dessous)
$ brew search scala
==> Formulae
scala [email protected] [email protected] scalaenv scalapack scalariform scalastyle
==> Casks
scala-ide
# sbt (outil de construction scala,Pensez-y comme un gars utile pour faire diverses choses)
$ brew search sbt
==> Formulae
sbt [email protected] sbtenv
Utilisez à nouveau «Homebrew».
ʻIl semble bon d'installer AdoptedOpenJDK`.
AdoptedOpenJDK est un binaire OpenJDK (je pense) fourni par la communauté qui aime Java (). L'installation via Oracle est devenue gênante, comme l'enregistrement d'un compte ou l'organisation des dossiers par vous-même, donc je pense qu'il est moins cher de le mettre rapidement que de s'en tenir à des choses étranges ... </ font>
#Ajouter un référentiel
$ brew tap AdoptOpenJDK/openjdk
# search
$ brew search openjdk
# install
$ brew cask install adoptopenjdk11
Vérifiez l'emplacement du répertoire installé avec la commande java_home
$ /usr/libexec/java_home -v 11
/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
Ajoutez la chaîne de caractères qui sort par $ what / java_home -v 11
à PATH
comme variable d'environnement JAVA_HOME
Décrivez-le dans .bash_profile
ou .bashrc
si nécessaire.
# .Je l'ai écrit en bashrc.
export JAVA_HOME=/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
PATH=${JAVA_HOME}/bin:${PATH}
Recharger le fichier de configuration
#L'un ou l'autre des éléments suivants est OK
source ~/.bashrc
exec $SHELL -l
Vérifiez-le pour le moment.
$ java -version
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.7+10)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.7+10, mixed mode)
$ javac -version
javac 11.0.7
#Exemple de compilation
$ javac source.java
#Exemple d'exécution(.Attention à ne pas inclure de cours)
$ java Source
Vous pouvez simplement utiliser sbt
(décrit plus tard), mais je vais l'écrire.
# install
$ brew install scala
c'est tout.
#Début de REPL
$ scala
Welcome to Scala 2.13.3 (OpenJDK 64-Bit Server VM, Java 11.0.7).
Type in expressions for evaluation. Or try :help.
scala>
//production
scala> println("Hello scalalala")
Hello scalalala
//Calcul 1
scala> 1 + 2
val res1: Int = 3
//Calcul 2
scala> 3 * 6
val res2: Int = 18
//Calcul 3
scala> 8.0 / 2.0
val res3: Double = 4.0
//Fin
scala> :quit
// scala> :q est OK
L'extension est «.scala»
Main.scala
object Main {
def main(args: Array[String]): Unit = {
println("Hello scala program")
}
}
$ scalac Main.scala
$ scala Main
$ scala Main.scala
$ scala
Welcome to Scala 2.13.3 (OpenJDK 64-Bit Server VM, Java 11.0.7).
Type in expressions for evaluation. Or try :help.
scala> :load Main.scala
# install
$ brew install sbt
c'est tout.
#Début de REPL
$ sbt console
...
[info] Starting scala interpreter...
Welcome to Scala 2.12.10 (OpenJDK 64-Bit Server VM, Java 11.0.7).
Type in expressions for evaluation. Or try :help.
scala>
(Le reste est le même, donc les détails sont omis)
En guise de préparation préliminaire, je pense que c'est une bonne idée de créer des dossiers. (Je l'ai nommé myfolder, mais tout va bien, veuillez lire la partie correspondante)
$ mkdir myfolder
$ cd myfolder
Écrivez le fichier source sous mon dossier et placez-le.
HelloWorld.scala
object HelloWorld {
def main(args: Array[String]): Unit = {
println("Hello, Scala World!")
}
}
Placez le fichier de configuration sbt
sous mon dossier
build.sbt
scalaVersion := "2.12.10"
scalacOptions ++= Seq("-deprecation", "-feature", "-unchecked", "-Xlint")
Démarrez sbt
[info] ...
sbt:myfolder>
Exécuter avec la commande run
sbt:myfolder> run
[info] Compiling 1 Scala source to ...
[info] Running HelloWorld
Hello, Scala World!
[success] Total time: 1 s, completed 2015/02/09 15:44:44`
La commande run
semble trouver et exécuter un objet qui a une méthode principale.
ou un problème avec la date ... ?? </ font>
Recommended Posts