Bauen Sie Ihre Karriere mit Currying in Scala auf
Veröffentlicht: 2020-07-06Inhaltsverzeichnis
Einführung in Scala
Scala, eine Programmiersprache, wurde 2003 von Martin Odersky und seiner Forschungsgruppe entwickelt. Die Entwicklung von Scala war eine Revolution in der Welt von Big Data. Es ist eine äußerst solide und verdiente Sprache, die die Welt für kommende Generationen verändern würde. Es ist Compiler-basiert, was es extrem schnell und kompetent macht.
Der wesentliche Spielraum von Scala ist die Java Virtual Machine (JVM) . Scala-Code wurde zuerst von einem Scala-Compiler akkumuliert und der Byte-Code für das Äquivalent wird erstellt, der dann in die Java Virtual Machine verschoben wird, um den Ertrag zu erzeugen. In diesem Sinne wurde Scala zum Weg des Fortschritts im Umgang mit der gigantischen Masse von Big Data.
Warum wird Scala in der Programmier-Community so geschätzt?
Scala hat mehr als nur ein paar Gründe, von verschiedenen Programmierern bevorzugt zu werden. Lassen Sie uns hier einige davon besprechen.
Es ist eine Multi-Paradigma-Sprache
Scala ist kompetent genug, um zwei Programmierparadigmen zu unterstützen, dh funktionale Programmierung (FP) und objektorientierte Programmierung (OOP).
Prägnante Syntax
Der Compiler in Scala, auch bekannt als Scala, ist extrem leistungsfähig und kann mehr leisten, als Sie erwarten würden. Um nur einige Dinge zu nennen, kann es hasCode(), equals(), toString() und mehr erzeugen.
Leicht zu lernen
Da Scala die objektorientierte Programmierung unterstützt, ist es für Programmierer im Vergleich zu Java relativ einfach zu erlernen. Mit einer schnell wachsenden Online-Community werden Scala-Foren immer häufiger. Ein großer Teil davon ist, weil es feine Bibliotheken zusammen mit einer ordentlichen Syntax hat. Während sich Programmierer durch die funktionale Programmierung manövrieren und lernen, können sie dennoch ihre bereits vorhandenen objektorientierten Programmierkenntnisse nutzen und Dinge in Scala erstellen.

Lernen: Ist Python eine objektorientierte Sprache?
Neue Karrieremöglichkeiten
Aufgrund seiner massiven Skalierbarkeit wird Scala in der Industrie immer mehr nachgefragt. Da erstklassige Marken wie Twitter, Quora, LinkedIn usw. zu Scala migrieren, ist es offensichtlich, dass sie nach Programmierern suchen, die sich mit Scala auskennen. Es ist nur eine Frage der Zeit, bis Scala auch für andere Großunternehmen in anderen Branchen zum Gebot der Stunde wird.
Statisch getippt
Der Scala-Compiler nutzt seine Typinferenz bis zum Äußersten, und daher ist Scala, obwohl es sich dynamisch anfühlt, methodisch statisch typisiert. Dies ermöglicht den Typrückschluss für Variablen und Funktionen in Scala.
Nachdem wir nun verstanden haben, was Scala ist, wollen wir weitermachen und das Currying in Scala verstehen .
Curry in Scala
Currying ist nach dem amerikanischen Mathematiker Haskell Curry benannt, der für seine Arbeiten zur kombinatorischen Logik bekannt ist.
Currying in Scala kann als die Strategie hinter der Interpretation der Bewertung einer Funktion definiert werden, die verschiedene Argumente verwendet, um eine Gruppe von Funktionen mit jeweils einer Einzelfunktion zu bewerten.
Mathematisch können wir es wie folgt schreiben:
f1 = f(a)
f2 = f1(b)
Ergebnis = f2(c)
Und der Pseudocode dafür wird wie folgt lauten:
Ergebnis = f(a)(b)(c)
Syntax von Currying
Die Syntax, die zum Ausführen von Currying in Scala verwendet wird, wird wie folgt erwähnt:
def multipliziere(a:Int)(b:Int) = a*b
Es kann auch wie folgt geschrieben werden:
def multiply(a:Int) = (b:Int) => a*b

