[JAVA] Verstehen Sie die Eigenschaften von Scala in 5 Minuten (Einführung in Scala)
Einführung
"Kennst du Scala?"
"Oh, es ist ein Verteidigungszauber, oder?"
"(゚ Д ゚) ha?"
Ich habe die Funktionen für diejenigen zusammengefasst, die Scala nicht kennen, damit es nicht passiert.
Was ist Scala?
- Eine Programmiersprache, die die Eigenschaften einer objektorientierten Sprache und einer funktionalen Sprache kombiniert.
- Der Name kommt von "skalierbarer Sprache".
- Es läuft auf Java und kann mit vorhandenen Java-Programmen verknüpft werden.
- Ist dein Rivale groovig? In der Aufführung scheint Scala überwältigend zu gewinnen.
Charakteristisch
- Alles ist ein Objekt. Es gibt keinen primitiven Typ.
- Aufgrund der statischen Eingabe wird beim Kompilieren ein Fehler festgestellt.
- Bestimmen Sie den Typ automatisch mit leistungsstarker Typinferenz. Die Deklaration entscheidet also nur, ob es sich um eine Variable oder eine Konstante handelt.
//Variable Aussage
var user = getUser()
var user: User =null Null kann nicht wie erwartet abgeleitet werden, daher ist eine Typdeklaration erforderlich
//Ständige Erklärung
val str = "TEST"
--Null kann verwendet werden, aber die Richtlinie lautet, es so weit wie möglich zu vermeiden. (Optionstyp verwenden. Einige oder keine)
- Reine funktionale Programmierung ist möglich. (Verwenden Sie val (Konstante) und unveränderliche Sammlung (Liste, Menge, Karte))
--Prozedurale Programmierung ist ebenfalls möglich. (Verwenden Sie Vars und Variablensammlungen (List, Set, Map))
--Funktionen können auch als Objekte behandelt werden.
- Bestehende Klassen können erweitert werden. (Sie können es so aussehen lassen, als hätten Sie eine Methode hinzugefügt, indem Sie eine automatische Typkonvertierung deklarieren.)
- Es gibt eine Eigenschaft. (Schnittstelle mit Implementierung und Feldern)
- Schließer können verwendet werden.
- Ein Build-Tool ist verfügbar. (SBT)
- Java-Klassen können ebenfalls verwendet werden. (Java-Bibliothek kann auch verwendet werden) * Beachten Sie jedoch, dass Java- und Scala-Sammlungen unterschiedlich sind und konvertiert werden müssen. Es ist ziemlich nervig.
--XML (HTML) kann direkt in das Programm geschrieben werden.
var html =
<HTML>
<Body>
getcontent()
</Body>
</HTML>
convert(html)
- Es gibt eine mehrzeilige Zeichenfolge.
――Wenn Sie Ihr Bestes geben, können Sie auch Android-Apps entwickeln.
Fehler
- Es gibt so viele Sprachkonventionen, und die Sprache selbst ist relativ schwierig, sodass die Lernkosten hoch sind.
――Wenn es um die Entwicklung von Webanwendungen geht, können Sie das Play-Framework wählen. (Da sind andere.)
- Es gibt keine Pause oder weiter. (Obwohl dies der Fall ist, ist die Verwendung schwierig, da es durch Try-Catch zwangsweise implementiert wird.)
Andere
- Der Gründer von Java (James Gosling) und der Entwickler von JRuby (Charles Nutter) sagen "Scala ist der Nachfolger von Java".
- Groovys Schöpfer (James Strachan) hat auch seine Unterstützung für Scala zum Ausdruck gebracht.
- Twitter hat das Backend 2009 von Ruby nach Scala verlegt.
--Play Framework unterstützt Scala.
- Es gibt auch eine verrückte Bibliothek namens Scalaz, die von Leuten erstellt wurde, die mit Scala nicht zufrieden sind. (Eine Bibliothek, die die Scala-Bibliothek ergänzt)
- Es gibt auch Eclipse-Plug-Ins für Scala und Eclipse für Scala.
Schließlich
Wenn Sie sich an die oben genannten Merkmale erinnern, wird eine nette Frau eines Tages sagen: "Sie kennen Scala."
Kann gesagt werden.
Übrigens, als ich vor Ort sagte "Lass uns Scala benutzen", wurde es abgelehnt.
Daher habe ich keine praktischen Erfahrungen mit Scala und bin ein Amateur, der es nur als Hobby angefasst hat.
Ich möchte es eines Tages geschäftlich nutzen.
Aber ich mag Kotlin wirklich.