Wir stehen zur Ukraine, um die Menschen in Sicherheit zu bringen. Mitmachen
DE
Wenn Sie über Links auf unserer Website einkaufen, erhalten wir möglicherweise eine Affiliate-Provision

Scala Überblick

Scala kombiniert objektorientierte und funktionale Programmierung in einer prägnanten, hochgradigen Sprache. Die statischen Typen von Scala helfen, Fehler in komplexen Anwendungen zu vermeiden, und die JVM- und JavaScript-Laufzeiten ermöglichen es Ihnen, leistungsstarke Systeme mit einfachem Zugriff auf riesige Ökosysteme von Bibliotheken zu erstellen.

Nahtlose Java-Interop

Scala läuft auf der JVM, sodass Java- und Scala-Stacks frei gemischt werden können, um eine völlig nahtlose Integration zu ermöglichen.

Typinferenz

So fühlt sich das Typsystem nicht so statisch an. Arbeiten Sie nicht für das Typsystem. Lassen Sie das Typsystem für Sie arbeiten!

Nebenläufigkeit & Verteilung

Verwenden Sie datenparallele Operationen auf Sammlungen, verwenden Sie Akteure für Nebenläufigkeit und Verteilung oder Futures für asynchrone Programmierung.

Traits

Kombinieren Sie die Flexibilität von Java-ähnlichen Schnittstellen mit der Leistungsfähigkeit von Klassen. Denken Sie an prinzipielle Mehrfachvererbung.

Mustererkennung

Denken Sie an „switch“ auf Steroiden. Vergleichen Sie mit Klassenhierarchien, Sequenzen und mehr.

Höhere Funktionen

Funktionen sind Objekte erster Klasse. Kombinieren Sie sie mit garantierter Typensicherheit. Verwenden Sie sie überall, übergeben Sie sie an alles.

Was ist neu in Version 3.7.4

Höhepunkte der Veröffentlichung
  • Aktualisieren Sie Scala CLI auf v1.9.1 (war v1.9.0) #23962
  • Machen Sie die Abdeckung ähnlicher wie die in Scala 2 #23722
Abkündigungen zur Entfernung
  • Deprecated scala_legacy/MainGenericRunner/scalac -run/scalac -repl zur Entfernung #24267
Weitere Änderungen und Fehlerbehebungen
  • Kontextfunktionen
    • Erklären Sie keine Erweiterung von ContextFunction0 #23844
  • Experimentell: Erfassung von Überprüfungen
    • Fix #23737: Aktualisieren Sie superCallContext, um Dummy-Erfassungsparameter im Geltungsbereich einzuschließen #23740
    • Fix Trennungsprüfung für Funktionsresultate #23927
    • Einfache Verbesserung für Mustererkennung mit erfassenden Typen #23524
    • Überprüfen Sie keine Grenzen in Übereinstimmungstypfällen bei CC #23738
  • Experimentell: Explizite Nullwerte
    • Fügen Sie Warnungen für abgeleitete flexible Typen in öffentlichen Methoden und Feldern hinzu #23880
  • Exporte
    • Verfeinern Sie isEffectivelyFinal, um Abstürze ohne Eigentümer zu vermeiden #23675
  • Implizite
    • Fix LiftToAnchors für höherwertige Typanwendungen #23672
    • Fix impliziten Geltungsbereich liftToAnchors für Parameteruntergrenzen #23679
  • Linting
    • Erfinden Sie den gegebenen Musternamen in der for-Verständnis #23121
    • Nicht verwendete Variablenmeldungen erwähnen nicht gelesene oder nicht festgelegte #23719
    • Lint-Funktionspfeil beabsichtigte Kontextfunktion #23847
    • Immer Inlined.call im Linter durchlaufen #24043
    • Ignorieren Sie Warnungen, wenn compiletime.testing importiert wird #24036
    • Lint vermeidet das erneute Besuchen von Inlined.call #24277
    • Registrieren Sie keine Elemente für Lint nach dem Inlining #24279
    • Verwenden Sie umschließende Inlineds für leere Aufrufe #24281
    • Schließen Sie synthetische opake Proxys von Lint aus #24264
  • Übereinstimmungstypen
    • Fix derivesFrom falsches negatives in provablyDisjointClasses #23834
  • Parser
    • Verbessern Sie die Meldung für fehlende geschachtelte Paketklammern #23816
    • Fix: Erlauben Sie Postfix-Setter unter language.postfixOps #23775
    • Fix Java-Record-Varargs-Feldzugriff #24172
  • Mustererkennung
    • Fix: Ident nicht mehr in PostTyper transformieren #23899
    • Rufen Sie bewohnt für AppliedType rekursiv auf #23964
    • Fix falsche unerreichbare Fallwarnung #23800
    • Fügen Sie einen subtype-basierten Fallback in inferPrefixMap hinzu und berechnen Sie die Einschränkungen nach der Anwendung neu #23771
  • Präsentationscompiler
    • Zusätzliche Vervollständigungen für die Verwendungsklausel #23647
    • Vervollständigungen - fügen Sie keine [] für ... derives TC@@ hinzu #23811
    • Verbessern Sie die Symbolreihenfolge in den vom Präsentationscompiler bereitgestellten Vervollständigungen #23888
    • Portierung von XRayModeHints #23891
    • Gehe zu Definition und Hover für benannte Argumente in der Musterübereinstimmung #23956
    • Fix Parameterentkopplung für benannte Tupel (#23440) #24152
    • Fix mögliche SuspendException, die beim Verwenden von Makros ausgelöst wird #24174
    • Fix Vervollständigungen für benannte Tupel #24169
  • Berichterstattung
    • Verwerfen Sie nicht das geänderte Format, wenn der f-Interpolierer warnt #23697
    • Erwähnen Sie benannte Gegebenheiten im doppelten Def-Erklärer #23833
    • Berechnen Sie den richtigen Bereich für abstrakte Fehlermeldungen #23853
    • Fügen Sie eine schnelle Lösung hinzu, um .nn hinzuzufügen #23598
    • Fügen Sie einen Zusatz zur Fehlermeldung der Parameterabweichung hinzu #23876
    • Fix Compiler-Absturz mit -Ymagic-offset-header #24124
  • Umformulierungen
    • Duplizieren Sie Patches, bevor Sie sie auf Quellen anwenden #24215
  • Scaladoc
    • Kennzeichnen Sie optionale Parameter mit = ... #23676
    • Scaladoc-Unterstützung für Erfassung & Trennungsprüfung #23607
    • Erfassung Calcuclus: Lassen Sie keine Kappen bei Parametern fallen #23759
    • Fix Rendering von Funktions-Typ-Aliassen #24042
  • SemanticDB
    • Fügen Sie Kontextparameter zu SemanticDB-Synthetik hinzu #23381
    • Fügen Sie synthetische Anwendungen in semanticdb hinzu #23629
  • Tupel
    • Fix: Machen Sie vals, die beim Entzerren von n-ary Lambdas erstellt wurden, nicht synthetisch #23896
  • Typer
    • Verhindern Sie Abstürze bei SAM-Konvertierungen mit nicht übereinstimmender Arität #23877
    • Behandeln Sie Assertion-Fehler im TyperState #23665
    • Erfordern Sie korrekt einen ClassTag beim Erstellen eines mehrdimensionalen Arrays #23902
    • Lassen Sie isExactlyNothing und isExactlyAny für And/OrTypes funktionieren #24016
Ältere Scala Versionen ansehen

Scala für Mac

Kostenlos
Version 3.7.4
Schreiben Sie eine ausführliche Rezension zu Scala

Schreiben Sie Ihre Gedanken in unserem klassischen Kommentarfeld

MacUpdate Kommentarrichtlinie. Wir empfehlen ausdrücklich, Kommentare zu hinterlassen – Kommentare mit beleidigenden Wörtern, Mobbing oder persönlichen Angriffen jeglicher Art werden moderiert.
0.0

(0 Rezensionen zu Scala)

Es gibt noch keine Rezensionen
  • Kommentare

  • Nutzerbewertungen

Helfen Sie der Community
Es gibt noch keine Rezensionen – schreiben Sie die erste
Helfen Sie der Community
Es gibt noch keine Bewertungen – geben Sie die erste ab

Wie würden Sie Scala bewerten?