Lesen Sie: Gehalt für Java-Entwickler in Indien: Für Neulinge und Erfahrene
So rufen Sie eine Curry-Funktion auf
Um die Currying-Funktionen in Scala aufzurufen, müssen wir den in den obigen Gleichungen erwähnten Variablen ' a' und ' b' Werte zuweisen .
Was sind teilweise angewendete Funktionen?
Quelle
Wenn eine Funktion aufgerufen wird, geschieht dies, um die Funktion auf einen Satz von Argumenten anzuwenden. Falls Sie alle erwarteten Argumente übergeben, wenden Sie die Funktion am Ende vollständig an. Wenn Sie nur ein paar Argumente senden, erhalten Sie eine teilweise angewendete Funktion zurück. Dies gibt Ihnen die Möglichkeit, einige Argumente einzuschränken und den Rest später zu ergänzen.
Beispiel einer teilweise angewendeten Funktion –
Schritt 1: Definieren Sie eine Funktion mit mehreren Parametern
scala> def plus(a:int)(b:int) = a + b
plus: (a:int)(b:int)int
Schritt 2: Geben Sie nur den Wert für die Variable ' Skala> def X = X(2)(_)
X: int => int
Die Ausgabe hier erzeugt eine neue Funktion 'X' vom Typ int => int.
Hier kann X wie folgt geschrieben werden
def X(b:int) = 2 + b
Was die obige Gleichung darstellt, ist, dass wenn X mit dem anfänglichen int-Wert von 2 gesät wird, es dort sitzt und auf einen weiteren int-Wert wartet, zu dem es hinzugefügt werden kann.
Als Zusammenfassung ergeben teilweise angewendete Funktionen die folgenden Kapazitäten
- Sie erstellen eine allgemeine Funktion.
- Sie machen aus der allgemeinen Funktion eine bestimmte Funktion.
- Sie haben trotz allem Zugriff auf beide Funktionen.
- Sie halten Ihren Code trocken, da Sie keinen Code kopieren und einfügen mussten, um eine neue Funktion zu erstellen.
Lesen Sie mehr über: Die 27 wichtigsten Fragen und Antworten zu Scala-Interviews für Anfänger
Vergleich von Currying und Partially Applied Functions (PAFs)
Curry und PAFs sind eng miteinander verwandt. Curry- und teilweise angewendete Funktionen können gleichwertig erscheinen – beide verwandeln Ihre Funktionen in solche mit weniger Argumenten. Es gibt jedoch einen Unterschied zwischen ihnen.
- Currying in Scala erzeugt konsequent verschachtelte unäre oder 1-äre Funktionen. Die dadurch veränderte Funktion ist der ersten noch weitgehend ähnlich.
- Die partielle Anwendung erzeugt Funktionen einer subjektiven Anzahl von Argumenten. Die geänderte Funktion ist nicht ganz dieselbe wie die erste – sie benötigt im Vergleich zur ersten weniger Argumente.
- Currying in Scala ist keine Teilanwendung, aber es kann sehr gut unter Verwendung der Teilanwendung ausgeführt werden. Sie können Curry nicht auf eine Funktion anwenden, wenn sie nicht die festgelegte Menge an Parametern benötigt. Es wird sonst nicht erfolgreich funktionieren.
Scala-Frameworks
Hier sind ein paar herausragende Scala-Frameworks, die Sie sich ansehen können, um ein gutes Verständnis von Scala zu bekommen –
Rahmen spielen
Heben Sie Web an
Bowler-Framework

Dies ist die Zeit in der Geschichte, in der der heutigen Generation buchstäblich jede Tür geöffnet wurde, um zu lernen und zu verfolgen, was sie wollen. Es gibt vielfältige Institute, Mentoren, Dienste etc., um Lernen zu ermöglichen und in Form von Abschlüssen und Zertifikaten zu validieren.
Darüber hinaus kann dies jetzt bequem vom Schlafzimmer aus erfolgen. u pGrad hat als Top-Player in diesem Industriesegment das Bildungssystem revolutioniert, einen Kurs nach dem anderen. Von MBA über Jura und Versicherung bis hin zu Data Science hat es upGrad geschafft, alle Fesseln der zeitgenössischen Bildung zu sprengen und eine Welle der Revolution im Bildungssektor auszulösen.
Einpacken
Um sich das breite Spektrum unserer Kurse anzusehen oder zu verstehen, wie wir tun, was wir tun, können Sie gerne einen Rückruf anfordern oder unsere Website besuchen .
Wenn Sie mehr über das Big Data-Programm erfahren möchten, schauen Sie sich unser PG Diploma in Software Development Specialization in Big Data-Programm an, das für Berufstätige konzipiert ist und mehr als 7 Fallstudien und Projekte bietet, 14 Programmiersprachen und Tools abdeckt, praktische Hand- auf Workshops, mehr als 400 Stunden gründliches Lernen und Unterstützung bei der Stellenvermittlung bei Top-Unternehmen.
Lernen Sie Softwareentwicklungskurse online von den besten Universitäten der Welt. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.
