Latest web development tutorials

Einführung in die Scala

Scala ist die Abkürzung für Scalable Sprache, ist ein Multi-Paradigma Programmiersprache

Eidgenössische Technische Hochschule Lausanne (EPFL) im Jahr 2001, die Martin Odersky Funnel-basierte Arbeit begann Scala zu entwerfen.

Trichter ist eine Programmiersprache, gedacht, um funktionale Programmierung und Petri-Netze vorgeschlagen.

Odersky früheren Arbeiten ist Generisches Java und javac (Sun Java-Compiler). Scala Java-Plattform Ende 2003 / Anfang 2004 Release. .NET-Plattform Scala im Juni 2004 veröffentlicht. Die zweite Sprachversion v2.0, die im März 2006 veröffentlicht.

Ab September 2009 ist die neueste Version Version 2.7.6. Scala 2.8 erwartete Features sind wiederbeschreibbare Scala Bibliothek (Scala Sammlungen Bibliothek), benannt und Standardparameter des Verfahrens wird das Objektpaket (Paketobjekt) und Fortsetzung.

April 2009, kündigte Twitter, dass sie den größten Teil des Back-End-Programm ausgegeben hatte von Ruby nach Scala zu wandern, der Rest geht zu migrieren. Darüber hinaus hat Wattzon öffentlich erklärt, wird die gesamte Plattform auf Basis von Scala Infrastruktur bereits vorbereitet.


Scala-Funktion

Objektorientierte Funktionen

Scala ist eine reine objektorientierte Sprache, wobei jeder Wert ein Objekt ist. Object-Datentypen und Verhalten beschrieben von Klassen und Eigenschaften.

Abstrakte Klasse Erweiterungsmechanismus, gibt es zwei Möglichkeiten: Eine Möglichkeit ist die Vererbung, Unterklasse, ist ein weiterer Ansatz flexible Mischmechanismus. Die beiden Möglichkeiten, um die Probleme der Mehrfachvererbung zu vermeiden.

Funktionale Programmierung

Scala ist eine funktionale Sprache, die auch als ein Wert zu verwenden, funktionieren kann. Scala bietet eine leichte Syntax anonyme Funktionen für die Definition, es Funktionen höherer Ordnung unterstützt, ermöglicht verschachtelte Multi-Funktion und unterstützt currying. Scala Fall-Klasse und ihre eingebauten Pattern Matching entspricht funktionale Programmiersprache häufig verwendete algebraische Typen.

Darüber hinaus können Programmierer Scala Musterabgleich verwenden, Code schreiben, um XML-Daten ähnlich wie reguläre Ausdrücke behandeln.

Statische Typ

Scala hat Typ-System, durch Kompilierung-Code überprüfen Sicherheit und Konsistenz zu gewährleisten. Spezifische Typ-System unterstützt die folgenden Funktionen:

  • Allgemein Klasse
  • Kovarianz und
  • Callout
  • Obere und des Typs Parameter untere Grenze
  • Die Klassen und abstrakte Typen als Objekt Mitglieder
  • Composite Typ
  • Zitat selbst wenn ausdrücklich auf die Art angeben
  • Ansicht
  • Polymorphe Methode

Dehnfähigkeit

Scala ist so konzipiert, die Tatsache, dass in der Praxis zu wahren, eine spezifische Anwendungsgebiete erfordern häufig besondere Sprache im Bereich der Erweiterung zu entwickeln. Scala bietet eine einzigartige Kombination Mechanismen der Sprache in Form von Bibliotheken hinzufügen nahtlos einfach neue Sprachkonstrukte werden können:

  • Jede Methode kann als Präfix oder Suffix Operator verwendet werden
  • Es kann entsprechend der beabsichtigten Art des Verschlusses automatisch konfiguriert werden.

Concurrency

Scala als Concurrency-Modell Schauspieler, Schauspieler Einheit ähnlich Faden durch die E-Mail-Nachrichten zu senden und zu empfangen. Schauspieler können die Fäden wieder verwenden, kann es Millionen Schauspieler in einem Programm verwendet werden, sondern nur Tausende von Threads erstellen. In der Version 2.10 nach der Verwendung von Akka als Standard-Darsteller erreichen.


Wer nutzt Scala

  • April 2009, kündigte Twitter, dass sie den größten Teil des Back-End-Programm ausgegeben hatte von Ruby nach Scala zu wandern, der Rest geht zu migrieren.
  • Darüber hinaus hat Wattzon öffentlich erklärt, wird die gesamte Plattform auf Basis von Scala Infrastruktur bereits vorbereitet.
  • UBS Scala für allgemeine Produkte.
  • Coursera als Server die Sprache Scala verwenden.

Scala Web-Framework

Hier sind zwei weitere beliebte Web-Applikations-Framework von Scala: