Heim  >  Artikel  >  Backend-Entwicklung  >  [TOUR OF Scala] 1-Einführung – TOUR OF SCALA

[TOUR OF Scala] 1-Einführung – TOUR OF SCALA

不言
不言Original
2018-03-30 14:19:181428Durchsuche

Willkommen

Diese Reise enthält einige prägnante Einführungen: Einführung in die am häufigsten verwendeten Funktionen von Scala. Es soll Neulingen beim Erlernen der Sprache helfen.

Dies ist nur eine kurze Einführung, kein vollständiges Sprach-Tutorial. Wenn Sie können, sollten Sie darüber nachdenken, dieses Buch zu kaufen oder sich andere Ressourcen anzusehen.

Was ist Scala?

Scala ist eine moderne Multiparadigmen-Programmiersprache, die darauf ausgelegt ist, gängige Programmiermuster prägnant, elegant und typsicher auszudrücken. Es integriert reibungslos Funktionen objektorientierter und funktionaler Sprachen.

Scala ist eine objektorientierte Sprache

Scala ist eine reine objektorientierte Sprache, in gewissem Sinne sind alle Werte Objekte. Objekttypen und Verhaltensweisen werden durch Klassen und Merkmale beschrieben. Klassen werden durch Unterklassen und einen flexiblen Mixin-basierten Kompositionsmechanismus erweitert, um einen vollständigen Ersatz für die Mehrfachvererbung zu schaffen.

Scala ist eine funktionale Sprache

Scala ist auch eine funktionale Sprache. In gewissem Sinne sind alle Funktionen Werte. Scala bietet eine einfache Syntax zum Definieren anonymer Funktionen, unterstützt Funktionen höherer Ordnung, ermöglicht die Verschachtelung von Funktionen und unterstützt Currying. Die Beispielklassen von Scala und die integrierte Unterstützung für algebraische Mustervergleichsmodelltypen werden in vielen funktionalen Programmiersprachen verwendet. Singleton-Objekte bieten eine praktische Möglichkeit, Funktionen zu gruppieren, die nicht Mitglieder einer Klasse sind.

Darüber hinaus erstrecken sich die Mustervergleichskonzepte von Scala durch eine allgemeine Erweiterung über Extraktorobjekte natürlich auch auf die XML-Datenverarbeitung mit Hilfe des Ignorierens richtiger Sequenzmuster. In diesem Fall hilft das for comprehension bei der Formulierung der Abfrage. Diese Funktionen machen Scala ideal für die Entwicklung von Anwendungen wie Webdiensten.

Scala ist eine statisch typisierte Sprache

Scala ist mit einem Ausdruckstypsystem ausgestattet, das die Verwendung von Abstraktionen auf sichere und konsistente Weise statisch erzwingt. Insbesondere unterstützt das Typsystem:

  • Generische Klasse

  • Deformationsanmerkung

  • Obere und untere Typgrenzen

  • Innere Klassen und abstrakte Typen als Objektmitglieder

  • Zusammengesetzte Typen

  • Explizit typisiert Selbstreferenz

  • Implizite Parameter und implizite Konvertierungen

  • Polymorphe Methoden

Typinferenz bedeutet Benutzer Sie müssen den Code nicht mit redundanten Typinformationen annotieren. Zusammengenommen bilden diese Funktionen eine solide Grundlage für die sichere Wiederverwendung von Programmierabstraktionen und die typsichere Erweiterung von Software.

Scala ist erweiterbar

In der Praxis erfordert die Entwicklung domänenspezifischer Anwendungen häufig domänenspezifische Spracherweiterungen. Scala bietet eine einzigartige Kombination von Sprachmechanismen, die das reibungslose Hinzufügen neuer Sprachkonstrukte in Form von Bibliotheken erleichtert.

In vielen Fällen kann dies ohne den Einsatz von Metaprogrammierungstools wie Makros erfolgen. Zum Beispiel:

  • Implizite Klassen: Ermöglichen das Hinzufügen von Erweiterungsmethoden zu vorhandenen Typen.

  • String-Interpolation: Benutzer können sie mit benutzerdefinierten Interpolatoren erweitern.

Scala ist interoperabel

Scala ist so konzipiert, dass es gut mit gängigen Java Runtime Environments (JREs) interoperiert. Insbesondere die Interaktion mit der gängigen objektorientierten Programmiersprache Java ist so reibungslos wie möglich. Neuere Java-Funktionen wie SAM, Lambdas, Annotationen und Generika haben direkte Entsprechungen in Scala.

Die Scala-Funktionen, die keine Java-Entsprechungen haben, wie z. B. Standardparameter und benannte Parameter, werden so nah wie möglich an Java kompiliert. Scala verfügt über das gleiche Kompilierungsmodell wie Java (separate Kompilierung, dynamisches Laden von Klassen) und ermöglicht den Zugriff auf Tausende vorhandener hochwertiger Bibliotheken.

TODO Sobald alle Übersetzungen abgeschlossen sind, werden relevante Links im Text ersetzt

Das obige ist der detaillierte Inhalt von[TOUR OF Scala] 1-Einführung – TOUR OF SCALA. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn